k8s 探索5:简述 k8s 常用命令

k8s 探索5:简述 k8s 常用命令

🎈「k8s 探索」系列:

更新中…

kubectl

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
# kubectl get

kubectl get nodes # 查看节点信息
kubectl get namespaces # 查看所有命名空间
kubectl get pods # 列出当前命名空间下 Pod 信息
kubectl get pods -A # 列出所有命名空间下 Pod 信息
kubectl get pods --all-namespaces # 列出所有命名空间下 Pod 信息
kubectl get pods -o wide # 列出当前命名空间下 Pod 信息,并且显示 IP 和 Node 等详细信息
kubectl get pods -A -o wide # 列出所有命名空间下 Pod 信息,并且显示 IP 和 Node 等详细信息
kubectl get services # 列出当前命名空间下的所有 services
kubectl get pod my-pod -o yaml # 获取一个 Pod 的 YAML
kubectl get all # 列出所有 default 的资源
kubectl get all --all-namespaces # 列出所有的资源

# kubectl describe

kubectl describe nodes my-node # 查看节点信息
kubectl describe pods my-pod # 查看 Pod 信息

# kubectl exec

kubectl exec <pod-name> -- ls / # 在已有的 Pod 中运行命令(单容器场景)
kubectl exec --stdin --tty my-pod -- /bin/sh # 使用交互 shell 访问正在运行的 Pod (一个容器场景)
kubectl exec <pod-name> -c my-ctn -- ls / # 在已有的 Pod 中运行命令(多容器场景)

# kubectl logs

kubectl logs deploy/my-dep # 获取一个 Deployment 的 Pod 的日志(单容器例子)
kubectl logs deploy/my-dep -c my-ctn # 获取一个 Deployment 的 Pod 的日志(多容器例子)

# kubectl apply

kubectl apply -f my.yaml # 创建资源
kubectl apply -f ./my1.yaml -f ./my2.yaml # 使用多个文件创建
kubectl apply -f ./dir # 基于目录下的所有清单文件创建资源
kubectl apply -f https://git.io/demo.yaml # 从 URL 中创建资源

# kubectl delete

kubectl delete -f my.yaml # 删除资源
kubectl delete pod,service baz foo # 删除名称为 "baz" 和 "foo" 的 Pod 和服务
kubectl delete pods,services -l name=myLabel # 删除包含 name=myLabel 标签的 pods 和服务
kubectl -n my-ns delete pod,svc --all # 删除在 my-ns 名字空间中全部的 Pods 和服务

参考

🎈「k8s 探索」系列:

评论