SaltStack-ファイルサーバーとしてMinionFSを使用
ザ・ MinionFSミニオンがミニオン間でファイルを交換するためにSaltが提供する特別なファイルサーバーです。MinionFSによって提供されるファイルは、ミニオンによって意図的に共有されるファイルです。ファイルを共有するには、ミニオンは以下の手順に従う必要があります。
ソースミニオンは、を使用してファイルをソルトマスターにプッシュする必要があります cp.push 関数。
ファイルがソースミニオンによってプッシュされると、展開されたファイルは、MinionFSファイルサーバーを使用して他のミニオンからアクセスできます。
プッシュを有効にする
デフォルトでは、ミニオンによるファイルのマスターへのプッシュは無効になっています。ミニオンからファイルを受け入れるには、マスターの構成ファイルに「file_recv」オプションがあり、その値を次のように設定する必要があります。True。デフォルトでは、「file_recv」の場合の値はfalse。
file_recv: True
オプションを有効にしたら、マスターサービスを再起動します。
ファイルのプッシュ
ミニオンはファイルをマスターにプッシュできます。それはによって実行されますcp.push関数。このcp.push関数は、ミニオンIDを使用してミニオンごとにファイルをプッシュする簡単なメカニズムを提供します。
salt 'minion-id' cp.push /path/to/the/file
ここで、minion-idは、どのミニオンがファイルをプッシュしているかを識別するために使用されます。このコマンドは、ファイルをという名前のサブディレクトリに保存しますminions 下 master's cachedir。通常、パスは– / var / cache / salt / master / minionsです。
ミニオンの場合、 m1 およびファイル– /var/log/mylog.txt、ファイルは– / var / cache / salt / master / minions / m1 / var / log / mylog.txtに保存されます。
MinionFSを有効にする
MinionFSを有効にするには、単に追加します minion 次のコードブロックに示すように、ファイルサーバーのバックエンド設定で。
fileserver_backend:
- roots
- minion
MinionFSを有効にすると、ミニオンプッシュファイルは次のように使用できます。
salt://<minion-id>/path/to/pushed/file
ミニオンの場合、 m1 プッシュされたファイル– /var/log/mylog.txt、プッシュされたファイルはsalt://m1/var/log/mylog.txtから提供されます。
このminionFSは、次の構成を使用して特別なディレクトリにマウントできます。minionFSファイルを他のファイルから分離し、ミニオンファイルの整理に役立ちます。
minionfs_mountpoint: salt://minionfs
上記の構成の場合、ファイルは minionfs ディレクトリとして– salt://minionfs/m1/var/log/mylog.txt
MinionFSの詳細オプション
MinionFSには、特定のミニオンからプッシュされたファイルの可用性を有効/無効にするオプションもあります。オプションは次のとおりですminionfs_whitelist、ミニオンを有効にし、 minionfs_blacklist、ミニオンを無効にします。
minionfs_whitelist:
- webserver
- develop*
- ‘mail\d+.mysite.com'
minionfs_blacklist:
- testing
上記の構成では、を除くすべてのミニオン testing minionFSを使用してファイルを共有できます。
Webserver1
IDが正規表現と一致するミニオンが開発されます*
IDが正規表現と一致するミニオン mail\d+.mysite.com。
Testing
次の章では、CronとSaltの使用方法を学習します。