K8s命令
命令描述kubeadm init \--apiserver-advertise-address=192.168.43.23 \--image-repository registry.cn-hangzhou.aliyuncs.com/google_containers \--kubernetes-version v1.19.0 \--service-cidr=10.96.0.0/16 \--pod-
命令 | 描述 |
kubeadm init \ --apiserver-advertise-address=192.168.43.23 \ --image-repository registry.cn-hangzhou.aliyuncs.com/google_containers \ --kubernetes-version v1.19.0 \ --service-cidr=10.96.0.0/16 \ --pod-network-cidr=10.244.0.0/16 \ --ignore-preflight-errors=all | 初始化master # service-cidr: service的网段 # pod-network-cidr: pod的网段 也可以通过配置文件的方式初始化 |
kubeadm join 192.168.43.23:6443 --token el5q0h.ol84kidb0fhlusp9 \ --discovery-token-ca-cert-hash sha256:dae5c056947982c4e5463a4e450786ab248e88e91ee45b2a7bf8dba44dad22e2 | [node]节点执行,加入到master中 |
kubectl ... -n ms | 命令参考地址:http://docs.kubernetes.org.cn/683.html -n ms 命名空间为ms |
kubectl apply -f dashboard.yaml | 应用并刷新yaml文件中的控制器、service等 |
kubectl create namespace ms | 创建命名空间 |
kubectl expose deployment xxl-admin --port=80 --target-port=80 --type=NodePort | 使用Service暴露服务: --port=80 k8s集群内部可以访问这个应用的端口。通过节点ip和此端口,来访问此应用 --target-port=80 容器pod里面提供服务的端口,如nginx是80,tomcat是8080 --type=NodePort 暴露到集群外部的端口 |
kubectl create deployment xxl-admin --image=chenchg/xxl-admin --replicas=3 | 通过命令行创建Deployment |
kubectl create deployment xxl-admin --image=chenchg/xxl-admin --replicas=3 --dry-run -o yaml > web.yaml | --dry-run 尝试运行,但实际不会创建控制器 -o yaml > web.yaml 将当前通过命令行的方式用yaml文件导出来,存储在web.yaml中 |
kubectl get nodes | [master]获取节点信息 |
kubectl get pods,service | 获取Pods容器、service暴露信息。-n 限定命名空间 |
kubectl get endpoints -n ms | 查看service关联的pod容器ip地址 |
kubectl get pod,svc,ep | 同时查看三个信息:svc同service,ep同endpoints |
kubectl exec -ti <POD NAME> -n <NAMESPACE> -- /bin/sh | 进入k8s容器 如:kubectl exec -ti ccg-dkdemo-646b599f6c-6cn48 -- /bin/sh $ tail -200f /data/applogs/ccg-log/dkdemo.log $ exit #退出容器 |
kubectl scale deployment <DEPLOYMENT NAME> --replicas=6 | 命令行,扩容 |
kubectl set image deployment <DEPLOYMENT NAME> <CONTAINER NAME>=<IMAGE NAME>:1.1.0 --record=true | 发布升级 eg: kubectl set image deployment ccg-dkdemo ccg-dkdemo=chenchg/ccg-dkdemo:1.1.0 --record=true <DEPLOYMENT NAME> 对应yaml中的deployment的name <CONTAINER NAME> 对应yaml中container中的name <IMAGE NAME> 对应yaml中container中的imagename |
kubectl rollout undo deployment/web | 回滚到上一个版本 |
kubectl rollout undo deployment/web to --to-verision=2 | 回滚到指定版本 |
journalctl -u kubelet | 查看kubelet日志 |
kubectl describe deployment web -n ms | 查看控制器日志 |
kubectl describe pod xxl-admin-8467776cb9-xb6lc | 查看pod信息。 当前pod指向哪个node信息: Normal Scheduled 9m41s default-scheduler Successfully assigned default/ccg-dkdemo-84c6f7cfd9-5zvpg to node1 |
kubectl logs <POD NAME> | 查看pod容器的日志,如: kubectl logs xxl-admin-8467776cb9-cb6zz |
kubectl delete deployment <DEPLOYMENT NAME> kubectl delete deployment <DEPLOYMENT NAME1> <DEPLOYMENT NAME2> | 删除deployment控制器,如 kubectl delete deployment xxl-admin 删除多个Deployment控制器 |
kubectl delete service <SERVICE NAME> | 删除service kubectl delete service xxl-admin |
kubectl delete -f yamls/web.yaml | 删除yaml文件中所有的deployment和service |
kubectl delete pod <POD NAME> kubectl delete pod <POD NAME> --force | 删除pod后,deployment控制器会发现没有了,又会再次生成pod。所以直接删除pod没有用。 可用于pod创建失败时,状态一直是Terminating,可使用此删除。--force强制删除 |
更多推荐
所有评论(0)