タイトルがすべてを物語っています。マスターと数人のミニオンにソルトをインストールしました。マスターには、基本的なソルトコンポーネント(ソルトミニオンを含まない)のみをインストールし、アップデートを実行しました。
ミニオンをマスターのIPに向けましたが、表示されませんでした。さらに調査したところ、その問題の理由は「ソルトマスターが実行されていない」であるように思われました。
それで、「salt-master -d」を実行して開始すると、次のようになります。
WARNING: Unable to bind socket 0.0.0.0:4505, error: [Errno 98] Address already in use; Is there another salt-master running?
The salt master is shutdown. The ports are not available to bind
「salt-master-ldebug」は私に
[DEBUG ] Reading configuration from /etc/salt/master
[DEBUG ] Configuration file path: /etc/salt/master
[WARNING ] Insecure logging configuration detected! Sensitive data may be logged.
[INFO ] Setting up the Salt Master
[WARNING ] Unable to bind socket 0.0.0.0:4505, error: [Errno 98] Address already in use; Is there another salt-master running?
[INFO ] The Salt Master is shut down
[INFO ] PIDfile could not be deleted: /var/run/salt-master.pid
[DEBUG ] Stopping the multiprocessing logging queue listener
[DEBUG ] closing multiprocessing queue
[DEBUG ] joining multiprocessing queue thread
[DEBUG ] Stopped the multiprocessing logging queue listener
別のマスターが実行されていないことは間違いありません。トップは、実際に多くのソルトプロセスが実行されていることを示しています。インターネットのアドバイスに従って、killallを試して最初からやり直しました。今回はうまくいったようですが、文字通り任意のコマンドを実行しようとすると、
[ERROR ] An un-handled exception was caught by salt's global exception handler:
KeyError: 'consul.list'
何が起こっているのかわかりません。何も機能していないため、サーバーを乾杯してすべての新規インストールを取得しようとしています。しかし、2回目も変わらないのではないかとこっそり疑っています。
マスターは、Py3バージョンのSaltStackを使用して、Ubuntu18.04サーバーを実行しています。
私が見つけたSaltStackトラブルシューティングドキュメントの検索:
マスターの場合、TCPポート4505と4506を開く必要があります。Saltマスターとミニオンの両方をデバッグモードにしていて、ミニオンが接続したという確認応答が表示されない場合は、接続を妨害しているファイアウォールである可能性が非常に高いです。
ファイアウォールルールは/etc/ufw/applications.d/salt.ufw
にあり、ufw allow salt
で有効にできます。