增
kubectl create -f yaml文件
#以yaml文件创建 加--record
可以方便的查看每次revision的变化kubectl apply -f yaml文件
#以yaml文件升级更新现有的资源 加--record
可以方便的查看每次revision的变化(kubectl rollout history deployment/deployment名字
查看)kubectl scale deployment deployment名称 --replicas=扩容数量
#扩容kubectl taint nodes node名字 key=value:effect
#加上污点kubectl autoscale deployment xxx名字 --cpu-percent=50 --min=1 --max=10
#设置阈值为CPU利用率50%,最小一个副本,最多10个
删
kubectl delete pod pod名字
#删除podkubectl delete rs rs名字
#删除rskubectl delete -f yaml文件
#根据yaml文件删除资源kubectl taint nodes node名字 key-
#删除污点kubectl taint nodes node名字 key=value:effect-
#删除污点kubectl taint nodes node名字 key=value-
#删除污点kubectl taint nodes node名字 key:effect-
#删除污点kubectl delete pod --all -n xxx
#删除某个namespace下的全部pod
查
kubectl explain
#查看字段属性信息kubectl describe pod pod名字
#查看pod详细信息kubectl log pod名字 -c 容器名
#查看容器日志kubectl get pod
#查看pod 加 -o wide
查看详细信息 ;加--show-labels
显示标签;-l 标签
筛选kubectl get svc
#查看servicekubectl get deployment
#查看deploymentkubectl get job
#查看Jobkubectl exec pod名字 -c 容器名 -it -- /bin/bash(执行的命令)
#以交互模式进入指定容器kubectl rollout history deployment/deployment名字
#查看回滚历史kubectl rollout status deployments deployment名字
#查看回滚状态kubectl get ingress
#查看ingress规则kubectl get cm
#查看configmapkubectl get cm configmap名字 -o yaml
#查看configmap内容describe
也可以看kubectl get secret
#查看secretkubectl get pv
#查看PVkubectl get pvc
#查看PVCkubectl get statefulset
#查看statefulsetkubectl get hpa#查看HPA
改
kubectl label pod pod名字 label修改内容(KV)
#增加label,加--overwrite=True
重写已有标签kubectl edit pod pod名字
#编辑pod的yaml?kubectl exec pod名字 -c 容器名 -it -- /bin/bash(执行的命令)
#以交互模式进入指定容器kubectl set image deployment/deployment名字 容器名(yaml中设置的)=新的镜像名
#更新镜像kubectl rollout undo deployment/deployment名字
#回滚 加--to-revision=回滚版本
回滚到特定版本 kubectl rollout pause deployment/deployment名字
#暂停回滚kubectl taint nodes node名字 key=:effect
#修改污点effectkubectl replace yaml文件
#应用修改后的yaml(命令式)
Helm
helm install chart根目录
#安装,--namespace=namespace名字
--name=release名字
-f xxx.yaml
重写配置文件helm upgrade release名字 templates目录
#更新releasehelm history release名字
#查看release改动历史helm list
#已安装chart的listhelm status release
#查看安装信息helm delete release名字
#删除helm list deleted
#查看未完全删除的release(可回滚)helm rollback release名字 版本号
#回滚helm delete --purge release名字
#完全删除(不能回滚)helm fetch chart名字
#下载chart所需文件helm repo list
#查看helm仓库helm template Chart.yaml所在目录 -x templates/install-packages-job.yaml
#输出渲染后的Chart的yaml模板,-x
是只输出指定的yaml
其他
kubectl get xxx -o yaml
#可以以yaml查看k8s的api对象kubectl exec -it nginx-deployment-5c678cfb6d-lg9lw -- /bin/bash
#进入容器kubectl patch
#跟新api对象kubectl patch statefulset mysql --type='json' -p='[{"op": "replace", "path": "/spec/template/spec/containers/0/image", "value":"mysql:5.7.23"}]'statefulset.apps/mysql patched
#以补丁方式修改spec/template/spec/containers/0/image下的内容
命令加--record
参数可以记录以方便版本回滚