Saltstack-orchestration
提供:Dev Guides
SaltStack-オーケストレーション
一般に、*オーケストレーション*は、システムの自動調整および配置です。 Orchestrateランナーは、SaltStackでオーケストレーションを実行するために使用されます。
オーケストラランナー
Orchestrate Runnerは、 OverState (以前のシステム)のすべての機能を提供します。 元は state.sls ランナーと呼ばれます。 このオーケストレートランナーは、ソルト状態システムをソルトマスターコンテキストに一般化するために使用されます。
*state.sls* および *state.highstate* 関数は各Saltミニオンで実行されますが、 *state.orchestrate* ランナーはマスターで実行されます。 *state.orchestrate* ランナーを使用すると、インフラストラクチャ全体を状態として完全に管理できます。 簡単な実行プロセスを実行する方法を理解しましょう。
簡単な実行
Orchestrate Runnerコマンドは state.sls 関数と同じですが、saltの代わりに「salt-run」を使用して実行できます。
*/srv/salt/orch/samples.sls* にある *sample.sls* ファイルがあると仮定します。 そのファイルに次のコードを追加します。
*sample.sls*
install_nginx:
salt.state:
- tgt: 'web*'
- sls:
- nginx
次のコマンドは、マスターで実行するために使用され、そのファイルで定義された状態を適用します。
salt-run state.orchestrate orch.sample
次の output が生成されます-
saltmaster.local_master:
----------
ID: install_nginx
Function: salt.state
Result: True
Comment: States ran successfully.
Started: 11:54:56.308078
Duration: 63.401 ms
Changes:
Summary for saltmaster.local_master
------------
Succeeded: 1
Failed: 0
------------
Total states run: 1
Total run time: 63.401 ms
root@saltmaster:/home/vagrant#
ここで、現在のバージョンによると、ランナー関数は state.orchestrate に名前が変更されました。 これは、state.sls実行関数との混乱を避けるために役立ちますが、 state.sls の以前のバージョンを使用する必要があります。
関数を実行する
関数を実行するには、 salt.function を使用する必要があります。 /srv/salt/orch/data.sls にある data.sls ファイルについて考えます。 次に、そのファイルに次の変更を追加します。
*data.sls*
cmd.run:
salt.function:
- tgt: '*'
- arg:
- rm -rf/tmp/data
次のコマンドを使用して、Salt関数を実行します。
root@saltmaster:/home/vagrant# salt-run state.orchestrate orch.data
次の output が生成されます-
saltmaster.local_master:
----------
ID: cmd.run
Function: salt.function
Result: True
Comment: Function ran successfully. Function cmd.run ran on minion1, minion2.
Started: 12:14:54.791635
Duration: 234.615 ms
Changes:
minion1:
minion2:
Summary for saltmaster.local_master
------------
Succeeded: 1 (changed = 1)
Failed: 0
------------
Total states run: 1
Total run time: 234.615 ms