正文
1)容器化的优缺点
容器化只能解决容器可以解决的问题:
优点:
缺点:
随着技术发展,做技术选型也要适配公司业务发展和扩张变化,我们需要不断思考可能会遇到的问题和随时进行业务迭代。
2)Docker
考虑到以上的问题,我们觉得容器化改造很有必要性,并且它能满足我们当时的一些需求。
因为我们的Docker针对MySQL运用,当时也需要考虑在Docker里需要注意哪些问题,所以我们在这几个方面做了相对于应用来说不太一样的适配,以宿主机为概述:
①配置选择
②镜像管理
最开始有一些比较老的MySQL版本,大版本加上小版本总共八个版本,这时候使用Docker可以根据需求定制化镜像,最终我们统一改成了5.6、5.7这两个版本。
③部署流程
对于应用来说,数据库的部署对于K8s的需求来说并没有那么强烈,底层可能是一个库或者几个库,而应用的机器是几十或者几百个。最主要的区别是,应用是一个无创产物,研发人员来思考它的开启和关闭不会考虑太多问题,但对数据库来说就不是这样的:
网络模式需要根据自身条件取舍,由于我是DBA出身,而且团队对网络这一部分也不太熟悉,在当时的条件下经过了测试后发现没有什么问题就选用了套索模式。
3)为什么没选择k8s
基于到家业务场景下的部署和流程
这套自动化的流程需要自己把控,现在到家这一套流程保证在5分钟之内完成,可以给研发提供一个生产交付。
我们刚买的机器和宿主机的规格还是比较匹配的,配置是128核、256g、xxx(18:56)这个样子。