如何使用 SaltStack 管理应用程序二进制文件?
How can I manage application binaries using SaltStack?
我想让 Salt 管理我的应用程序二进制文件,这些二进制文件将托管在每个 minion 上。如果可能的话,我希望 Salt:
- 确保我的程序始终运行
- 从主服务器拉取最新的二进制文件(但允许为特定的 minions 选择应用程序版本)
- 不必在 minions 上托管源代码
使用 Salt 执行此操作的最佳方法是什么?到目前为止,我已经考虑过让 Salt 通过 file.managed
状态将二进制文件作为常规文件进行管理,或者创建一个 debian 包并让 Salt 通过 pkg
模块管理应用程序,或者使用 docker
模块(尽管我所有的 minions 都是相同的,所以使用 Docker 似乎有点矫枉过正)。是否有标准或 "best-practice" 方式让 Salt 管理我的应用程序?
我们创建 deb pkg 并像管理其他包一样管理它们。你可以很容易地用盐设置你自己的回购位置。
myrepo-custom:
pkgrepo.managed:
- key_url: https://myrepo.com/custom.gpg.key
- name: deb https://myrepo.com/ trusty main
我想让 Salt 管理我的应用程序二进制文件,这些二进制文件将托管在每个 minion 上。如果可能的话,我希望 Salt:
- 确保我的程序始终运行
- 从主服务器拉取最新的二进制文件(但允许为特定的 minions 选择应用程序版本)
- 不必在 minions 上托管源代码
使用 Salt 执行此操作的最佳方法是什么?到目前为止,我已经考虑过让 Salt 通过 file.managed
状态将二进制文件作为常规文件进行管理,或者创建一个 debian 包并让 Salt 通过 pkg
模块管理应用程序,或者使用 docker
模块(尽管我所有的 minions 都是相同的,所以使用 Docker 似乎有点矫枉过正)。是否有标准或 "best-practice" 方式让 Salt 管理我的应用程序?
我们创建 deb pkg 并像管理其他包一样管理它们。你可以很容易地用盐设置你自己的回购位置。
myrepo-custom:
pkgrepo.managed:
- key_url: https://myrepo.com/custom.gpg.key
- name: deb https://myrepo.com/ trusty main