1 - kubectl top node 简介 显示节点的资源(CPU/内存)使用情况。
top-node 命令可以让你查看节点的资源消耗情况。
kubectl top node [ NAME | -l label]
示例 # 显示所有节点的指标
kubectl top node
# 显示指定节点的指标
kubectl top node NODE_NAME
选项 -h, --help node 操作的帮助命令。
--no-headers 如果存在,则打印没有标头的输出。
-l, --selector string 用来执行过滤的选择算符(标签查询),支持 '='、'==' 和 '!='(例如 -l key1=value1,key2=value2)。
匹配的对象必须满足所有指定的标签约束。
--show-capacity 基于节点的 Capacity 而不是 Allocatable(默认)打印节点资源。
--sort-by string 如果非空,则使用指定字段对节点列表进行排序。字段可以是 “cpu” 或 “memory”。
--use-protocol-buffers 默认值:true 启用协议缓冲区(protocol-buffers)以访问 Metrics API。
--as string 操作所用的伪装用户名。用户可以是常规用户或命名空间中的服务账号。
--as-group strings 操作所用的伪装用户组,此标志可以被重复设置以指定多个组。
--as-uid string 操作所用的伪装 UID。
--cache-dir string 默认值:"$HOME/.kube/cache" 默认缓存目录。
--certificate-authority string 证书机构的证书文件的路径。
--client-certificate string TLS 客户端证书文件的路径。
--client-key string TLS 客户端密钥文件的路径。
--cluster string 要使用的 kubeconfig 中集群的名称。
--context string 要使用的 kubeconfig 上下文的名称。
--default-not-ready-toleration-seconds int 默认值:300 设置针对 notReady:NoExecute 的容忍度的 tolerationSeconds,默认添加到所有尚未设置此容忍度的 Pod。
--default-unreachable-toleration-seconds int 默认值:300 设置针对 unreachable:NoExecute 的容忍度的 tolerationSeconds,默认添加到所有尚未设置此容忍度的 Pod。
--disable-compression 如果为 true,则对服务器所有请求的响应不再压缩。
--insecure-skip-tls-verify 如果为 true,则不检查服务器证书的有效性。这将使你的 HTTPS 连接不安全。
--kubeconfig string CLI 请求要使用的 kubeconfig 文件的路径。
--match-server-version 要求服务器版本与客户端版本匹配。
-n, --namespace string 如果存在,则是此 CLI 请求的命名空间范围。
--password string 对 API 服务器进行基本身份验证所用的密码。
--profile string 默认值:"none" 要记录的性能分析信息。可选值为(none|cpu|heap|goroutine|threadcreate|block|mutex)。
--profile-output string 默认值:"profile.pprof" 性能分析信息要写入的目标文件的名称。
--request-timeout string 默认值:"0" 在放弃某个服务器请求之前等待的时长。非零值应包含相应的时间单位(例如 1s、2m、3h)。
值为零表示请求不会超时。
-s, --server string Kubernetes API 服务器的地址和端口。
--storage-driver-buffer-duration duration 默认值:1m0s 对存储驱动的写入操作将被缓存的时长;缓存的操作会作为一个事务提交给非内存后端。
--storage-driver-db string 默认值:"cadvisor" 数据库名称。
--storage-driver-host string 默认值:"localhost:8086" 数据库 host:port
--storage-driver-password string 默认值:"root" 数据库密码。
--storage-driver-secure 使用与数据库的安全连接。
--storage-driver-table string 默认值:"stats" 表名。
--storage-driver-user string 默认值:"root" 数据库用户名。
--tls-server-name string 服务器证书验证所用的服务器名称。如果未提供,则使用与服务器通信所用的主机名。
--token string 向 API 服务器进行身份验证的持有者令牌。
--user string 要使用的 kubeconfig 用户的名称。
--username string 向 API 服务器进行基本身份验证时所用的用户名。
--version version[=true] --version, --version=raw 打印版本信息并退出;--version=vX.Y.Z... 设置报告的版本。
--warnings-as-errors 将从服务器收到的警告视为错误,并以非零退出码退出。
另请参见 2 - kubectl top pod 简介 显示 Pod 的资源(CPU/内存)使用情况。
top pod
命令允许你查看 Pod 的资源消耗情况。
由于指标管道的延迟,Pod 创建后的几分钟内可能无法获取资源消耗数据。
kubectl top pod [ NAME | -l label]
示例 # 显示 default 命名空间中所有 Pod 的指标
kubectl top pod
# 显示指定命名空间中所有 Pod 的指标
kubectl top pod --namespace= NAMESPACE
# 显示指定 Pod 及其容器的指标
kubectl top pod POD_NAME --containers
# 显示由标签 name=myLabel 所定义的 Pod 的指标
kubectl top pod -l name = myLabel
选项 -A, --all-namespaces 如果存在,则列举所有命名空间中请求的对象。
即使使用 --namespace 指定,当前上下文中的命名空间也会被忽略。
--containers 如果存在,则打印 Pod 内的容器的使用情况。
--field-selector string 过滤所用的选择算符(字段查询),支持 '='、'==' 和 '!='。
(例如 --field-selector key1=value1,key2=value2)。服务器针对每种类型仅支持有限数量的字段查询。
-h, --help pod 操作的帮助命令。
--no-headers 如果存在,则打印不带标头的输出。
-l, --selector string 用来执行过滤的选择算符(标签查询),支持 '='、'==' 和 '!='(例如 -l key1=value1,key2=value2)。
匹配的对象必须满足所有指定的标签约束。
--sort-by string 如果非空,则使用指定字段对 Pod 列表进行排序。字段可以是 “cpu” 或 “memory”。
--sum 打印资源使用量的总和。
--use-protocol-buffers 默认值:true 启用协议缓冲区(protocol-buffers)以访问 Metrics API。
--as string 操作所用的伪装用户名。用户可以是常规用户或命名空间中的服务账号。
--as-group strings 操作所用的伪装用户组,此标志可以被重复设置以指定多个组。
--as-uid string 操作所用的伪装 UID。
--cache-dir string 默认值:"$HOME/.kube/cache" 默认缓存目录。
--certificate-authority string 证书机构的证书文件的路径。
--client-certificate string TLS 客户端证书文件的路径。
--client-key string TLS 客户端密钥文件的路径。
--cluster string 要使用的 kubeconfig 中集群的名称。
--context string 要使用的 kubeconfig 上下文的名称。
--default-not-ready-toleration-seconds int 默认值:300 设置针对 notReady:NoExecute 的容忍度的 tolerationSeconds,默认添加到所有尚未设置此容忍度的 Pod。
--default-unreachable-toleration-seconds int 默认值:300 设置针对 unreachable:NoExecute 的容忍度的 tolerationSeconds,默认添加到所有尚未设置此容忍度的 Pod。
--disable-compression 如果为 true,则对服务器所有请求的响应不再压缩。
--insecure-skip-tls-verify 如果为 true,则不检查服务器证书的有效性。这将使你的 HTTPS 连接不安全。
--kubeconfig string CLI 请求要使用的 kubeconfig 文件的路径。
--match-server-version 要求服务器版本与客户端版本匹配。
-n, --namespace string 如果存在,则是此 CLI 请求的命名空间范围。
--password string 对 API 服务器进行基本身份验证所用的密码。
--profile string 默认值:"none" 要记录的性能分析信息。可选值为(none|cpu|heap|goroutine|threadcreate|block|mutex)。
--profile-output string 默认值:"profile.pprof" 性能分析信息要写入的目标文件的名称。
--request-timeout string 默认值:"0" 在放弃某个服务器请求之前等待的时长。非零值应包含相应的时间单位(例如 1s、2m、3h)。
值为零表示请求不会超时。
-s, --server string Kubernetes API 服务器的地址和端口。
--storage-driver-buffer-duration duration 默认值:1m0s 对存储驱动的写入操作将被缓存的时长;缓存的操作会作为一个事务提交给非内存后端。
--storage-driver-db string 默认值:"cadvisor" 数据库名称。
--storage-driver-host string 默认值:"localhost:8086" 数据库 host:port
--storage-driver-password string 默认值:"root" 数据库密码。
--storage-driver-secure 使用与数据库的安全连接。
--storage-driver-table string 默认值:"stats" 表名。
--storage-driver-user string 默认值:"root" 数据库用户名。
--tls-server-name string 服务器证书验证所用的服务器名称。如果未提供,则使用与服务器通信所用的主机名。
--token string 向 API 服务器进行身份验证的持有者令牌。
--user string 要使用的 kubeconfig 用户的名称。
--username string 向 API 服务器进行基本身份验证时所用的用户名。
--version version[=true] --version, --version=raw 打印版本信息并退出;--version=vX.Y.Z... 设置报告的版本。
--warnings-as-errors 将从服务器收到的警告视为错误,并以非零退出码退出。
另请参见