需求:想搭建一个基础服务平台,提供公共中间件服务,比如 MySQL 、PostgreSQL 、Redis 等,可以让开发、测试等团队申请使用,免去一个环境一套中间件,既浪费资源,运维还重。
想请教一下有没有相关的方案可以借鉴,谢谢。
1
povsister 84 天前 via iPhone 1
小团队用 k8s+template ,池化部署
走人工申请而不是平台创建 |
2
dejavuwind 84 天前 1
这不就是私有云?团队规模不大基于 K8s ,每个环境每个应用的中间件一般还是要隔离的,不然互相有影响咋办?除非你实际部署也共用中间件
|
3
billzhuang 84 天前 1
“免去一个环境一套中间件”
首先,“MySQL 、PostgreSQL 、Redis ”不算中间件 其次,一个环境一套这些,不挺好的嘛,做隔离,省去很多麻烦。 |
4
yinmin 84 天前 via iPhone 2
基于容器部署,5 台服务器以下用 k3s ,5 台以上用 k8s ,如果仅 1 、2 台服务器就用 docker 。做一个容器 template 手工部署
|
5
povsister 84 天前
@billzhuang
对的,这些中间件的自身 overhead 对于小团队来说压根不需要考虑太多。做到物理机资源池化就行了。 大企业再考虑 share instance 和 namespace 隔离。 |
6
lower 83 天前
@billzhuang op 说的是开发/测试使用,每种部署一个应该是够了
|
7
abcbuzhiming 83 天前 1
你提到的服务,全部都是有状态服务,有状态服务最好的方案就是一个环境一套,但凡它有状态,运维就轻不起来。你就算私有云,照样是申请一个,就是一个实例,单独为某个环境服务。而且你还得配审核人员,更烦
|
8
abcbuzhiming 83 天前
@lower 每种就部署一个的话,需要搞私有云吗?那不是硬造需求?服务这玩意从来都是多了才需要运维,少根本不需要运维。
不过每种就一个,你就更要小心,每个组最好单独一个账户,隔离它们能访问到的数据,否则就会出现 a 不小心改了 b 的库这样搞笑的事情。 反正有状态服务,我是坚决反对多个组混在一起搞开发使用的,各种各样的笑话,就算老手都不一定保证不失误 |
9
version 83 天前 1
每个人部门申请机就好呢..搞那么麻烦..要安装哪个就自动化创建 docker 啥的.
要找活干.可以是研究搞 K8S K3S 啥的..但是呢..all in one 感觉容易崩...很多企业无谓上大件.又不专业.崩就是整个公司一起崩..还不如尽量项目多隔离..物理隔离.各种隔离..资源利用率这个说白了.就是人的问题..用量不大.那就不给申请那么多机器呢..少了就收回..自动伸缩这套东西.降本增效.你看看多少家企业出事了.出了事故障时间都是按天处理 |
10
fsdrw08 83 天前 via Android 1
k8s + terraform ,配合 gitops ,要申请资源,直接提 pr 就行
|
11
dayeye2006199 83 天前 1
开发本地弄个 docker 就好了
|