提个疑问,生产环境中的数据库可不可以用 docker 容器化部署?

202 天前
 liyunyang
想问一下各位大佬,目前生产环境有 3 个数据库,oracle 、mysql 、pgsql ,


现在因为国产化服务器的要求,公司重新申请了若干台的国产化的系统 AnolisOS


现在要对所有服务器和数据库都要进行迁移,并且开始使用 k8s ,


想说数据库也使用容器化部署(数据挂载到宿主机的形式)。


服务器的资源很够,用容器化部署数据库会不会不合适?(目前暂不考虑数据库扩容等问题)
9730 次点击
所在节点    程序员
93 条回复
simenet
201 天前
生产环境都是 docker 部署。放心大胆的用 ,数据挂出来即可
Junzh
201 天前
数据库可以容器化部署。如果用 docker 部署,将数据目录映射到 host 即可。如果用 k8s ,需要持久化存储的问题,k8s 有提供专门的持久化存储方案。对于 on-premise , 使用 k8s 部署中间件是推荐的方案。
la2la
201 天前
当然可以
这个跟能力有关,有能力怎么都行
sfdev
201 天前
数据库容器化早就不是问题了
scrange
201 天前
herozzm
201 天前
现在通用做法就是 docker 跑 mysql ,data 文件夹-v 在宿主机
xiaomushen
201 天前
容器里跑呗,没事儿的。
kzfile
201 天前
云厂商的数据库都是容器实例,当然,人家的数据库已经修改的充分云原生化了
qczrzl
201 天前
我觉得没啥不合适的,做好挂载存储和备份策略
wheat0r
201 天前
对于 90%被要求使用信创的客户,docker 都不存在性能问题
liyunyang
201 天前
感谢各位大佬解答,我是觉得没问题,因为本身公司内部的开发环境我也使用容器部署使用了好几年,并且新的服务器资源很足够!但是问了公司里的几个领导,他们都说不建议,所以我这边还是按领导的要求来,不想给自己找事。。。( ps ,我内心还是站在容器化部署的!!)
COW
201 天前
@liyunyang 如果做的项目是面向企业的,那我强烈建议你上 docker ,这样交付的时候可以避免点各种各样的坑。
jixiafu
201 天前
如果服务器多或者客户项目多已经形成部署脚本的话,那肯定是 docker 部署方便便于维护,我们公司的项目数据库就全是基于 docker 部署的,但感觉你这种情况完全没必要,不要给自己找麻烦
rbe
201 天前
容器化部署没啥问题,conf 和 data 都要暴露出来,主从节点要测试网络连通性。但是用 k8s statefulset 部署数据库就比较麻烦了,最好还是独立在 k8s 外,用 service 访问
GG668v26Fd55CP5W
201 天前
我也觉得数据库用容器部署没什么问题。
问题在于,如果有多个应用,是连接到同一个数据库容器,还是每个应用都各自开一个数据容器?
arcaitan
201 天前
有没有专家说一下容器化管理数据库具体操作? 是把数据库的数据也容器化管理吗
yinmin
201 天前
小心一件事情,如果限制容器的 cpu 、内存资源,容易不稳定出问题。

因为,容器里获取到的 cpu 数量和内存都是主机值,不是容器限制值。

例如:主机 16 核但是 nginx 容器限制 4 核,nginx 会根据 cpu 数量自动设置 workers 进程数量,也就是按 16 核分配了过多的 workers 导致高负载下性能急剧下降。

例如:主机 64GB 内存但是 mysql 容器限制 8GB 内存,mysql 读到的是主机 64GB 内存,然后不断占用内存超 8GB 后被系统杀死,导致 mysql 异常重启。

推荐,不要在 docker 里限制容器 cpu/内存,改成在软件配置里加限制;如果必须在 docker 里限制容器 cpu/内存,则需要调整软件配置以匹配容器限制。
xiaomushen
201 天前
@COW 哈哈哈,尤其是那些机房涉密,完全隔绝外网的政府,国企,军工。用 docker ,珍爱生命
guanhui07
201 天前
当然可以
szdev
201 天前
这都 2024 年了还问这个

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://yangjunhui.monster/t/1090444

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX