K8s部署tomcat教程

今日来分享一下利用k8s来部署tomcat的教程。

主机列表:

master:192.168.153.100

node1:192.168.153.101

node2:192.168.153.102

这里不再叙述部署k8s方法,还没部署的朋友先移步出去部署好。

直接上方法:

1.建议先创建好namespace,这个是用来做资源隔离用的,如果不提前创建的话会用默认的,不利于管理。

kubectl create namespace tomcat

执行上条命令可以创建一个名称为“tomcat”的namespace

接下来创建资源控制器deployment

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)

编写好后执行以下命令创建tomcat 的Pod

kubectl apply  -f tomcat-deployment.yaml

如看到deployment.apps/tomcat-deployment created说明成功创建pod

3.执行以下命令显示你创建的pod

kubectl get pods  -n tomcat  # -n 指定命名空间,单独-A会得到全部的pod。

接下来我们再来创建service

4.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

5.启动service

kubectl apply -f  tomcat-service.yaml

6.查看启动的service

kubectl get service -n tomcat

7.进入容器

kubectl  exec  -it tomcat-deployment-7f56bbf454-hfqqn    -c  tomcat   -n tomcat  --  /bin/bash

8.复制目录进webapps

cp -R webapps.dist/*  webapps/

9.查看pod跑在哪个节点上

kubecrl describe  pod  [your pod name]  -n tomcat

我这里跑了2个Pod,分布在2个节点上。

10.访问验证

http://192.168.153.101:30080/
http://192.168.153.102:30080/    #我这里2个都可以访问,因为两个节点上都有pod
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值