K8s Deployment脚本部署tomcat集群,Service外部访问Tomcat集群(Service NodePort方式)
部署是指Kubernetes向Node节点发送指令,创建容器的过程Kubernetes支持yml格式的部署脚本kubectl create -f 部署yml文件 #创建部署
部署是指Kubernetes向Node节点发送指令,创建容器的过程
Kubernetes支持yml格式的部署脚本
kubectl create -f 部署yml文件 #创建部署
Deployment脚本范本
集群信息
apiVersion写死
metadata元数据,用于k8s部署文件的名字。一个有意义的说明,通过name就知道它的作用
详细信息
Pod模板信息
spec详细信息
relicas:2 部署2个
labels:是pod的名称,tomcat-cluster就是pod的名称 (注意!!app是不带s的,否则会产生service绑定不上endPoints问题!!)
容器信息
containers name:创建容器的名称,一般与Pod名称一致,也可以不一致,有意义即可
image:使用的镜像名称,tomcat:latest
containerPort:容器内部对外暴露的端口,tomcat对外8080,如果是mysql则应该配置3306
部署相关常用命令
kubectl logs -f pod (-f是查看实时信息)
kubectl get deployment 查看部署情况
kubectl get service 查看服务情况
kubectl get pod 查看服务情况
kubectl describe deployment/service/pod id 详细信息
kubectl delete deployment/service/pod id 删除
1、kubectl get pod 复制pod id
2、kubectl exec -it podid /bin/bash 主节点进入Pod中的容器
Service外部访问Tomcat集群(NodePort)
kind,说明为Service服务类型
metadata name:仅为说明作用
labels app:是作为Pod的标识
type:NodePort
selector:指向集群Pod名称,同上方Deployment脚本配置的Pod👆
ports:port 集群内部开放的端口
targetPort 容器内部对外开放的端口,如tomcat 8080,mysql 3306
nodePort 宿主机节点对外开放的端口
执行命令: kubectl create -f service.yml
获取所有服务列表:kubectl get service
获取详细信息:kubectl describe service 服务名称
更多推荐
所有评论(0)