国内的 Devops 云平台动辄封号,删库,屏蔽,国内云平台 devops 已死!自建 Devops 平台才靠谱。这里采用开源项目建立一个完善的 Devops 系统,基本运行良好!
个人 devops 实践系统。整套系统可以完全内网实现,不用申请域名、ssl 证书,完全自己管理 dns ,自签名证书。
配合 Consul 可以实现自动负载均衡
大家有什么更好的项目推荐没?
1
bloodkey OP 尽量不使用 java 项目,不是 java 项目不好,而是同样的功能,java 项目是其它语言的至少 10 倍 cpu ,内存消耗,启动速度还贼慢
整套系统基本打通了项目开发所有过程 |
2
singerll 2022-05-12 16:05:21 +08:00
你怕不是对 devops 有什么误解,两个服务器监控都没有,你这些功能根本不是企业关心的,况且这个玩意根本就不是几个人能够完成的产品。
至于你说的“国内的 Devops 云平台动辄封号,删库,屏蔽,国内云平台 devops 已死!”,先不说你说的对不对,你对私有云肯定是有误解的。。。 |
3
duzhor 2022-05-12 16:15:11 +08:00
esearch ? openstack ?多大的公司啊要给 devops 上这些?
|
4
bloodkey OP @singerll 整个系统普通 nas,32G 内存,跑起来完全没问题
多节点监控,备份,负载平衡加服务器扩展,容易得很。ELK 集群对于小系统完全事多余的,portainer 就够用了 少于 200 节点 k8s 也是多余的 |
5
bloodkey OP 单台 nas, 32G 内存,上面 docker 跑起来完全没问题,nas 如果是 4 核,2Ghz 以上,支持 500 人同时开发应该没问题
|
8
bloodkey OP 是已经实现的系统
|
9
bloodkey OP 不光是 devops,共跑了约 80 个 docker ,经过多次优化,平时负载低于 10.
还是在运行 emby 的情况下,emby 可是很耗资源的 |
10
IvanLi127 2022-05-12 16:35:40 +08:00
不错欸
|
11
bloodkey OP 搞云平台的看到我实现的系统是不是很瑟瑟发抖?
可以说少于 1000 人的企业,使用这个基本就够用了 云平台把数据交给别人,赌别人的道德不会私自偷拿你的数据?真是想多了。 某垄断社交平台内部有专门的团队分析客户的数据,看有什么有价值的没有,是很多年前就爆出来的消息 |
13
xiaotianhu 2022-05-12 16:49:07 +08:00 3
做生意: 管他什么平台什么流程,先上线看看用户反馈再说,搞量搞内容第一位
做技术:管他什么用户什么业务,先把运维搞完美 |
15
Alliot 2022-05-12 16:57:59 +08:00
@xiaotianhu 真相了 2333 感觉技术人都很容易陷入这样一个误区。
|
16
bloodkey OP |
17
scyuns 2022-05-12 17:08:05 +08:00
还有没有更轻量级的
|
18
hb0730 2022-05-12 17:09:08 +08:00
我现在用的 gitea+drone 还 OK
|
19
bloodkey OP @scyuns 用 gitea+drone ,zentao 想用就用,资源占用极低,个人使用 8G 内存的 nas 跑起来完全够用
|
20
bloodkey OP gitlab 要跑起来至少要 8G 内存,jenkins 也是内存 cpu 占用大户。大于 16G 内存时考虑上这个
32G 内存,图片中介绍的可以都跑起来! 是不是非常节省内存,也省钱 O(∩_∩)O |
21
myu7815 2022-05-12 17:23:40 +08:00
免费的 gitlab 无法使用 es 高级搜索吧
|
22
Judoon 2022-05-12 17:24:52 +08:00
别的不问了,就问问能支撑多大业务量吧
|
23
huai 2022-05-12 17:27:55 +08:00
腾讯的蓝鲸呢?
|
25
bloodkey OP @Judoon 看你的 cpu 和内存大小,看 gitlab 官方文档介绍,至少 2 核 8G 。4 核 8G 可以支撑 8000 用户
gitlab 还支持建立多节点集群,就是说你服务器够多,搭建个类似 github 都行 |
27
defunct9 2022-05-12 17:39:30 +08:00 1
代码管理那一陀,可以用 onedev 代替
|
29
defunct9 2022-05-12 17:44:53 +08:00
域名那一块,可以把 coredns 拿出来用
|
31
bloodkey OP @Judoon 私人 nas ,只满足个人使用。还有全套视频,图书,音乐管理系统,多少人使用没有测试,cpu 和内存剩余范围支撑个几百号人同时使用 gitlab 应该没问题的
|
32
Judoon 2022-05-12 17:52:37 +08:00
@bloodkey 你的 nas 什么配置,既然没有测试。那压测一下,按你说的,几百个人同时使用。其他场景先不算,只考虑 10 个 gitlab-runner 同时运行,应该顶得住吧,2 个 golang ,2 个 java ,2 个 python ,2 个 node ,2 个其他,编译打包打镜像推送。
你压测试试,看看数据,让大家信服 |
33
defunct9 2022-05-12 17:53:38 +08:00
@bloodkey 那么,你也会同意 coredns 替代 dnsmasq 的用法。虽然,dnsmasq 确实是个大杀器。
|
34
defunct9 2022-05-12 17:57:03 +08:00
最后,cmdb 用了很多,ralph 、netbox 、蓝鲸、open-cmdb ,没一个好用的,谁还有更好的推荐么?要机柜图,要网络拓扑图,要知道机器信息,要知道交换机端口配置,还要知道硬盘什么时候更换过。
|
35
bloodkey OP cpu j4125 4 核 14nm 2.00 GHz ~2.70 GHz
SSD sata 接口的 读写 500MB/S 32G DDR4. 2x16G 双通道 @Judoon 个人开了 2 个 gitlab-runner ,个人 nas 是娱乐开发双重定位的,搞啥压力测试,再多用户用技术手段限制性能消耗,排队来支持更多用户才是王道。花费更多金钱去满足极少数情况的高压力是钱多的没处花 |
37
bloodkey OP @defunct9 用 dnscrypt 和 dnsmasq 的原因是满足 DOH 防污染,dns 去广告,和域名管理
coredns 可以实现这三个要求么? |
38
bloodkey OP 自建 CA 是自己用脚本写的 CA 管理系统,IP ,泛域名,多域名签名一个证书搞定!
|
39
wolfmei 2022-05-12 22:28:06 +08:00
我医院系统完全用不了这套东西
|
41
root01 2022-05-13 09:54:12 +08:00
谢谢楼主的博客提供的学习教程
|
42
lialzm 2022-05-13 10:55:48 +08:00
|
43
WIN2333 2022-05-13 11:07:06 +08:00
你对 java 也不是也有什么误解,口说无凭,拿证据出来
|
45
WIN2333 2022-05-13 11:19:54 +08:00
@bloodkey 那是 jira 的问题不是 Java 的问题,另外,大部分企业选择的都是 jira ,而不是 zentao 哈
|
47
struggle001 2022-05-13 11:24:57 +08:00
管理 18 个机柜 OpenStack 集群的运维飘过。。。3 个柜子以内 pve 挺香的,后端用 ceph
不过你想做什么东西,我没看懂。。 还有这个东西太大了,如果公司业务需要支撑,还好,否则就算开发好了 也没人用啊 |
48
struggle001 2022-05-13 11:30:40 +08:00
文中的好多东西都在用 只有 nextcloud 是给公司内部提供的云盘平台。gitlab 也在用。。elk 也在用,zabbix ,cacti ,cobbler 等等。我都是野路子。。。面向业务做开发部署。好多东西都是靠脚本完成。。服务器虽然很多,但是也没用 ansible 这些东西。麻烦。
|
49
struggle001 2022-05-13 11:35:41 +08:00
@defunct9
netbox 这个可以尝试当 cmdb 用,不过还是要考个人梳理层级关系。 至于网络监控靠 Prometheus 和 grafana 好像也还行。不过 cacti 也要当个备份。。拓扑这东西真的没发现更好的软件。。 cacti 气象图有点弱了 |
50
bloodkey OP @struggle001 目标是单节点,最低成本,实现一个开源可用的 devops
什么 k8s ceph 中小企业完全不需要 |
51
struggle001 2022-05-13 11:37:29 +08:00
@defunct9 没看清你写 netbox 了,这个梳理清楚还挺好用的,不过前期规划好挺重要的。
我们的资产管理 加上百台网络设备和端口管理 ip 管理 都在用这个。 |
52
struggle001 2022-05-13 11:39:19 +08:00
@bloodkey 挺好的,期待你的作品。其实我们现在系统也挺多的,东一个 西一个 没统一的入口挺恶心的。现在唯一可以搞的是有统一的 passport 或者 oss 。。
|
53
bloodkey OP |
54
struggle001 2022-05-13 12:35:29 +08:00
@bloodkey 东西太多了,适合的才是最好的。
这套平台是不是模块化的,可以自己选择模块,松耦合。如果是,那就更好了。 |
55
struggle001 2022-05-13 12:36:32 +08:00
@bloodkey nginx 没考虑高可用吧。。哈哈
|
56
bloodkey OP @struggle001 本身都是 docker 运行,可以根据需要用到那个就启动运行那个 docker
nginx 高可用,考虑用 dns 多线路负载均衡,dnsmasq 还没研究出来怎么配置多线路负载均衡与掉线自动切换 |
57
defunct9 2022-05-13 15:40:27 +08:00
@struggle001 cacti 已死,画个聚合图要死人了。换 librenms 吧。
|
59
zhaohua 2022-05-13 16:02:22 +08:00 1
我司现在大约 15 人左右的研发团队,说说我的经验,一开始也想着自建一些基础设施, 当然没 op 这么大规划,只想把基础监控告警做起来, 折腾了半年 elk, grafana ,prometheus , k8s.
后来发现相比云服务,成本高不说(别说一台 32G nas ALO 不敢,再者除了硬件,人员也要开工资),受限于性能体验还差, 除了 gitlab+drone 其他能上云的都上云了, 沟通和组织架构用企业微信,项目管理用 tapd 文档用语雀, 监控日志告警用阿里云,负载均衡云 slb. 消息队列用 ons. 感觉非常满意. 自建 devops 小厂就别考虑, 老老实实上云吧,搭一套容易,维护起来就要命了. |
60
zhaohua 2022-05-13 16:04:36 +08:00
你要是运维能说服老板折腾,那这套对个人生涯是极好的.要是技术负责人就算了,别给自己挖坑.
|
61
dreamusername 2022-05-13 16:06:54 +08:00
Gitlab+Lark+Zadig 就足够了
|
62
betainCao 2022-05-13 17:47:07 +08:00
公司里的 devops 一般是从 0->1 的过程,你这套创业公司用不起,从 0->1 需要什么拿什么,而不是上来就是你这一套。
|
64
bloodkey OP @betainCao 把数据交给别人就是找死
最近不是某 ceo 在微博质问为啥某社交通信公司员工查看他们私密文件?留下访问记录? 动动手指就删光你所有文件,你能怎么着? 注册账号时就同意了别人不用负任何责任,闲死得不够快? 公有云解决不了信任问题,私有云才是未来! 再说,这套系统这么简单,而且都是可以需要那个就安装运行那个,怎么到你这里就得上全套? |
65
bloodkey OP 使用 X 里云,然后发现数据被窃取,人家利用你的数据造一个一模一样的项目,并取代你,这种新闻可以去搜一下,一搜一大把
|
66
bloodkey OP 真实例子,某 ip 数据库服务,使用 x 里云,然后被克隆
维权不成,没有任何说法 |
67
bloodkey OP @zhaohua 个人认为刚好相反,如果公司的产品没啥技术含量,上云没有关系
如果数据,代码是核心资产与竞争力,上云就是找死! 而且,自己控制数据,对有利于研发,运维的,不可替代性更高。都上云,才是更容易被替代 |
68
bloodkey OP 在数据安全,企业生死存亡面前,成本什么的都是浮云,成本再高有被克隆,被复制死亡成本高么?
再说,这套系统也是从少到多,从小到大,慢慢优化,扩展的,硬件成本也是随着需求变化而变化的,随着业务扩展而增加成本,一开始单节点单服务器就可以满足要求了,后面业务增加慢慢扩展为集群,k8s 等 |
69
qfdk 2022-05-13 20:34:49 +08:00 via iPhone
呃 看了半天才明白想表达什么 . 简单来说就是你被某些平台封号了 然后自己摘了些开源工具搭了一个差不多可以自用的. 动手能力 OK
|
70
struggle001 2022-05-13 23:14:40 +08:00
@defunct9 我们混着用
|
71
yyttrr 2022-05-14 09:36:52 +08:00
感觉部署那里缺了一层,不是简单的一个镜像就能带过的,例如 k8s 里面一个服务的 env 、hpa 、资源限制这些都是部署的一部分,需要有个类似 helm chat 的东西管理。还有一个镜像可能会部署到多种环境,例如常驻势实例在 k8s 上,临时扩容的扔到云厂商的函数计算里面
|
73
kongkx 2022-05-14 12:10:55 +08:00 via iPhone
现在个人运维都搞这么复杂了吗?
|
74
bloodkey OP @yyttrr docker 参数中可以限制 cpu 内存,可以 portainer 配合 git 管理并部署 docker compose
k8s 太耗资源了,至少 5 个节点才能把 k8s 完整跑起来,每个节点光 k8s 不包括其它实例,就至少需要 8G 内存 |
75
wuxqing 2022-05-14 16:43:11 +08:00
@betainCao 我们小团队原先也是用某家云的,1 年成本 20 多万,还经常负载高了把 ECS 卡死,只能重启,重启一下有时候要 10 多分钟,运维成本也是同样存在的。后来直接搞了几台服务器托管,快 2 年了,稳得很,每年还能节省将近 20 万成本。
|
76
yyttrr 2022-05-14 19:21:45 +08:00
@bloodkey 我这里最小的一个集群也有 20 个 32 核 128G 的虚拟机了,k8s 解绑了容器和机器,比 docker 方便太多太多了
|
77
evilStart 2022-05-14 19:22:58 +08:00 via Android
你这套理论上可以公司用,但你怎么说服老板自己搭呢?
|
78
bloodkey OP @yyttrr 我跑的是最省钱方案,单节点低功耗 nas 服务器,当然没法和专业的服务器相比了,小于 200 节点的,还是直接 docker 省钱。k8s 的方便是消耗 cpu 和内存为前提的
|
80
bloodkey OP @wuxqing 一个自建 devops 省钱的真实例子,和云厂商鼓吹的上云省钱刚好相反
自建需要各个公司养更多开发和运维,对所有开发和运维人员都有利。上云,只对云厂商有利。 鼓吹上云省钱,方便的,可以说不是无知就是利益相关方了 |
82
jack778 2022-05-22 11:24:55 +08:00
创业公司要的是最低的成本来实现业务,至于上云或者自建,都是无所谓的,时间成本才是他们最关心的.试问有几家公司能做出被 bat 觊觎的产品呢?
|
84
winson030 315 天前
学习了!搭建实验环境或者 home server 还是很不错的!不过去到生产环境能用 managed services 就用 managed services ,机器的存储、网络、硬件出问题的时候比维护服务要折腾。
|