k8s学习使用中用到的命令总结
  iQx61spHNtad 2023年11月13日 24 0
k8s
初始化k8s集群
kubeadm init --apiserver-advertise-address=192.168.88.163 --image-repository registry.aliyuncs.com/google_containers --kubernetes-version v1.23.6 --service-cidr=10.96.0.0/12 --pod-network-cidr=10.244.0.0/16
kubeadm reset 重新初始化
 kubeadm token list   查看初始化master后的token
 openssl x509 -pubkey -in /etc/kubernetes/pki/ca.crt | openssl rsa -pubin -outform der 2> /dev/null |openssl dgst -sha256 -hex|sed 's/^.* //'   生成密钥
 在从节点执行加入master
 kubeadm join 192.168.88.161:6443 --token 9hvyrf.4zn7tn1vi00uee70 --discovery-token-ca-cert-hash sha256:24f64ffbffe57948e4f412c3903769d8358ef76a261758268f4173fe8a69f307
 kubectl get nodes 查看节点状态
 kubectl get pods -n kube-system -o wide
 set paste vim中设置缩进
 创建一个nginx镜像
 kubectl create deployment nginx --image nginx
 暴露80端口
 kubectl expose deployment nginx --port=80 --type=NodePort
 查看80端口对外访问的端口是多少
 kubectl get pod,svc
 进入容器命令
 kubectl exec -it -n default nginx-85b98978db-m6vsb bash
 查看容器启动日志
 kubectl logs calico-node-dcc8p -n kube-system
 kubectl delete pod pod名    根据pod名删除pod
 kubectl delete -f nginx-pod.yml   根据yml删除pod
 kubectl logs -f pod名称 -c 容器名称   查看pod中指定容器的日志
 kubectl scale deployment --replicas=4 cyh 对已经存在的deploy进行扩容pod数量
 kubectl get deploy cyh -o yaml 将配置输出成yaml形式
 kubectl create -f nginx-demo.yaml 通过文件形式创建pod
 route -n 查看路由
 kubectl edit svc kube-dns -n kube-system 编辑配置文件
kubectl get po -w    -w类似watch监听的效果
kubectl get po --show-labels 查看设置的label标签
kubectl label po nginx-demo author=cyh 通过命令增加label
kubectl label po nginx-demo author=wqh  --overwrite 通过命令修改label
kubectl get po -A -l type=app 根据标签进行匹配
kubectl get po -l 'test in (1.0.0,1.1.1)'   标签是1.0,0和1.1.1
kubectl get po -l type!=app,author=wqh   标签不是app且是wqh
kubectl rollout status deployment nginx-deploy 查看滚动更新的信息
kubectl rollout history deployment nginx-deploy  查看部署版本历史,用于回退版本
kubectl rollout history deployment nginx-deploy --revision=1 查看详细信息
kubectl rollout undo deployment nginx-deploy  --to-revision=1 回退到指定版本
kubectl scale --replicas=6 deployment nginx-deploy 进行扩容操作
kubectl rollout pause deployment  nginx-deploy  对修改的deploy进行暂停,不立马去更新部署deploy,因为可能涉及多次修改配置
kubectl rollout resume deployment nginx-deploy  总体修改完deploy后,进行更新操作
kubectl get sts 查看有状态服务statefulset
kubectl get pvc 查看挂载卷信息
kubectl run -it --image busybox dns-test --restart=Never --rm /bin/sh  退出容器就会删除掉,临时使用
kubectl scale sts web --replicas=5 对有状态服务进行扩容
对于有状态服务更新镜像的方式(滚动更新)
kubectl patch sts web --type='json' -p='[{"op":"replace","path":"/spec/template/spec/containers/0/image","value":"nginx:1.9.1"}]' 
kubectl rollout history statefulset web
kubectl rollout history statefulset web  --revision=2
kubectl rollout status statefulset web
kubectl delete sts web 会级联删除,把sts,pod都删除
kubectl delete sts web --cascade=false 不会级联删除
kubectl label no k1 type=microservices 给k1节点加标签
kubectl get po -l app=logging 基于标签搜索pod
创建HPA,对deploy进行自动扩缩容,当达到资源限制后,就会扩容
kubectl autoscale deployment nginx-deploy --cpu-percent=20 --min=2 --max=5
使用以下命令需要安装metrics-server容器服务,直接在gitlab下载yaml文件
wget https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml -O metrics-server-components.yaml
kubectl top -h  查看内存,cpu使用情况
kubectl top po  查看内存,cpu使用情况
kubectl get ep  查看端点endpoint
【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月13日 0

暂无评论

推荐阅读
  uvM09mQNI0hF   2023年11月19日   21   0   0 promtaillokik8s
  cO5zyEmh8RH6   2023年12月09日   23   0   0 k8s证书