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 |
|
过滤所用的选择算符(标签查询),支持 '='、'=='、'!='、'in' 和 'notin'。
(例如 -l key1=value1,key2=value2,key3 in (value3))。
匹配的对象必须满足所有指定的标签约束。
|
| --show-capacity |
|
基于节点的 Capacity 而不是 Allocatable(默认)打印节点资源。
|
| --sort-by string |
|
如果非空,则使用指定字段对节点列表进行排序。字段可以是 “cpu” 或 “memory”。
|
| --use-protocol-buffers 默认值:true |
|
启用协议缓冲区(protocol-buffers)以访问 Metrics API。
|
Parent Options Inherited
| --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 |
|
过滤所用的选择算符(标签查询),支持 '='、'=='、'!='、'in' 和 'notin'。
(例如 -l key1=value1,key2=value2,key3 in (value3))。
匹配的对象必须满足所有指定的标签约束。
|
| --sort-by string |
|
如果非空,则使用指定字段对 Pod 列表进行排序。字段可以是 “cpu” 或 “memory”。
|
| --sum |
|
打印资源使用量的总和。
|
| --use-protocol-buffers 默认值:true |
|
启用协议缓冲区(protocol-buffers)以访问 Metrics API。
|
Parent Options Inherited
| --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 |
|
将从服务器收到的警告视为错误,并以非零退出码退出。
|
另请参见