Kubernetes基础知识
Kubernetes(k8s)
- Kubernetes:是一个开源的容器编排平台,用于自动化部署、扩展和管理容器化应用程序。它能够在多个服务器上高效运行容器,确保应用的高可用性和可扩展性。
一、Kubernetes的核心概念
- Pod:Kubernetes中最小的部署单元,可以包含一个或多个容器,这些容器共享网络和存储资源。
- Deployment:用于描述应用的期望状态,包括应用的副本数和更新策略。Deployment控制器负责维护这个状态,确保指定数量的Pod副本始终运行。
- Service:定义了一种访问Pod的方式,它提供一个稳定的IP地址和端口,即使Pod的实例发生变化,Service也能保持不变。
- Node:Kubernetes中的工作节点,可以是虚拟机或物理机,负责运行Pod。每个Node上运行着Kubelet,它管理Pod的生命周期。
二、安装Kubernetes
-
安装Minikube:
-
访问Minikube的官方发布页面下载适合您操作系统的安装包。
-
安装Minikube,例如在Linux上,您可以使用以下命令:
curl -Lo minikube https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 \ && chmod +x minikube
-
将Minikube添加到您的PATH环境变量中,以便可以从任何位置调用它。
-
-
启动Minikube:
-
打开终端,运行以下命令启动Minikube:
minikube start
-
这将创建一个单节点的Kubernetes集群,适用于开发和测试。
-
三、部署应用到Kubernetes
-
创建Deployment:
-
使用以下命令创建一个名为
nginx
的Deployment,使用官方的Nginx镜像:kubectl create deployment nginx --image=nginx
-
-
查看Deployment:
-
查看已创建的Deployment:
kubectl get deployments
-
-
创建Service:
-
创建一个Service来暴露Deployment,允许外部访问Nginx服务器:
kubectl expose deployment nginx --port=80 --type=NodePort
-
-
查看Service:
-
查看已创建的Service:
kubectl get services
-
四、访问应用
-
在Service信息中找到NodePort的端口号。使用
minikube service
命令可以直接在浏览器中打开Nginx服务:minikube service nginx
-
或者,您可以手动在浏览器中访问
http://<Minikube-IP>:<NodePort>
。
五、扩展应用
-
扩展Deployment副本数量:
-
将Nginx Deployment的副本数量扩展到3:
kubectl scale deployment nginx --replicas=3
-
-
查看副本数量:
-
查看Deployment的副本数量:
kubectl get deployments
-
六、更新应用
-
更新Deployment镜像:
-
更新Nginx Deployment的镜像到新版本:
kubectl set image deployment/nginx nginx=new-image:version
-
-
查看更新进度:
-
查看Deployment的更新状态:
kubectl rollout status deployment/nginx
-
这些步骤提供了一个完整的流程,从安装Kubernetes环境到部署、管理和更新应用。Minikube是一个非常适合初学者和开发人员的本地Kubernetes环境。
原文地址:https://blog.csdn.net/2302_79415891/article/details/143669021
免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!