argo
argo¶
argo是Argo的命令行界面
概述¶
您可以通过以下模式使用CLI:
Kubernetes API 模式(默认)¶
请求直接发送到Kubernetes API,无需Argo Server支持。不支持大型工作流和工作流归档。
当您可以直接访问Kubernetes API,且不需要大型工作流或工作流归档支持时使用。
如果您使用的是实例ID(这种情况非常少见),则需要设置它:
ARGO_INSTANCEID=your-instanceid
Argo Server GRPC 模式¶
请求通过GRPC(使用HTTP/2协议)发送至Argo Server API。该系统支持大型工作流和工作流归档功能,但不支持不支持HTTP/2协议的网络负载均衡器。
如果您无法访问Kubernetes API(例如您位于另一个集群中),并且您正在使用支持HTTP/2的网络负载均衡器运行Argo Server,请使用此选项。
要启用此功能,请设置ARGO_SERVER:
ARGO_SERVER=localhost:2746 ;# The format is "host:port" - do not prefix with "http" or "https"
如果您启用了传输层安全性(TLS)(即您正在运行"argo server --secure"命令,因此使用HTTPS协议):
ARGO_SECURE=true
如果您的服务器使用的是自签名证书。请勿在生产环境中使用:
ARGO_INSECURE_SKIP_VERIFY=true
默认情况下,CLI会使用您的KUBECONFIG来确定ARGO_TOKEN和ARGO_NAMESPACE的默认值。您可能会遇到"未提供配置"的错误。为防止这种情况:
KUBECONFIG=/dev/null
接下来您需要设置:
ARGO_NAMESPACE=argo
以及:
ARGO_TOKEN='Bearer ******' ;# Should always start with "Bearer " or "Basic ".
Argo Server HTTP1 模式¶
与GRPC模式类似,但使用HTTP协议。适用于不支持HTTP/2的ALB。命令"argo logs --since-time=2020...."将无法正常工作(由于时间类型问题)。
当您的网络负载均衡器不支持HTTP/2时使用此选项。
使用与GRPC模式相同的配置,但还需设置:
ARGO_HTTP1=true
如果你的服务器位于带路径的入口后面(运行"argo server --base-href /argo"或"ARGO_BASE_HREF=/argo argo server"):
ARGO_BASE_HREF=/argo
argo [flags]
选项¶
--argo-base-href string Path to use with HTTP client due to Base HREF. Defaults to the ARGO_BASE_HREF environment variable.
--argo-http1 If true, use the HTTP client. Defaults to the ARGO_HTTP1 environment variable.
-s, --argo-server host:port API server host:port. e.g. localhost:2746. Defaults to the ARGO_SERVER environment variable.
--as string Username to impersonate for the operation
--as-group stringArray Group to impersonate for the operation, this flag can be repeated to specify multiple groups.
--as-uid string UID to impersonate for the operation
--certificate-authority string Path to a cert file for the certificate authority
--client-certificate string Path to a client certificate file for TLS
--client-key string Path to a client key file for TLS
--cluster string The name of the kubeconfig cluster to use
--context string The name of the kubeconfig context to use
--disable-compression If true, opt-out of response compression for all requests to the server
--gloglevel int Set the glog logging level
-H, --header strings Sets additional header to all requests made by Argo CLI. (Can be repeated multiple times to add multiple headers, also supports comma separated headers) Used only when either ARGO_HTTP1 or --argo-http1 is set to true.
-h, --help help for argo
--insecure-skip-tls-verify If true, the server's certificate will not be checked for validity. This will make your HTTPS connections insecure
-k, --insecure-skip-verify If true, the Argo Server's certificate will not be checked for validity. This will make your HTTPS connections insecure. Defaults to the ARGO_INSECURE_SKIP_VERIFY environment variable.
--instanceid string submit with a specific controller's instance id label. Default to the ARGO_INSTANCEID environment variable.
--kubeconfig string Path to a kube config. Only required if out-of-cluster
--loglevel string Set the logging level. One of: debug|info|warn|error (default "info")
-n, --namespace string If present, the namespace scope for this CLI request
--password string Password for basic authentication to the API server
--proxy-url string If provided, this URL will be used to connect via proxy
--request-timeout string The length of time to wait before giving up on a single server request. Non-zero values should contain a corresponding time unit (e.g. 1s, 2m, 3h). A value of zero means don't timeout requests. (default "0")
-e, --secure Whether or not the server is using TLS with the Argo Server. Defaults to the ARGO_SECURE environment variable. (default true)
--server string The address and port of the Kubernetes API server
--tls-server-name string If provided, this name will be used to validate server certificate. If this is not provided, hostname used to contact the server is used.
--token string Bearer token for authentication to the API server
--user string The name of the kubeconfig user to use
--username string Username for basic authentication to the API server
-v, --verbose Enabled verbose logging, i.e. --loglevel debug
另请参阅¶
- argo archive - 管理工作流归档
- argo auth - 管理认证设置
- argo cluster-template - 管理集群工作流模板
- argo completion - 为指定shell(bash、zsh或fish)输出shell自动补全代码
- argo cp - 从工作流中复制制品
- argo cron - 管理定时工作流
- argo delete - 删除工作流
- argo executor-plugin - 管理执行器插件
- argo get - 显示工作流的详细信息
- argo lint - 验证清单文件或目录
- argo list - 列出工作流
- argo logs - 查看Pod或工作流的日志
- argo node - 对工作流中的节点执行操作
- argo resubmit - 重新提交一个或多个工作流
- argo resume - 恢复零个或多个工作流(与暂停相反)
- argo retry - 重试零个或多个工作流
- argo server - 启动Argo Server
- argo stop - 停止零个或多个工作流,允许所有退出处理程序运行
- argo submit - 提交一个工作流
- argo suspend - 暂停一个或多个工作流(与恢复相反)
- argo template - 管理工作流模板
- argo terminate - 立即终止零个或多个工作流
- argo version - 打印版本信息
- argo wait - 等待工作流完成
- argo watch - 监控工作流直到完成