不是知识点的知识点
- 学习Kubernetes之前要有一定的Docker经验,有一定的微服务架构的经验。
- 要在自己电脑上体验的话,要装MiniKube,当然要配置一个VPN,启动MiniKube的时候把相关参数配置好。
minikube start --docker-env HTTP_PROXY=http://localhost:1080 --docker-env HTTPS_PROXY=http://localhost:1080 --docker-env NO_PROXY=192.168.99.0/24。把http://localhost:1080换成你自己的VPN地址即可。 - 自己在电脑上体验,还不如去"Google Cloud Platform",省去网络不通或者VPN不稳定的干扰。而且有300刀的体验额度。
操作命令(来源官网基础教程)
- 看版本
kubectl version - 看节点
kubectl get nodes - 简单部署镜像
kubectl run [部署的名称] --image=[镜像地址]:[镜像版本] --port=[expose端口] - 查看已有的部署
kubectl get deployments - 不创建服务就想看部署是否可以通过
kubectl proxy在集群和命令窗口之间创建代理, 便可以通过http://localhost:8001/api/v1/proxy/namespaces/default/pods/$POD_NAME/访问 - 查看Pods
kubectl get pods - 查看Pods 的具体情况
kubectl describe pods,可以查看IP地址等等。 - 查看Pod的名称
kubectl logs $POD_NAME - 通过
kubectl exec $POD_NAME [CMD]查看镜像内部的情况(感觉和docker exec类似),比如kubectl exec $POD_NAME env查看镜像内部的环境变量,kubectl exec -it $POD_NAME bash运行bash。 - 查看服务列表
kubectl get services - 暴露服务
kubectl expose deployment/[部署的名称] --type="NodePort" --port [expose端口] - 查看某个服务的具体情况
kubectl describe services/kubernetes-bootcamp - 使用label筛选pods
kubectl get pods -l [标签] - 给Pod设置标签
kubectl label pod $POD_NAME [标签] - 通过标签删除服务
kubectl delete service -l [标签] - 拓展一个部署的副本数目
kubectl scale deployments/[部署名称] --replicas=[副本数目] - 更新版本(重新设置部署的镜像)
kubectl set image deployments/[部署的名称] [部署的名称]=[镜像地址]:[版本号] - 查看更新的进展
kubectl rollout status deployments/[部署名称] - 如果设置的新的镜像版本有问题,会自动回滚。
- 手动回滚
kubectl rollout undo deployments/[部署名称]