概要
このドキュメントでは、CloudCenter Manager(CCM)でカスタム証明書を設定した後に、新しいCloudCenter Orchestrator(CCO)をセットアップしたときに表示されるエラーについて説明します。
前提条件
要件
次の項目に関する知識があることが推奨されます。
使用するコンポーネント
このドキュメントの情報は、4.8.0+に基づくものです。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、初期(デフォルト)設定の状態から起動しています。対象のネットワークが実稼働中である場合には、どのようなコマンドについても、その潜在的な影響について確実に理解しておく必要があります。
問題
Orchestratorを設定すると、「Error while communicating with Orchestrator」というエラーメッセージが表示されます。 図に示すように
CCMの浸透圧ログを確認すると、このエラーが発生します。
VENDOR_ID::1::USER_ID::2::2017-11-06 15:06:29,103 ERROR impl.GatewayServiceImpl [http-apr-10443-exec-17] - Activate gateway exception message: I/O error on POST request for "https://34.228.91.179:8443/service/v1/gateway/config/activate":sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target; nested exception is javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
org.springframework.web.client.ResourceAccessException: I/O error on POST request for "https://34.228.91.179:8443/service/v1/gateway/config/activate":sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target; nested exception is javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
Caused by: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
解決方法
これは、CCOとCCMの間の証明書の不一致が原因で発生します。
CCM設定ウィザードを使用してCCM上の証明書を作成した場合は、次の手順を実行します。
ステップ1:CCMの/tmpディレクトリに作成されたcerts.zipフォルダをCCOにコピーし、/usr/local/cliqr/bin/cco_config_wizard.shにあるCCO構成ウィザードに入ります。
ステップ2:図に示すように[Config_Certs]を選択します。
ステップ3:certs.zipフォルダへのパスを入力します。
これにより、関連する証明書が自動的にコピーされ、必要なファイルが更新され、その証明書が参照されます。
CCM証明書を手動で作成した場合は、次の手順を実行します。
ステップ1:CCMの証明書、キー、および認証局の証明書をCCOにコピーし、/usr/local/tomcat/conf/ssl/ディレクトリに配置します。
ステップ2:/usr/local/tomcat/conf/server.xmlを更新します。
- <Connector port="8443" maxHttpHeaderSize="8192"で始まるセクションを見つけます。
- SSLCertificateFile、SSLCertificateKeyFile、およびSSLCACertificateFileを更新して、図に示すように、コピーした新しいファイルを指し示します。
ステップ3:サーバを再起動するには、コマンドservice tomcat stop、service tomcat startを実行し、続いてservice tomcat startを実行します。
これで、CCMとCCOの間の接続が可能になりました。