增
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参数可以记录以方便版本回滚
