请教一个批量管理 nginx 的实践

2023-06-20 08:30:43 +08:00
 dreamramon
手上有 n 台 nginx 要管理,主要是作为反代。。。现在的应用场景:
一个应用前面有 30 个 nginx ,然后每个 ng 主要是反代不同的规则,现在业务变化要变更,就需要手工登陆上去,一个一个改,改完了 reload ,不知道大家有没有什么更好的方案可以集中式管理,或者通过 api 批量更新的。。。
注:因为不同的机房,没有上 k8s 。。。
2984 次点击
所在节点    问与答
26 条回复
Trim21
2023-06-20 08:34:38 +08:00
你原本这么原生态都能接受,那我建议你本地改完了 rsync 上去,然后 ssh user@host sudo nginx -s reload…
v0ker
2023-06-20 08:39:25 +08:00
我们是在 git 上统一管理,配置更新之后上传到仓库,再到机器上拉取代码
datoujiejie221
2023-06-20 08:40:20 +08:00
ansible 一把梭
beshe
2023-06-20 08:58:17 +08:00
git 管理版本,jenkins 负责部署
ik
2023-06-20 09:04:39 +08:00
没有不同主机上同一个 server_name:port 对应不同业务的情况,就维护一整套配置文件,所有主机同步就行?
sdwgyzyxy
2023-06-20 09:07:30 +08:00
kong ?
lazyfighter
2023-06-20 09:10:27 +08:00
在阿里基于 camel 开发过一版, 我们当时还有 lua 的跨机房路由,青春呀,具体直接 github ,大众点评开源的
cominghome
2023-06-20 09:22:24 +08:00
1. 起一个仓库管理 nginx conf 目录
2. 通过 rsync 或者 ansible 分发配置,reload nginx
msywkylemon
2023-06-20 09:47:03 +08:00
Nginx Proxy Manager? 不知道是不是楼主需要的
https://nginxproxymanager.com/
yufeng0681
2023-06-20 10:11:53 +08:00
写脚本,探测哪个 nginx 的配置修改了,自动进行升级部署
dolphintwo
2023-06-20 10:19:06 +08:00
ansible 一把梭
johz
2023-06-20 11:01:03 +08:00
APISIX
直接在 web 控制台上管理
wonderblank
2023-06-20 11:04:41 +08:00
ansible 一把梭
IDAEngine
2023-06-20 11:08:46 +08:00
Jenkins 批量部署
ytmsdy
2023-06-20 11:13:38 +08:00
丢到 Github 上,做个 Action 。发现有 merge 到 main 分支的话,直接触发 action ,全部重新更新一遍。
onetown
2023-06-20 11:46:36 +08:00
ansible 来管理配置和分发吧, 代替你手工修改
huangzxx
2023-06-20 11:47:19 +08:00
ansible 一把梭
dylanninin
2023-06-20 15:53:32 +08:00
ansible 一般就够了
zcl0621
2023-06-20 16:26:18 +08:00
之前做了个工具 ansible 负责推 nginx 配置和 reload
在网页上编辑和修改配置 管理服务器的密钥地址啥的 管理 nginx 的配置文件等等
然后一键执行
感觉挺符合你的要求的。。。 不过项目代码早就没了 都快 5 年了
surfwave
2023-06-20 18:25:33 +08:00
ansible 一把梭

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

https://www.v2ex.com/t/950169

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

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

© 2021 V2EX