📜  SaltStack-使用MinionFS作为文件服务器

📅  最后修改于: 2020-10-31 14:23:54             🧑  作者: Mango


MinionFS是Salt所提供的特殊文件服务器,用于Minions在它们之间交换文件。 MinionFS提供的文件是Minions有意共享的文件。要共享文件,Minion必须遵循以下步骤。

  • 源小黄人必须使用cp.push函数将文件推送到盐主服务器

  • 一旦文件被源minion推送,其他Minion便可以使用MinionFS文件服务器访问已部署的文件。

启用推送

默认情况下,禁止将小兵将文件推送到主文件。要从小兵那里接收文件,主服务器需要在配置文件中具有“ file_recv”选项,并且其值必须设置为True 。默认情况下,如果“ file_recv”为false的值。

file_recv: True

启用该选项后,重新启动主服务。

推送文件

奴才可以将文件推送到主服务器。它由cp.push函数执行。此cp.push函数提供了一种简单的机制,可使用minion id按minion推送文件。

salt 'minion-id' cp.push /path/to/the/file

在此,minion-id用于标识哪个minion正在推送文件。此命令会将文件存储在主目录的cachedir下名为minions的子目录中。通常,路径为– / var / cache / salt / master / minions。

对于minion, m1和文件– /var/log/mylog.txt,该文件将存储在– /var/cache/salt/master/minions/m1/var/log/mylog.txt中。

启用MinionFS

为了使MinionFS,只需在文件服务器的后端设置为显示在下面的代码块添加仆从

fileserver_backend:
   - roots
   - minion

启用MinionFS后,将奴才推入的文件用作-

salt:///path/to/pushed/file

对于minion, m1和推送文件– /var/log/mylog.txt,推送文件将从salt://m1/var/log/mylog.txt提供。

可以使用以下配置将此minionFS挂载在特殊目录中。它将minionFS文件与其他文件分开,并有助于组织minion文件。

minionfs_mountpoint: salt://minionfs

对于上述配置,该文件将在minionfs目录下提供,例如– salt://minionfs/m1/var/log/mylog.txt

MinionFS高级选项

MinionFS还提供了一个选项,用于启用/禁用来自某个奴才的推送文件的可用性。选项是minionfs_whitelist ,以启用minionsminionfs_blacklist ,以禁用minions

minionfs_whitelist:
   - webserver
   - develop*
   - ‘mail\d+.mysite.com'

minionfs_blacklist:
   - testing

在上述配置中,允许除测试以外的所有奴才使用minionFS共享文件。

  • 网络服务器1

  • ID匹配正则表达式的爪牙会发展*

  • ID与正则表达式mail \ d + .mysite.com匹配的奴才

  • 测试中

在下一章中,我们将学习如何将Cron与Salt一起使用。