用k8s构建生产环境下应用服务
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构建生产环境下应用服务的更多相关文章
- 生产环境下Flask项目目录构建
接触Flask已经有大半年了,本篇博客主要来探讨如何规范化生产环境下Flask的项目目录结构.虽然目录结构见仁见智,个人有个人的看法和习惯,但总的来说,经过很多人的实践和总结,还是有很多共同的意见和想 ...
- [原]生产环境下的nginx.conf配置文件(多虚拟主机)
[原]生产环境下的nginx.conf配置文件(多虚拟主机) 2013-12-27阅读110 评论0 我的生产环境下的nginx.conf配置文件,做了虚拟主机设置的,大家可以根据需求更改,下载即可在 ...
- Python开发程序:生产环境下实时统计网站访问日志信息
日志实时分析系统 生产环境下有需求:要每搁五分钟统计下这段时间内的网站访问量.UV.独立IP等信息,用直观的数据表格表现出来 环境描述: 网站为Nginx服务,系统每日凌晨会对日志进行分割,拷贝到其他 ...
- 生产环境下一定要开启mysqlbinlog
在没有备份数据库的情况下,可以用binlog进行恢复 在生产环境下安全第一,损失一点点效率换来的安全还是值得的. http://www.cnblogs.com/zc22/archive/2013/06 ...
- mysql在生产环境下有大量锁表,又不允许重启的情况下的处理办法
mysql在生产环境下有大量锁表,又不允许重启的情况下的处理办法 满头大汗的宅鸟该怎么办呢? mysql -u root -e "show processlist"|grep -i ...
- Mysql迁移工具在生产环境下的使用
在产品迭代开发发布过程中,由于业务需求的增加,数据库难免会有结构调整等操作. 在每个版本发布过程中怎么控制每个版本server端程序与数据库版本保持一致,以及数 据库升级.回滚等操作. 本博文宅鸟将向 ...
- 生产环境下JAVA进程高CPU占用故障排查
问题描述:生产环境下的某台tomcat7服务器,在刚发布时的时候一切都很正常,在运行一段时间后就出现CPU占用很高的问题,基本上是负载一天比一天高. 问题分析:1,程序属于CPU密集型,和开发沟通过, ...
- 一次生产环境下MongoDB备份还原数据
最近开发一个版本的功能当中用到了MongoDB分页,懒于造数据,于是就研究了下从生产环境上导出数据到本地来进行测试. 研究了一下,发现MongoDB的备份还原和MySQL语法还挺类似,下面请看详细介绍 ...
- centos7生产环境下openssh升级
由于生产环境ssh版本太低,导致使用安全软件扫描时提示系统处于异常不安全的状态,主要原因是ssh漏洞.推荐通过升级ssh版本修复漏洞 因为是生产环境,所以有很多问题需要注意.为了保险起见,在生产环境下 ...
随机推荐
- 四、python小功能记录——按键转点击事件
import win32api,win32gui,win32confrom pynput.keyboard import Listener def clickLeftCur(): win32api.m ...
- Spring学习---Spring中利用jackson进行JSON转换
Spring中利用jackson进行JSON转换 import java.util.List; import com.fasterxml.jackson.core.JsonProcessingExce ...
- Python学习---Django的新工程设置模板
该模板完全可以在创建好新工程后进行部分代码替换 创建app01的 python startapp app01 创建static子目录 settings.py """ ...
- JavaScript学习---JavaScript基础知识
JavaScript的引入方式 JavaScript的引入方式: 1.直接在script里面写: 2.使用<script src="JS的文件位置"> {#1 直接编写 ...
- 沉淀再出发:redis的安装和使用
沉淀再出发:redis的安装和使用 一.前言 下面让我们看看Redis这个键值对内存数据库的使用方法和相关注意事项. 二.Redis的安装和使用 2.1.Redis的定义 REmote DIction ...
- zbrush书法文字硬边雕刻
方法的重点在与边缘环的操作以及模型网格的数量. 1.通过ZAppLink功能可以把制作的文字书法映射到模型上去. 2.遮罩,按照颜色强度遮罩. 3.分组,按照颜色分组.单独显示文字部分的分组.按Ctr ...
- 错误:该表单无法显示,可能是由于 Microsoft SharePoint Server State Service 配置不当。有关详细信息,请与服务器管理员联系
问题场景: 1.SharePoint 2013 中工作流需要状态服务(State Service),如果没有正确配置状态服务,则在给列表.文档库添加工作流时会遇到错误: “该表单无法显示,可能是由于 ...
- echo 与 od -x 与 %!xxd 命令
echo 与 od -x 与 %!xxd 命令 echo 命令 -n 选项 可以使其不带换行符od -x 命令可以查看文件的16进制表示%!xxd 可以在vim编辑器中dump成16进制表示
- Shell传递参数【转载】
Shell 传递参数 我们可以在执行 Shell 脚本时,向脚本传递参数,脚本内获取参数的格式为:$n.n 代表一个数字,1 为执行脚本的第一个参数,2 为执行脚本的第二个参数,以此类推…… 实例 以 ...
- Angular Reactive Form - 填充表单模型
setValue 使用setValue,可以通过传递其属性与FormGroup后面的表单模型完全匹配的数据对象来一次分配每个表单控件值. 在分配任何表单控件值之前,setValue方法会彻底检查数据对 ...