1.生成镜像

见https://www.cnblogs.com/mushou/p/9713741.html,把测试成熟的应用添加到tomcat镜像生成新的镜像,用ansible部署到集群的几点服务器中。

2.部署环境

1)安装docker-ce

2)安装k8s

一定记得kubectl,kubeadm,kubelet,kubernetes-cni版本与使用的kube-apiserver,kube-schedule,etcd,kube-controll-manager的版本相同

见https://www.cnblogs.com/mushou/p/9613365.html

3)部署集群

见 https://www.cnblogs.com/mushou/p/9613365.html

3.部署应用

应用依赖的数据库,图片,Java环境部署在数据库服务器,采用nfs服务器共享供集群节点使用,也可以把应用服务的应用数据包共享供节点挂载。

1)配置nfs服务器

2)创建数据库服务

创建persistentVolume,创建persistentVolumeClaim

3)创建应用配置文件.yml文件

其中,Deployment应用的镜像为前面生成的新镜像,

volumes包括了persistentVolumeClaim,有数据库卷,图片卷,Java环境卷,其中还有一个tomcat/conf下的 server.xml文件也需要挂到生成的deployment中,

需要使用configMap,需要先建好,kubectl create configmap  server-xml-key   --from-file=server.xml,

在 yml配置文件中的volumes使用:

name: server-xml-key
        configMap:
          name: server-xml-key

同时在volumeMounts:

- name: server-xml-key
          mountPath: /usr/local/tomcat/conf/server.xml
          subPath: server.xml

这样就把该文件挂到pod中,我们如果更改pod中容器的tomcat的配置,只需更改该文件即可。其实我们使用nfs服务器,采用共享挂载的方式就是方便更改,同时做到不因pod 或者节点的故障而导致应用服务不可用。

4.

上文只是针对用k8s部署应用服务到生产环境的一些基本思路,具体的细节因公司业务保密的关系未在文中详细列出,供大家参考。

用k8s构建生产环境下应用服务的更多相关文章

  1. 生产环境下Flask项目目录构建

    接触Flask已经有大半年了,本篇博客主要来探讨如何规范化生产环境下Flask的项目目录结构.虽然目录结构见仁见智,个人有个人的看法和习惯,但总的来说,经过很多人的实践和总结,还是有很多共同的意见和想 ...

  2. [原]生产环境下的nginx.conf配置文件(多虚拟主机)

    [原]生产环境下的nginx.conf配置文件(多虚拟主机) 2013-12-27阅读110 评论0 我的生产环境下的nginx.conf配置文件,做了虚拟主机设置的,大家可以根据需求更改,下载即可在 ...

  3. Python开发程序:生产环境下实时统计网站访问日志信息

    日志实时分析系统 生产环境下有需求:要每搁五分钟统计下这段时间内的网站访问量.UV.独立IP等信息,用直观的数据表格表现出来 环境描述: 网站为Nginx服务,系统每日凌晨会对日志进行分割,拷贝到其他 ...

  4. 生产环境下一定要开启mysqlbinlog

    在没有备份数据库的情况下,可以用binlog进行恢复 在生产环境下安全第一,损失一点点效率换来的安全还是值得的. http://www.cnblogs.com/zc22/archive/2013/06 ...

  5. mysql在生产环境下有大量锁表,又不允许重启的情况下的处理办法

    mysql在生产环境下有大量锁表,又不允许重启的情况下的处理办法 满头大汗的宅鸟该怎么办呢? mysql -u root -e "show processlist"|grep -i ...

  6. Mysql迁移工具在生产环境下的使用

    在产品迭代开发发布过程中,由于业务需求的增加,数据库难免会有结构调整等操作. 在每个版本发布过程中怎么控制每个版本server端程序与数据库版本保持一致,以及数 据库升级.回滚等操作. 本博文宅鸟将向 ...

  7. 生产环境下JAVA进程高CPU占用故障排查

    问题描述:生产环境下的某台tomcat7服务器,在刚发布时的时候一切都很正常,在运行一段时间后就出现CPU占用很高的问题,基本上是负载一天比一天高. 问题分析:1,程序属于CPU密集型,和开发沟通过, ...

  8. 一次生产环境下MongoDB备份还原数据

    最近开发一个版本的功能当中用到了MongoDB分页,懒于造数据,于是就研究了下从生产环境上导出数据到本地来进行测试. 研究了一下,发现MongoDB的备份还原和MySQL语法还挺类似,下面请看详细介绍 ...

  9. centos7生产环境下openssh升级

    由于生产环境ssh版本太低,导致使用安全软件扫描时提示系统处于异常不安全的状态,主要原因是ssh漏洞.推荐通过升级ssh版本修复漏洞 因为是生产环境,所以有很多问题需要注意.为了保险起见,在生产环境下 ...

随机推荐

  1. 使用RQShineLabel

    使用RQShineLabel https://github.com/zipme/RQShineLabel 最终效果: 源码: // // RootViewController.m // UseText ...

  2. FLV视频封装格式详解

    FLV视频封装格式详解 分类: FFMpeg编解码 2012-04-04 21:13 1378人阅读 评论(2) 收藏 举报 flvheaderaudiovideocodecfile 目录(?)[-] ...

  3. Swap是个什么东东?

    要明白这个首先要知道什么是保护模式和实模式.以前的操作系统是实模式,例如dos.每个时候只有一个进程在跑,这个进程使用全部的物理内存.后来发展到保护模式,分时多进程.一个CPU上跑多个进程, 但进程不 ...

  4. python选课系统

    程序名称: 选课系统 角色:学校.学员.课程.讲师 要求: 1. 创建北京.上海 2 所学校 2. 创建linux , python , go 3个课程 , linux\py 在北京开, go 在上海 ...

  5. Linux中配置ftp服务器

    1. 先用rpm -qa| grep vsftpd命令检查是否已经安装,如果ftp没有安装,使用yum  -y  install vsftpd 安装,(ubuntu 下使用apt-get instal ...

  6. P1081 开车旅行

    题目描述 小 A 和小 B 决定利用假期外出旅行,他们将想去的城市从 1 到 N 编号,且编号较小的 城市在编号较大的城市的西边,已知各个城市的海拔高度互不相同,记城市 i 的海拔高度为 Hi,城市 ...

  7. 2、RabbitMQ-simplest thing(简单队列)

    1.项目准备: 使用maven的依赖 <dependencies> <dependency> <groupId>com.rabbitmq</groupId&g ...

  8. WEB安全 Sqlmap 中绕过空格拦截的12个脚本

    图片较小,可以右键点击图片-->选择 "在新标签中打开图片" --> 查看大图 Sql 注入时遇到过滤空格时可以使用下面12个脚本尝试绕过,在实际利用中可以灵活修改.

  9. map详解<一>

    首先了解下pair工具类: 这个类在头文件<utility>,功能:将俩个类型可能不一样的值组合在一起.,通过first和second来访问这两个值.还定义了operator == 和op ...

  10. PHP一个表单多个提交按钮解决方法

    1.html页面<注:多个按钮的name值必须相同> <form action="{:U('Index/index')}" method="post&q ...