k8s基本命令

k8s命令

https://kubernetes.io/zh/docs/tutorials/kubernetes-basics/

官网地址

基本命令

查看节点服务器

kubectl get nodes
查看命名空间

kubectl get ns
查看pod

kubectl get pods
#后面可以加 -n 查看别的命名空间,默认是default
#后面可以加 -o wide 查看更详细
查看控制器

kubectl get deployment
查看暴露的服务和端口

kubectl get svc
查看pod的日志

kubectl logs $podname
查看控制器或者pod的事件

kubectl describe deployment $deployment
kubectl describe pod $podname
查看组件信息

kubectl get cs
kubectl cluster-info
查看pod的群集ip

kubectl get ep

k8s的流程

  1. 编写dockerfile

  2. 使用控制器来部署应用

  3. 使用服务来对外暴露应用

1. 创建应用

 使用命令来创建

kubectl create deployment nginx --image=nginx:1.14

 使用yaml文件创建

kubectl create deployment nginx --image=nginx:1.14 --dry-run=client -o yaml > nginx.yaml
#空运行创建一个nginx的yaml文件
kubectl apply -f nginx.yaml

2.服务应用

kubectl expose deployment nginx --port=80 --target-port=80 --type=NodePort
#暴露服务端口
#--port:是pod内部通信的端口
#--target-port:是服务的端口,和dockerfile里的expose暴露的端口一致

3. 服务升级

把nginx从1.14升级到1.15版本

  1. 使用yaml文件升级

  2. 使用kubectl edit deployment/nginx, 找到image进行修改

  3. 使用命令升级

    kubectl set image deployment nginx nginx=nginx:1.5

4. 服务缩放 (水平扩容,横向扩容)

kubectl scale deployment nginx --replicas=2
#pod里扩容到两台
#也可以在yaml文件里修改replicas 副本数

5. 服务回滚

  回滚到上一个版本

kubectl rollout undo deployment nginx

查看历史版本

kubectl rollout history deployment nginx

 给历史版本写上注释

kubectl annotate deployment/nginx kubernetes.io/change-cause="$信息"
#只能修改最后的一个版本

 查看历史版本的详细信息

kubectl rollout history deployment nginx --revision=1

 回滚到指定版本

kubectl rollout undo deployment nginx --to-revision=1

6. 服务删除

kubectl delete deployment nginx
#删除控制器
kubectl delete svc nginx
#删除服务
#删除相应的控制器后,pod也会自动删除,除非不是控制器创建的
是一些Kubernetes集群维护的基本命令: 1. 获取集群信息:kubectl cluster-info ```shell kubectl cluster-info ``` 2. 获取节点信息:kubectl get nodes ```shell kubectl get nodes ``` 3. 获取Pod信息:kubectl get pods ```shell kubectl get pods ``` 4. 获取服务信息:kubectl get services ```shell kubectl get services ``` 5. 获取命名空间信息:kubectl get namespaces ```shell kubectl get namespaces ``` 6. 获取配置信息:kubectl config view ```shell kubectl config view ``` 7. 获取事件信息:kubectl get events ```shell kubectl get events ``` 8. 获取日志信息:kubectl logs <pod-name> ```shell kubectl logs <pod-name> ``` 9. 获取Pod的详细信息:kubectl describe pod <pod-name> ```shell kubectl describe pod <pod-name> ``` 10. 获取服务的详细信息:kubectl describe service <service-name> ```shell kubectl describe service <service-name> ``` 11. 获取节点的详细信息:kubectl describe node <node-name> ```shell kubectl describe node <node-name> ``` 12. 获取命名空间的详细信息:kubectl describe namespace <namespace-name> ```shell kubectl describe namespace <namespace-name> ``` 13. 获取部署的详细信息:kubectl describe deployment <deployment-name> ```shell kubectl describe deployment <deployment-name> ``` 14. 获取状态集的详细信息:kubectl describe statefulset <statefulset-name> ```shell kubectl describe statefulset <statefulset-name> ``` 15. 获取副本集的详细信息:kubectl describe replicaset <replicaset-name> ```shell kubectl describe replicaset <replicaset-name> ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值