如何提高 Ansible 的性能

2017-09-28 16:11:18 +08:00
 shallyy

使用 threading 开多线程效果不佳,multiprocessing 也有问题,请问各位有何经验

1966 次点击
所在节点    问与答
3 条回复
ywgx
2017-09-28 16:23:54 +08:00
你需要的是 salt 😄
octopus_new
2017-09-28 16:35:11 +08:00
我觉得这个没有什么太好的解决办法。如果瓶颈是网络的话,多线程或者多进程没办法解决问题。Ansible 无客户端模式并不是特别合适特别大的环境。你可以拆分 Ansible 的任务分配到不同的安装了 ansible 的“ worker ”上,或者用 ansible 的 pull mode。Pull mode 基本上和 chef 或者 puppet 就没什么本质区别了,需要安装“ client ”。
我以前写了一个给 ansible 用的 api,在 AWS 上用 userdata 发送 instance 的信息给 ansible,一旦 instance ready,ansible 就会开始工作。这个只是给初始化环境或者 autoscaling group 用的。如果是 app 在已有环境上升级依然没啥用,因为逃离不了网络瓶颈。
cxbig
2017-09-29 17:12:35 +08:00
纯客户端的模式,网络质量是关键。
我们都是把脚本放内网独立的部署机器里跑的。

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

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

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

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

© 2021 V2EX