k8s之常用命令

查看

查看所有pod,-A是所有名称空间, -o wide是扩展信息

pod参数可以改为deployments、node、svc等查看其它集群资源信息

1
kubectl get pods -A -o wide

查看集群信息

1
kubectl cluster-info

查看nginx-b8d7667f5-ffgbt的配置,以yaml格式显示

1
kubectl get pod nginx-b8d7667f5-ffgbt -o yaml

查看指定pod的日志,-n指定名称空间

1
2
3
kubectl logs -f nginx-b8d7667f5-ffgbt -n default
# 查看重启前日志
kubectl logs -p nginx-b8d7667f5-ffgbt -n default

查看pod详细描述

1
kubectl describe pod nginx-772ai 

创建

使用配置创建资源

1
kubectl apply -f 文件名.yaml

命令创建资源

1
2
3
4
# 创建deployment资源
kubectl create deployment nginx-test --image=nginx --port=80
# 创建svc资源
kubectl create service clusterip nginx --tcp=80

修改

修改deployments配置

1
kubectl edit deployments nginx

删除

删除资源

1
kubectl delete pod nginx

强制删除资源

1
kubectl delete pod [podname] --force --grace-period=0 -n [namespace]

拷贝

复制pod内文件到本地

1
kubectl cp -n moxi-center -c active-service  active-service-c44b5d575-n552b:package-lock.json ./package-lock.json

复制本地文件到pod

1
kubectl cp ./test -c active-service active-service-c44b5d575-n552b:test -n moxi-center

标签

增加lable值 [key]=[value]

1
kubectl label pod redis-master-1033017107-q47hh role=master 

删除lable值

1
kubectl label pod redis-master-1033017107-q47hh role- 

修改lable值

1
kubectl label pod redis-master-1033017107-q47hh role=backend --overwrite

指定pod在哪个节点

1
kubectl label nodes node1 zone=north

调度

1
2
3
4
5
# 例如,要将名为 3dot36 的节点设置为不可调度状态,可以运行以下命令:
kubectl cordon node01

# 如果您希望让节点重新变为可调度状态,可以使用 kubectl uncordon 命令:
kubectl uncordon node01

驱逐

1
kubectl drain node01 --delete-local-data --ignore-daemonsets --force

动态伸缩

动态伸缩

1
kubectl scale rc nginx --replicas=5 

动态伸缩

1
kubectl scale deployment redis-slave --replicas=5 

动态伸缩

1
kubectl scale --replicas=2 -f redis-slave-deployment.yaml 

回滚

配置文件滚动升级

1
kubectl rolling-update redis-master -f redis-master-controller-v2.yaml 

命令升级

1
kubectl rolling-update redis-master --image=redis-master:2.0 

pod版本回滚

1
kubectl rolling-update redis-master --image=redis-master:1.0 --rollback 

容器操作

进入pod容器
注:/bin/bash如果不能进入,可以换成sh

1
kubectl exec -it redis-master-1033017107-q47hh /bin/bash 

执行pod内命令

1
kubectl exec -c istio-proxy active-service-c44b5d575-n552b -- ls -lh

本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!