AWS環境におけるEC2間での通信について
-
正式なコメント
フィックスポイントの高橋です。
kompira ジョブマネージャは kompira エンジンに対して AMQP というプロトコルで接続しますが、このとき SSL の使用設定によって、5671 番ポート (SSL) または 5672 番ポート (非SSL) を用います。
当該バージョンではデフォルト SSL 接続が有効で 5671 番ポートで接続するようになっているはずで、「エンジン側では5671のポートがLISTENされており」とのことから問題ないように見受けられます。
kompira ジョブマネージャを動作させたいホスト上で、以下のコマンドを実行してみてください。${KOMPIRA_IP} の部分は kompira エンジンを動作させているサーバのIPアドレスに置き換えてください。
$ openssl s_client -connect ${KOMPIRA_IP}:5671 < /dev/nullこのコマンドを実行して、接続に成功してSSL証明書の情報と最後に DONE と表示されていれば、サーバ間の接続性は問題ないはずです。もし接続に失敗するようでしたら、EC2 のネットワーク設定を見直してみてください。
次に、ジョブマネージャ側の設定としては、「ジョブマネージャー側のkompira.confでは エンジンのipアドレスとポート5671」を設定されているとのことですが、合わせて [amqp-connection] セクションに「ssl = true」という設定もなされているかご確認ください。
一方、「サブドメイン名を定義している」と書かれていますが、こちらはどのような設定内容を示しておられますでしょうか?(もしも、[agent] セクションの name の設定のことであれば、これはドメイン名の設定項目ではないので一旦デフォルトの "default" に戻してみてください)
上記で解決しない場合、kompira.conf の設定内容を張り付けてみていただけますでしょうか。
コメントアクション -
フィックスポイント
高橋様お世話になっております。
ご回答ありがとうございます。・opensslコマンドの結果ですが、問題ありませんでした。
・ジョブマネージャ側のkompira.conf ですが、[amqp-connection] セクションに「ssl = true」が設定されております。
・「サブドメイン名を定義している~」につきましては、
ジョブマネージャ側のkompira.conf において、agentセクションのnameの設定として、
default から別名に変更する事で、kompira web の設定→管理領域設定で、
別名に指定したnameが表示される認識でした。<エンジン側_kompira.conf>
[kompira]
site_id = 1[amqp-connection]
server = localhost
ssl = true
ssl_verify = false[event]
channel = /system/channels/Alert[agent]
name = default<ジョブマネージャ側_kompira.conf>
[kompira]
site_id = 1[amqp-connection]
server = 10.10.xx.xx
port = 5671
ssl = true
ssl_verify = false[event]
channel = /system/channels/Alert[agent]
name = test-name実現したい事としましては、上述の通り、
kompira web の設定→管理領域設定にて、ジョブマネージャのkompira.confで
指定したnameを認識させたいです。以上です、よろしくお願いいたします。
-
フィックスポイントの高橋です。
早速のご確認ありがとうございます。
default から別名に変更する事で、kompira web の設定→管理領域設定で、
別名に指定したnameが表示される認識でした。管理領域については事前に Kompira サーバ側で作成しておく必要がございます。ブラウザで「管理領域設定」画面にて、名称に「test_name」などと入力して新しい管理領域オブジェクトを作成してください。
このとき名称には Kompira オブジェクトとして指定できる形式に限られるため "-" などは使えないことにご注意ください。よって、ここでは例えば「test_name」としています。
また、管理対象の「対象範囲」には "*" を追加しておいてください(任意のリモートホスト名にマッチします)。
その上で、管理領域の名称に合わせて、ジョブマネージャ側の kompira.conf の [agent] セクションの name を設定して、kompira_jobmngrd を起動しなおしてみてください。
kompira_jobmngrd を再起動したのちに、ブラウザで管理領域設定の当該管理領域オブジェクトを確認してみてください。「ジョブマネージャ状態」に別サーバで動作させた kompira_jobmngrd が表示されていれば、正常に kompira エンジンと接続できていることが分かります。
なお、複数の管理領域に分けていて、リモートコマンド実行時などに接続元となる kompira_jobmngrd を(デフォルト以外に)指定したいときは、ジョブフローにて制御変数 __realm__ で名称を指定するようにしてください。
[__realm__ = "test_name"] ->
[__node__ = ...
サインインしてコメントを残してください。
コメント
4件のコメント