打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
3. 使用K8S部署tomcat

注意,以下 在k8s master节点执行:

1. 使用dockerfile方式构建自己应用的tomcat镜像(构建完成即可,不需要使用docker启动)

https://blog.csdn.net/u013286936/article/details/98457286

我这里创建的镜像名称为:demo-tomcat,tag为:1.0
注意:由于我没有搭建自己的镜像仓库,所有在k8s启动pod时,调度的工作节点拉取不到镜像。会出现以下错误:

可以采用离线导入的方式先将镜像拉取到所有node节点。
https://blog.csdn.net/u013286936/article/details/98456976

2. 部署tomcat

创建一个yaml文件:jvmdemo-tomcat.yml
yaml文件格式定义: https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#creating-a-deployment

apiVersion: apps/v1kind: Deploymentmetadata:  name: demo-tomcat  labels:    app: demospec:  replicas: 1  selector:    matchLabels:      app: demo  template:    metadata:      labels:        app: demo    spec:      containers:      - name: tomcat        image: demo-tomcat:1.0         ports:        - containerPort: 80

3. 部署pod

3.1 部署:
kubectl create -f  jvmdemo-tomcat.yml

3.2 查看pod状态,running运行成功:
kubectl get pods 

3.3 查看pod详细信息:
kubectl describe pod demo-tomcat-7f6bb4d7cd-fdbzw

如果pod状态为:CrashLoopBackOff,则可通过以下命令查看pod日志:

kubectl logs <podName>

当pod状态为running时,表示pod运行成功。

可以通过:
kubectl get pods -o wide查看到pod的ip地址。

然后在宿主机内,可以用过 curl测试tomat是否发布成功。

但是此时在宿主机外部还不能访问到tomcat。

4. 部署service

4.1编辑jvmdemo-service.yml

将pod端口和node port绑定,这样就可以在宿主机外部,通过宿主机IP:port访问pod容器,以下示例,暴露的宿主机端口为:30880。 注意selector.app为上面yml文件中的metadata.lables.name

apiVersion: v1kind: Servicemetadata:  name: jvmdemo-servicespec:  type: NodePort  ports:    - port: 8080      targetPort: 8080      nodePort: 30080  selector:    app: demo
4.2 部署service:
kubectl create -f  jvmdemo-service.yml

查看service:

kubectl get srv


此时通过master,node的ip均可以访问到pod:
http://192.168.137.89:30080/
http://192.168.137.88:30080/

来源:https://www.icode9.com/content-4-376701.html
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
入门级实操教程!从概念到部署,全方位了解K8S Ingress!
K8S实战之部署java应用
CKA 真题
我花了10个小时,写出了这篇K8S架构解析
持续部署入门:基于 Kubernetes 实现滚动发布
如何在Kubernetes里创建一个Nginx service
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服