Flex Gateway新着情報
Governance新着情報
Monitoring API Managerこのトピックでは、Anypoint Runtime Fabric をインストールするときの一般的なエラーとその解決手順について説明します。
すべての Anypoint Runtime Fabric クラスターには Anypoint コントロールプレーンとの接続が必要であり、接続が干渉されると機能が制限され、結果としてアプリケーションのデプロイメントに失敗したり、Anypoint Runtime Manager で状況が低下したりするおそれがります。
rtfctl
を使用して、Runtime Fabric に必要なアウトバウンド接続があることを確認するだけでなく、接続に関する問題をトラブルシューティングすることができます。
各ノードで、「rtfctl のインストール」の手順に従って rtfctl
をインストールします。
クラスターのすべてのコントローラーノードとワーカーノードで次のコマンドを実行し、必要なアウトバウンド接続を確認します。
rtfctl test outbound-network
サンプル出力:
[root@rtf-controller-1 runtimefabric]# ./rtfctl test outbound-network
Using proxy configuration from Runtime Fabric (proxy "", no proxy "")
Using 'US' region
transport-layer.prod.cloudhub.io:443 ✔
https://anypoint.mulesoft.com ✔
https://worker-cloud-helm-prod.s3.amazonaws.com ✔
https://exchange2-asset-manager-kprod.s3.amazonaws.com ✔
https://ecr.us-east-1.amazonaws.com ✔
https://494141260463.dkr.ecr.us-east-1.amazonaws.com ✔
https://prod-us-east-1-starport-layer-bucket.s3.amazonaws.com ✔
https://runtime-fabric.s3.amazonaws.com ✔
tcp://dias-ingestor-nginx.prod.cloudhub.io:5044 ✔
アウトバウンド接続に問題があり、Runtime Fabric が必要な Anypoint コントロールプレーンサービスのいずれかにアクセスできない場合、ネットワークチームと協力して「ポートの IP とホスト名の許可リストへの追加」で説明されているように必要なポート IP およびホスト名を許可リストに追加していることを確認してください。
init スクリプトを実行することで、インストールが失敗した時点からそのインストールを再開できます。
AWS および手動インストール:
/opt/anypoint/runtimefabric/init.sh
Azure インストール:
/opt/anypoint/runtimefabric/script.sh
まれに、Anypoint Monitoring エージェントが原因でアプリケーションがデプロイされないこともあります。このような状況では、次のいずれかの現象が発生する可能性があります。
アプリケーションが Deploying
状態のままになる
Error starting monitoring agent (code -1)
この場合、アプリケーションを再デプロイし、次のカスタムプロパティを設定します。
+
anypoint.platform.config.analytics.agent.enabled=false
Anypoint Monitoring エージェントによって、デプロイされたアプリケーションの状態が変更されることもあります。次のいずれかの現象が発生した場合、
アプリケーションが Running
から Applying
に移行
Monitoring agent has exited with code -1
これはエージェントが再起動していることを示します。実行中のアプリケーションへの影響はありません。アプリケーションメトリクスはキューに追加され、エージェントの再起動後に再度収集されます。
次のいずれかの Runtime Fabric アラートメッセージが報告された場合、1 つ以上のコントローラーノードの回復が必要になる場合があります。
Management plane is unreachable InfluxDB is down or no connection between Kapacitor and InfluxDB Node is down CRITICAL / Kubernetes node is not ready: <ip_address> CRITICAL / etcd: cluster is unhealthy
ターミナルを開き、gravity status
コマンドを実行して、クラスターおよび個々のコンポーネントの健全性状況を取得します。
ノードを回復するには、「Runtime Fabric からのノードの追加または削除」で提供されている手順に従います。
この手順では、インストールプロセスで手順を実行するために必要な変数を検出します。この変数をインストールに提供する方法は、インストールを実行する場所により異なります。
AWS の場合、変数は terraform スクリプトで設定され、/opt/anypoint/runtimefabric/env
に配置されているファイルに出力されます。
Azure の場合、変数は ARM テンプレートの実行時に設定され、仮想マシンインスタンスでタグとして取得されます。
手動インストールの場合、ユーザーが /opt/anypoint/runtimefabric/env
にある値を使用してファイルを作成します。
このプロパティを取得したら、Anypoint Platform に接続して RTF_ACTIVATION_DATA
値に基づいて追加の値を取得するための手順が実行されます。
アクティベーションデータ値に問題がある場合や、インスタンスでのインターネットアクセスに問題がある場合、次のエラーが発生することがあります。
curl: (7) Failed connect to anypoint.mulesoft.com:443; Operation now in progress Error: Failed to fetch registration properties. (000). Please check your token is valid ============ Error ============ Exit code: 1 Line:
このエラーが確認された場合、次の操作を実行してください。
インスタンスにアウトバウンドインターネット接続があることを確認します。簡単な検証方法は、次のコマンドを実行し、301 応答が返されることを確認することです。
curl https://anypoint.mulesoft.com
ネットワーク接続の初期化が完了しなかった場合は、インストール手順を再度実行します。
Azure では、スクリプトは /opt/anypoint/runtimefabric/script.sh foreground
にあります。
AWS および手動インストールでは、スクリプトは /opt/anypoint/runtimefabric/init.sh foreground
にあります。
Anypoint Runtime Manager で作成された Runtime Fabric と比較することで、 アクティベーションデータ値が正しいことを検証します。
問題が引き続き発生する場合は、サポートチケットを申請して詳細なサポートを要求してください。
この手順では、必要なパッケージをインスタンスにインストールします。yum
パッケージリポジトリを使用して、必要なパッケージのダウンロードとインストールを行います。
この手順でエラーがある場合、以下を確認します。
インスタンスにアウトバウンドインターネット接続があることを確認します。簡単な検証方法は、次のコマンドを実行し、301 応答が返されることを確認することです。
curl https://anypoint.mulesoft.com
手動インストールを実行している場合、init.sh
スクリプトがルート権限で実行されていることを確認します。
sudo ./init.sh foreground
必要なパッケージの 1 つを手動でインストールし、インストールスクリプト以外でインストールが成功するかどうかを確認します。
sudo yum install -y chrony
成功しない場合、運用チームに問い合わせて、サポートを要求してください。インスタンスへの昇格したアクセス権の要求が必要になる場合があります。
パッケージの手動インストールが成功した場合や、引き続きサポートが必要な場合は、サポートチケットを申請してください。
1 つ以上のノードの再起動後にオペレーションセンターの監視およびログの再起動に失敗した場合、すべての VM でポート転送ルールが適用されており、VM で実行されている Kubernetes ポッドにトラフィックを伝送できることを確認します。詳細は、「firewalld を使用する場合の転送の有効化」を参照してください。
この手順では、RTF_DOCKER_DEVICE
または RTF_ETCD_DEVICE
変数が提供されているブロックデバイスまたはディスクに対して次のタスクを実行します。
インスタンスで使用可能なブロックデバイスに値がマップされていることを確認するチェックを実行します。
ディスクがすでにマウントされている場合は、マウント解除します。
ディスクをフォーマットします。
マウントエントリを /etc/fstab
ファイルに追加します。
$DOCKER_MOUNT
または $ETCD_MOUNT
の値に基づいてディレクトリを作成します。
上記で作成した予期されるディレクトリにディスクをマウントします。
この手順では、Anypoint Platform に接続し、Runtime Fabric コンポーネントをクラスターにダウンロードしてインストールします。
デプロイメントが時間制限内に完了できない場合、この手順でエラーが返されることがあります。
... [OK] Installing Runtime Fabric Agent. This may take several minutes... configmap "grafana-dashboards" deleted configmap "kapacitor-alerts" deleted Release "runtime-fabric" does not exist. Installing it now. The following deployments failed to become ready within the time limit: monitor --- Name: monitor-79c7564b77-wb9c6 Namespace: rtf Node: 10.165.12.87/10.165.12.87 Start Time: Thu, 13 Dec 2018 20:23:59 +0000 Labels: app=monitor pod-template-hash=3573120633 Annotations: checksum/config=4c4aac48d9cc8b24828b38ba0eb587840bc17b2449a54d593f74e2d58e5c12ae kubernetes.io/psp=privileged seccomp.security.alpha.kubernetes.io/pod=docker/default Status: Running IP: 10.244.82.17 Controlled By: ReplicaSet/monitor-79c7564b77 Containers: ... << More information displayed that describes the deployment manifest and stack trace >>
このエラーが確認された場合、次の操作を実行してください。
アウトバウンド TCP ポート 5672 がインターネットに対して開かれていることを確認します。内部ネットワークで実行されているコントローラー VM からインターネット上のこのホスト名への接続が許可されている必要があります。
インターネットへの接続を確立するには、TCP プロキシが必要になる場合があります。必要に応じて、ネットワークチームと連携して検証と確認を行ってください。必要な情報については、ネットワークとポートの要件ページを参照してください。