# Kubernetes 常用命令
命令分类 | 命令 | 翻译 | 命令作用 |
---|---|---|---|
基本命令 | create | 创建 | 创建一个资源 |
edit | 编辑 | 编辑一个资源 | |
get | 获取 | 获取一个资源 | |
patch | 更新 | 更新一个资源 | |
delete | 删除 | 删除一个资源 | |
explain | 解释 | 展示资源文档 | |
运行和调试 | run | 运行 | 在集群中运行一个指定的镜像 |
expose | 暴露 | 暴露资源为Service | |
describe | 描述 | 显示资源内部信息 | |
logs | 日志输出容器在 pod 中的日志 | 输出容器在 pod 中的日志 | |
attach | 缠绕进入运行中的容器 | 进入运行中的容器 | |
exec | 执行容器中的一个命令 | 执行容器中的一个命令 | |
cp | 复制 | 在Pod内外复制文件 | |
rollout | 首次展示 | 管理资源的发布 | |
scale | 规模 | 扩(缩)容Pod的数量 | |
autoscale | 自动调整 | 自动调整Pod的数量 | |
高级命令 | apply | rc | 通过文件对资源进行配置 |
label | 标签 | 更新资源上的标签 | |
其他命令 | cluster-info | 集群信息 | 显示集群信息 |
version | 版本 | 显示当前Server和Client的版本 |
# Kubectl
kubectl 命令:
kubectl [command] [TYPE] [NAME] [flags]
1
其中 command、TYPE、NAME 和 flags 分别是:
command:指定要对一个或多个资源执行的操作,例如 create、get、describe、delete。
TYPE:指定资源类型。资源类型不区分大小写, 可以指定单数、复数或缩写形式。例如,以下命令输出相同的结果:
kubectl get pod pod1
kubectl get pods pod1
kubectl get po pod1
1
2
3
2
3
NAME:指定资源的名称。名称区分大小写。 如果省略名称,则显示所有资源的详细信息。例如:kubectl get pods。在对多个资源执行操作时,你可以按类型和名称指定每个资源,或指定一个或多个文件:
- 要按类型和名称指定资源:
- 要对所有类型相同的资源进行分组,请执行以下操作:TYPE1 name1 name2 name<#>。 例子:kubectl get pod example-pod1 example-pod2
- 分别指定多个资源类型:TYPE1/name1 TYPE1/name2 TYPE2/name3 TYPE<#>/name<#>。 例子:kubectl get pod/example-pod1 replicationcontroller/example-rc1
- 用一个或多个文件指定资源:-f file1 -f file2 -f file<#>
- 使用 YAML 而不是 JSON, 因为 YAML 对用户更友好, 特别是对于配置文件。 例子:kubectl get -f ./pod.yaml
flags: 指定可选的参数。例如,可以使用 -s 或 --server 参数指定 Kubernetes API 服务器的地址和端口。
# Node
# 列举集群节点
kubectl get nodes
1
[root@k8s-master changxie]# kubectl get nodes
NAME STATUS ROLES AGE VERSION
k8s-master Ready control-plane,master 2d22h v1.23.6
k8s-node1 Ready <none> 2d22h v1.23.6
k8s-node2 Ready <none> 2d22h v1.23.6
1
2
3
4
5
2
3
4
5
所有节点都能够显示出来,并且都处于 Ready 状态。
# 列举有关节点的详细信息
查看所有节点详细信息
kubectl describe node
1
查看指定节点详细信息
kubectl describe node "k8s-master"
1
kubectl get node "k8s-master" -o yaml
1
# Pod
# 列举资源信息
kubectl get pod
1
[root@k8s-master changxie]# kubectl get pod
NAME READY STATUS RESTARTS AGE
editor-8pnlb 1/1 Running 0 47h
editor-kb97t 1/1 Running 0 47h
nginx-85b98978db-8l9gk 1/1 Running 0 2d22h
1
2
3
4
5
2
3
4
5
kubectl describe pod
1
# 列举指定资源的详细信息
kubectl get pod "editor-8pnlb" -o yaml
1
kubectl describe pod "editor-8pnlb"
1