kubernets理解总结
总体理解kubernets架构以及各个结构中的api使用
Node
- 节点:可以使虚拟机,也可以是实体机
- 每个节点上都安装kubernets
- 有主节点和子节点的区分
Pods
- 是组成节点的最小单位,是任意独立的容器,pos都存储在Node中,每个pos有自己的功能
- 获取Pods
kubectl get pods
- 查看Pods 描述
kubectl describe deployment
- 进入pods中
kubectl exec -ti $POD_NAME
Service
- 通过service向外暴露pods
kubectl expose deployment/kubernetes-bootcamp --type="NodePort" --port 8080
- 查看service
kubectl get services
- 查看service描述
kubectl describe services/kubernetes-bootcamp
- 根据标签删除services
kubectl delete service -l run=kubernetes-bootcamp
Label
- 每个部署的pods 都会自动创建标签
- 通过标签查询pods
kubectl get pods -l kubectl describe deployment
- 重新设置标签
kubectl label pod $POD_NAME app=v1
Scale
- 自动扩容缩容
- 各种状态
- DESIRED 想要的容器数量
- CURRENT 当前的数量
- UP-TO-DATE ??
- AVAILABLE 有效的
- 各种状态
kubectl scale deployments/kubernetes-bootcamp --replicas=4
Rolling Update
- 滚动更新
- 通过镜像更新pods
kubectl set image deployments/kubernetes-bootcamp kubernetes-bootcamp=jocatalin/kubernetes-bootcamp:v2
- 检查滚动更新状态
kubectl rollout status deployments/kubernetes-bootcamp