由于最近项目要求在学习Kubernetes,所以将常用的一些指令记录下来,方便自己使用
一、kind 相关命令
查看 kind 版本
kind version创建 Kubernetes 集群
默认集群:
kind create cluster指定名称:
kind create cluster --name test-cluster查看 kind 集群
kind get clusters删除 kind 集群
kind delete cluster指定集群:
kind delete cluster --name test-cluster查看 kind 节点
kind get nodes多节点集群配置
kind-config.yaml:
kind: Cluster
apiVersion: kind.x-k8s.io/v1alpha4
nodes:
- role: control-plane
- role: worker
- role: worker创建:
kind create cluster --name my-cluster --config kind-config.yaml导入本地 Docker 镜像
kind load docker-image 镜像名例如:
kind load docker-image my-springboot:v1二、kubectl 集群管理
查看当前 context
kubectl config current-context查看所有集群
kubectl config get-contexts切换集群
kubectl config use-context 集群名称三、查看 Kubernetes 信息
查看集群信息
kubectl cluster-info查看节点
kubectl get nodes简写:
kubectl get no四、Pod 管理
查看 Pod
当前 namespace:
kubectl get pods所有 namespace:
kubectl get pods -A简写:
kubectl get po -A查看 Pod 详细信息
kubectl describe pod Pod名称可以查看:
Pod 状态
所属节点
IP
镜像
容器信息
Events 事件
查看 Pod YAML
kubectl get pod Pod名称 -o yaml查看 Pod 所在节点
kubectl get pods -o wide五、Pod 日志
查看日志:
kubectl logs Pod名称实时日志:
kubectl logs -f Pod名称多容器:
kubectl logs Pod名称 -c 容器名称六、进入 Pod 容器
bash:
kubectl exec -it Pod名称 -- bash没有 bash 使用:
kubectl exec -it Pod名称 -- sh七、Deployment 部署
创建:
kubectl create deployment nginx --image=nginx查看:
kubectl get deployment扩容:
kubectl scale deployment nginx --replicas=3
删除:
kubectl delete deployment nginx---
八、Service 服务
查看 Service:
kubectl get svc暴露服务:
kubectl expose deployment nginx \
--port=80 \
--type=NodePort九、YAML 部署
应用:
kubectl apply -f xxx.yaml删除:
kubectl delete -f xxx.yaml十、Namespace
查看:
kubectl get ns创建:
kubectl create namespace dev指定 namespace:
kubectl get pods -n dev十一、常用排错命令
查看事件:
kubectl get events查看所有资源:
kubectl get all节点详情:
kubectl describe node十二、Spring Cloud 项目 Kubernetes 部署流程
代码
|
Git
|
Jenkins
|
Maven 构建
|
Docker 镜像
|
Harbor
|
kubectl apply
|
Kubernetes
|
-------------------
user-service
order-service
gateway
redis
mysql
-------------------部署:
kubectl apply -f user-service.yaml查看:
kubectl get pods日志:
kubectl logs -f user-service-xxx进入:
kubectl exec -it user-service-xxx -- bash扩容:
kubectl scale deployment user-service --replicas=5十三、日常最常用组合
kind get clusters
kubectl config get-contexts
kubectl config use-context kind-xxx
kubectl get pods -A
kubectl describe pod xxx -n namespace
kubectl logs -f xxx -n namespace
kubectl exec -it xxx -n namespace -- bash