kubernetes常用命令整理一

一、集群命令
1、显示版本信息
kubectl version
 
2、显示集群访问接口
kubectl cluster-info
 
3、获取当前系统的API Server相关信息
kubectl api-versions
 
4、访问kubernetes REST API(基于本地代理)
kubectl proxy --port=8080    #启用代理
curl localhost:8080/api/v1/namespaces/    #查看命名空间信息
 
二、创建资源对象
1、创建deploy
kubectl run nginx-deploy --image=nginx:1.12 --replicas=2
kubectl run client --iamge=busybox --restart=Never -it -- /bin/sh    #创建临时的交互pod
 
2、创建service
kubectl expose deployment/nginx --name=nginx-svc --port=80
kubectl expose deployments/myapp --type="NodePort" --port=80 --name=myapp
 
3、使用yml文件创建资源对象
kubectl create -f nginx-deploy.yaml -f nginx-svc.yaml
 
4、声明式对象配置
kubectl apply -f nginx-deploy.yaml -f nginx-svc.yaml
 
 
5、额外参数
-l    #--labels:为对象设定自定义标签
--record    #是否将当前对象创建命令保存至Annotation中,布尔型数据(true或false)
--save-config    #是否将当前对象配置信息保存至Annotation中,布尔型数据(true或false)
--restart=Never    #创建不受控制器管控的自主式pod
 
三、查看资源对象
1、查看命名空间
kubectl get ns     #ns是namespaces的缩写
 
2、一次查看多个对象
kubectl get pod,svc -o wide   #svc是service的缩写
 
3、查看kube-system命名空间下具有k8s-app标签的pod
kubectl get pod -l k8s-app -n kube-system
 
4、显示具体对象的详细信息
kubectl describe pod -l app=test -n test
 
5、查看容器日志
kubectl logs -f [-p] [POD|TYPE] [-c CONTAINER]    #若pod中存在多个容器,则需要使用-c指明具体的容器 
kubectl logs kube-apiserver-master.ilinux.io -n kube-system
 
6、导出配置清单
kubectl get po nginx-web -o yaml >nginx-web.yaml
 
四、在容器中执行命令
kubectl exec kube-apiserver-master.ilinux.io -n kube-system -- ps    #若存在多个容器,需添加-c选项
 
五、删除操作
1、删除指定对象
kubectl delete service nginx-svc
 
2、删除 kube stem 名称空间中拥有标签 k8s-app=kube-proxy ”的所有Pod 对象
kubectl delete pod -l app=monitor -n kube-system
 
3、删除命名空间中所有的某类对象
kubectl delete pod --all -n kube-pubulic
 
4、强制删除(部分pod拥有优雅删除机制)
kubectl delete pod --grace-period    #使用--grace-period或--now覆盖默认的宽限期
 
5、更新pod资源(修改yaml文件后执行)
kubectl replace -f new.yaml --force     #
 
六、扩容和缩容
kubectl scale deployment/myapp --replicas=3    #通过修改replicas的数量进行伸缩
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
posted @ 2020-02-17 21:02  jayce9102  阅读(320)  评论(0编辑  收藏  举报