国内的 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 ![]() 做生意: 管他什么平台什么流程,先上线看看用户反馈再说,搞量搞内容第一位 做技术:管他什么用户什么业务,先把运维搞完美 |
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 ![]() 代码管理那一陀,可以用 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 ![]() 我司现在大约 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 PRO 呃 看了半天才明白想表达什么 . 简单来说就是你被某些平台封号了 然后自己摘了些开源工具搭了一个差不多可以自用的. 动手能力 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 2023-12-31 02:00:25 +08:00 学习了!搭建实验环境或者 home server 还是很不错的!不过去到生产环境能用 managed services 就用 managed services ,机器的存储、网络、硬件出问题的时候比维护服务要折腾。 |