kubernetes 下的 Nginx 加 Tomcat 三部曲之一:极速体验
欢迎访问我的 GitHub
这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos
本篇概览
在生产环境中,常用到 Nginx 加 Tomcat 的部署方式,如下图:
从本章开始,我们来实战 kubernetes 下部署上述 Nginx 和 Tomcat 服务,并开发 spring boot 的 web 应用来验证环境,整个实战分为以下三篇内容:
极速体验 kubernetes 下的 nginx 加 tocmat;
细说 nginx 和 tomcat 镜像的制作;
实战 tomcat server 的在线扩容和应用升级;
实战工程介绍
本次实战创建的 Pod 如下:
一个 Nginx 的 Pod,负责转发 web 请求到 Tomcat;
三个 Tomcat 的 Pod,上面部署了 web 应用,收到 Nginx 转发的请求后,返回的内容是当前 Pod 的 IP 地址;
准备 kubernetes 环境
本次实战需要可用的 kubernetes 环境,您可以参考以下文章进行快速搭建:
《rancher 下的 kubernetes 之一:构建标准化 vmware 镜像》
《rancher 下的 kubernetes 之二:安装 rancher 和 kubernetes》
如何执行 kubectl 命令
实战中,需要在一台 ubuntu 电脑上安装 kubectl 工具,然后连接到 kubernetes 环境执行各种命令,kubectl 工具的安装步骤可以参照:《rancher 下的 kubernetes 之三:在 linux 上安装 kubectl 工具》
脚本文件下载
本次体验所需的 deployment 和 service 资源是通过脚本创建的,这个脚本可以通过以下两种方式中的任意一种下载:
CSDN 下载(无法设置免费下载,只能委屈您用掉两个积分了):http://download.csdn.net/download/boling_cavalry/10235034
GitHub 下载,地址和链接信息如下表所示:
这个 git 项目中有多个目录,本次所需的资源放在 k8s_nginx_tomcat_resource,如下图红框所示:
下到的 k8stomcatcluster20180201.tar 是个压缩包,复制到可以执行 kubectl 命令的 ubuntu 电脑上,然后解压开,是个名为 k8stomcatcluster 的文件夹;
执行脚本文件下载
进入解压好的 k8stomcatcluster 目录;
执行命令*chmod a+x .sh,给 shell 脚本赋可执行权限;
执行命令 start_all.sh,创建本次实战的资源,页面输出如下信息:
验证服务已经启动
先去 kubernetes 的管理页面看一下服务是否启动,如下图,名为 ng、tomcathost 的两个服务都已经启动:
点击 tomcathost 服务,看到详情信息,里面有 pod 的情况,如下图:
上图中显示 tomcathost 是在 node1 创建的,我的 node1 机器的 IP 地址是 192.168.119.153,所以在浏览器输入:http://192.168.119.153:30006/getserverinfo
在浏览器看到的信息如下图所示,机器 Tomcat 所在机器的 IP 地址和当前时间:
多次刷新页面,能看到这三个 IP 地址:10.42.38.128、10.42.184.35、10.42.127.135,这就是三个 Tomcat Pod 的地址,Pod 信息如下图红框所示:
执行 k8stomcatcluster 目录下的 stop_all.sh 脚本,可以将前面创建的所有 service,deployment 资源删除;
至此,我们已经在 kubernetes 下简单体验了 Nginx 加 Tomcat 的网站结构,接下来的章节,我们一起来细看如何在 kubernetes 下创建整个环境;
欢迎关注 InfoQ:程序员欣宸
版权声明: 本文为 InfoQ 作者【程序员欣宸】的原创文章。
原文链接:【http://xie.infoq.cn/article/51d78c01643655bfb638b298c】。文章转载请联系作者。
评论