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 |
| 将从服务器收到的警告视为错误,并以非零退出码退出。 |
另请参见