k8s常⽤命令总结
1.使⽤yaml⽂件创建Deployment
kubectl create -f docs/user-guide/nginx-deployment.yaml --record
# 创建成功后会输出:deployment "nginx-deployment" created
2.创建
nginx停止命令
# 通过命令⾏创建
kubectl create namespace xxx    # 创建命名空间
kubectl create -f ./pod.json  --namespace=xxx    # 通过json⽂件创建pod
# 通过⽂件创建,my-namespace.yaml
apiVersion: V1
kind: Namespace
metadata:
name: new-namespace
kubectl create -f my-namespace.yaml
3.删除命名空间
kubectl delete namespace xxx
# default和kube-system不可删
4.查看命名空间
kubectl get namespace
5.在指定命名空间创建各种对象
kubectl create -f k8s.io/docs/tasks/administer-cluster/quota-pod.yaml --namespace=xxx  #  创建ResourceQuota对象
kubectl get resourcequota pod-demo --namespace=xxx --output=yaml    # 查看ResourceQuota对象的详细信息
kubectl create -f k8s.io/docs/tasks/administer-cluster/quota-pod-deployment.yaml --namespace=xxx    # 尝试在命名空间创建Deployment
kubectl get deployment pod-quota-demo --namespace=xxx --output=yaml  # 查看Deployment的详细信息
kubectl get all --namespace    # 列出所有不同的资源对象
5.列出所有运⾏的pod信息
kubectl get pods --namespace=xxx    # --namespace指定命名空间
kubectl get pods -o wide    # 列出pod以及运⾏pod节点信息
kubectl get -o json pod web-pod-xxx      # 以json格式输出⼀个pod信息
kubectl get -f pod.yaml -o json            # 以pod.yaml⽂件中指定的资源对象和名称输出json格式的Pod信息
6. 列出所有replication controllers和service信息
kubectl get rc,services
7. 列出所有不同的资源对象
kubectl  get  all
8.创建⼀个名称为yyy的deployment,运⾏xxx镜像
kubectl  create deployment  yyy  --image=xxx
9.创建并运⾏⼀个或多个容器镜像
kubectl run nginx  --image=nginx      # 启动nginx实例
kubectl  run hazelcast  --image=hazecast  --port=5701  # 启动hazelcast实例,暴露容器端⼝5701
kubectl run hazelcast --image=hazelcast --env="DNS_DOMAIN=cluster" --env="POD_NAMESPACE=default"  # 在容器中设置环境变量“DNS_DOMAIN = cluster”和“POD_NAMESPACE = default”kubectl run nginx --image=nginx --replicas=5    # 启动nginx实
例,设置副本数5
10. 查看节点labels信息
kubectl get note --show-labels
11. 查看节点详细信息
kubectl describe node master(节点名)
12. 修复pod问题
kubectl get deploy shutao -n fst-test  -o yaml > shutao.yaml    # 将pod⽣成yaml⽂件,修改故障
kubectl  apply -f shutao.yaml  # 使⽤这个命令更新pod
kubectl  replace -f  shutao.yaml    # 也可以使⽤这个命令更新
kubectl  patch pod xxxxx -p '{"metadata":{"labels":{"app":"nginx-3"}}}'    # 在容器运⾏时,直接对容器进⾏修改,此命令修改了label参数
13. 两种⽅式查看pod的详细信息
kubectl get po xxxxx -o yaml -n nnnnn
kubectl describe po xxxxxxx -n nnnnn
14. 使⽤scale修改副本数
kubectl scale rc rc-nginx-3    --replicas=4  # 使⽤scale修改副本数为4, 此命令仅限于⾮deployment下的pod
kubectl autoscale rc rc-nginx-3 --min=1 --max=4    # 使⽤autoscale根据负载⾃动在制定范围内进⾏扩容或缩容,此命令为设置副本范围在1~4个之间15. 使⽤selector决定了请求会被发送给集⾥的哪些 pod
这⾥的定义是所有包含「app: k8s-demo」这个标签的 pod。可以使⽤以下命令查看创建的pod所有的标签
kubectl describe pods | grep Labels

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。