总体介绍
1.编辑deployment文件
2.创建service文件
3.应用 deployment文件,应用service文件
4.进入docker 设置webapps
5.访问即可
主机列表:
master:192.168.91.129
node2:192.168.91.128
1.建议先创建好namespace,这个是用来做资源隔离用的,如果不提前创建的话会用默认的,不利于管理。
kubectl create namespace tomcat
2.vim tomcat-deployment.yaml
指定Kubernetes API版本,Deployment资源属于apps/v1版本
apiVersion: apps/v1
定义资源类型为Deployment,用于管理Pod的部署和更新
kind: Deployment
元数据部分,定义Deployment的名称和命名空间
metadata:
Deployment的名称,在命名空间内唯一标识此部署
name: tomcat-deployment
指定部署所在的命名空间,命名空间用于资源隔离
namespace: tomcat
Deployment的规格定义
spec:
指定需要运行的Pod副本数量,这里设置为2个实例
replicas: 2
标签选择器,用于识别和管理由该Deployment创建的Pod
selector:
matchLabels:
匹配具有app=tomcat标签的Pod
app: tomcat
Pod模板定义,用于创建新的Pod
template:
Pod的元数据
metadata:
为Pod设置标签,这些标签会被selector.matchLabels使用
labels:
app: tomcat
Pod的规格定义
spec:
容器列表,定义在Pod中运行的容器
containers:
第一个容器定义
- name: tomcat
使用的容器镜像,这里是华为云SWR仓库中的Tomcat 8.5版本镜像
image: swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/tomcat:8.5-jdk8
容器端口配置
ports:
端口定义
- name: http # 端口名称,可用于服务发现和监控
containerPort: 8080 # 容器内部暴露的端口号,Tomcat默认使用8080端口
添加资源请求和限制
resources:
requests:
memory: "512Mi" # 容器启动时请求的内存资源
cpu: "250m" # 容器启动时请求的CPU资源(250 milliCPU)
limits:
memory: "1024Mi" # 容器最大可使用的内存
cpu: "500m" # 容器最大可使用的CPU(500 milliCPU)
3.编写好后执行以下命令创建tomcat 的Pod
kubectl apply -f tomcat-deployment.yaml
如看到deployment.apps/tomcat-deployment created说明成功创建pod
4.执行以下命令显示你创建的pod
kubectl get pods -n tomcat # -n 指定命名空间,单独-A会得到全部的pod
5.vim tomcat-service.yaml
apiVersion: v1
kind: Service
metadata:
name: tomcat-service
namespace: tomcat
spec:
selector:
app: tomcat
ports:
- name: http
targetPort: 8080
port: 8080
nodePort: 30080
type: NodePort
6.启动service
kubectl apply -f tomcat-service.yaml
7.查看启动的service
kubectl get service -n tomcat
8.进入容器
kubectl exec -it tomcat-deployment-7f56bbf454-hfqqn -c tomcat -n tomcat -- /bin/bash
9.复制目录进webapps
cp -R webapps.dist/* webapps/
10.访问验证
(亲做可用)