Polyspace Access ETL サービスと Web Server サービスが開始しない
問題
Polyspace® Access™ サービスを開始してしばらくすると、[ETL] サービスと [Web Server] サービスが停止する。Polyspace Access への接続を試行すると、Web ブラウザーに HTTP 403 エラー メッセージが表示されることがあります。
考えられる原因: Hyper-V ネットワーク構成でローカル ホスト名を解決できない
Windows® で Polyspace Access をバーチャル マシン (VM) 内部にインストールしている場合、その VM は Hyper-V により管理されます。ネットワーク構成によっては、Hyper-V がローカル ホスト名を解決できないことがあります。[Polyspace Access ETL] サービスと [Polyspace Access Web Server] サービスは、これらのホスト名を使用して指定したホストに接続できません。
インターネットに接続しているマシンで Hyper-V がホスト名 myHostname を解決できるかどうかをテストするには、コマンド ラインで以下を入力します。
docker run --rm -it alpine ping myHostname
解決法
--hostname オプションを使用せずに admin-docker-agent バイナリを停止してから再始動します。
信頼できるネットワークに接続している場合、または HTTPS プロトコルを使用しない場合は、次のようにします。
コマンド ラインに以下を入力します。
docker stop admin admin-docker-agent --restart-gateway
[Cluster Admin] Web インターフェイスで [Restart Apps] をクリックします。
HTTPS プロトコルを使用する場合は、サービスが実行されているクラスター オペレーター ノードの IP アドレスを含むサブジェクト代替名 (SAN) を使用して証明書を生成します。
この構成ファイルをテキスト エディターにコピーし、
openssl.cnfという名前でマシンに保存します。hostNameは、Polyspace Access をホストするサーバーのホスト名です。fullyQualifiedDomainNameは、対応する完全修飾ドメイン名です。nodeIPAddressは、admin-docker-agentバイナリを実行するノードの IP アドレスです。openssl.cnfの[ req_distinguished_name ]セクション内の他のフィールドの値を編集する必要はありません。これらのフィールドの値を更新しても、構成には影響しません。[Cluster Dashboard] の [Configure Nodes] をクリックします。[Hostname] フィールドにリストされている IP アドレスは、
openssl.cnfファイルのnodeIPAddressに対応しています。複数のノードがリストされている場合は、openssl.cnfの[ alt_names ]セクションに IP アドレスごとに行を追加します。以下に例を示します。[ alt_names ] DNS.1 = hostName DNS.2 = fullyQualifiedDomainName IP.1 = nodeIPAddress IP.2 = additionalNodeIPAddress
openssl.cnf構成ファイルを使用して証明書署名要求 (CSR) を生成します。コマンド ラインで、以下を入力します。このコマンドにより、秘密鍵ファイルopenssl req -new -out myReqest.csr -newkey rsa:4096 \ -keyout myKey.key -nodes -config openssl.cnf
myKey.keyとファイルmyRequest.csrが出力されます。署名付き証明書を生成するには、次のようにします。
組織の認証機関を使用している場合は、
myRequest.csrを認証機関に送信します。認証機関はこのファイルを使用して、署名付きサーバー証明書を生成します。たとえば、server_cert.cerです。自己署名証明書を使用している場合は、コマンド ラインで以下を入力します。
このコマンドにより、自己署名証明書openssl x509 -req -days 365 -in myRequest.csr -signkey myKey.key \ -out self-cert.pem -extensions v3_req -extfile openssl.cnf
self-cert.pemが出力されます。
以下のコマンドで
admin-docker-agentバイナリを停止してから再始動します。Windows PowerShell ./admin-docker-agent --restart-gateway ` --ssl-cert-file certFile1 ` --ssl-key-file keyFile ` --ssl-ca-file trustedStoreFile
Linux® ./admin-docker-agent --restart-gateway \ --ssl-cert-file certFile1 \ --ssl-key-file keyFile \ --ssl-ca-file trustedStoreFile
certFile1は、手順 4 で取得したファイルの絶対パスです。keyFileは、手順 3 で生成したファイルです。trustedStoreFileは、自己署名証明書を使用していた場合に手順 4 で生成したファイルです。それ以外の場合は HTTPS の構成に使用するトラスト ストア ファイルです。Polyspace Access で HTTP と HTTPS のどちらの構成を使用するかを選択するを参照してください。変更内容を保存します。[Cluster Admin] Web インターフェイスで [Restart Apps] をクリックします。
