このガイドでは、 ClusterConnectionStatus が Disconnected 状態のクラスターをトラブルシューティングする手順について説明します。
クラスターの場合、 ClusterConnectionStatus は、オンプレミス クラスターとクラスター マネージャーへの接続の安定性を表します。
Important
ClusterConnectionStatusは、Arc 接続 Kubernetes クラスターの正常性または接続性を表すものではなく、関連もありません。
ClusterConnectionStatusは、クラスターがハートビートの送信とクラスター マネージャーからの受信確認の受信に成功したことを示します。
[前提条件]
- 適切な CLI 拡張機能の最新バージョンをインストールします。
- Azure Operator Nexus ネットワーク ファブリック (NF) とネットワーク クラウド CLI 拡張機能コマンドを実行するためのアクセスを要求します。
- Azure CLI にサインインし、クラスターがデプロイされているサブスクリプションを選択します。
- 次の情報を収集します。
- サブスクリプション ID (
SUBSCRIPTION) - クラスター名 (
CLUSTER) - リソース グループ (
CLUSTER_RG) - マネージド リソース グループ (
CLUSTER_MRG) - BareMetal Machines (BMM) リソースがマネージド リソース グループに存在する - ライフサイクル管理操作を必要とするベアメタル コンピューター名 (
BMM_NAME)
- サブスクリプション ID (
クラスター接続状態シグナルについて
ClusterConnectionStatusは、オンプレミス クラスターがハートビートを送信し、クラスター マネージャーから受信確認を受信する機能を表し、それらの間のネットワーク接続の正常性を示します。
ClusterConnectionStatus は Arc 接続 Kubernetes クラスターの接続とは異なりますが、ネットワークの問題は両方に影響します。
ハートビートが継続的に受信および確認される場合、クラスターリソースのプロパティはClusterConnectionStatusに設定され、値はConnectedです。
クラスターが正常な状態になり、ネットワーク接続の問題が解決されると、 ClusterConnectionStatus は Connected になります。
クラスターには、TimeoutとConnectedの間の遷移状態としてのみDisconnectedが表示されます。
クラスター ClusterConnectionStatus の値は、クラスター マネージャーが継続的にハートビートを見落としたことを検出した場合に Disconnected になります。
ハートビートは、指定された時間しきい値内またはそれ以降に受信されない場合、見落とされたと見なされます。
クラスターが正常な状態であり、ネットワーク接続の問題がない場合、ClusterConnectionStatus は自動的に Connected に移動します。
クラスターのデプロイ プロセス中は、クラスターが完全にデプロイされ、運用できるようになるまで、クラスターは Undefined 状態になります。
次の表に、 ClusterConnectionStatus の使用可能な値とその定義を示します。
| ステータス | Definition |
|---|---|
Connected |
受信したハートビート。クラスターとクラスター マネージャーの正常な接続を示します |
Disconnected |
ハートビートが 5 分を超えて見落とされ、クラスター マネージャーとクラスター間の接続の問題の可能性を示します |
Timeout |
ハートビートが 2 分を超えて見落とされましたが、5 分未満です。クラスター接続が低下している可能性は不明です |
Undefined |
ハートビート機能のないバージョンがまだデプロイされていない、または実行されていないクラスター |
クラスターの ClusterConnectionStatus プロパティの値を確認する
ClusterConnectionStatusの値は、Azure portal のクラスター リソース ビューに表示されます。
または、Azure CLI を使用して、 ClusterConnectionStatusの値を確認できます。
az networkcloud cluster show \
-g "$CLUSTER_RG" \
-n "$CLUSTER_NAME" \
--subscription "$SUBSCRIPTION_ID" \
--query "{ClusterConnectionStatus:clusterConnectionStatus}" \
--output table
ClusterConnectionStatus
-------------------------
Connected
NexusClusterConnectionStatus メトリックについて
Azure Resource Health を使用して、クラスターの正常性に関するアラートを作成します。これは、リソースの状態の包括的でサポートされているビューを提供するためです。
NexusClusterConnectionStatus メトリックは、クラスターの Azure Resource Health に統合されます。
NexusClusterConnectionStatus メトリックを直接使用する場合は、その機能とそれが何を表しているかを理解します。
オンプレミス クラスターではなくクラスター マネージャーは、 ClusterConnectionStatus プロパティに基づいてメトリックを出力します。
オンプレミス クラスターで実行されているポッドは、インフラストラクチャ プロキシを介してクラスター マネージャーにハートビート メッセージを送信します。
メトリックは、すべての時系列の値 "1" を出力します。 クラスター リソースの connectionStatus が初めて設定された時点から開始します。
メトリック出力プロセスでは、"0" 値は送信されません。 グラフに表示される "0" 値は、グラフ ツールがギャップを埋めるために発生します。
状態の変化を検出するには、クラスター リソースの ClusterConnectionStatus プロパティを適宜更新するために、クラスター マネージャーの調整プロセスが必要です。
調整ループやその他の操作上の要因により、実際のハートビートの損失と Disconnected 状態を反映するメトリックの間に遅延が生じる可能性があります。
NexusClusterConnectionStatus メトリックはクラスターの正常性インジケーターとして使用されますが、調整のタイミングと運用上の制約により、状態の変更の遅延が発生する可能性があります。
タイムアウト イベントは、ハートビートが2分間のしきい値内で受信されない場合に発生する可能性がありますが、単一の正常なハートビートが受信されると、タイマーがリセットされます。
状態は、ハートビート アクティビティに基づいて、接続済み、タイムアウト、および Disconnected の間で切り替えることができます。
この画像は、 NexusClusterConnectionStatus メトリックの出力を担当するコンポーネントの一般的な表現を示しています。
ClusterConnectionStatus が Arc 接続クラスターの状態と同じではありません
クラスターの ClusterConnectionStatus と Arc 接続クラスターの状態は個別のシグナルであり、同じ意味で扱うべきではありません。
2 つの信号は関連していませんが、どちらもクラスターのネットワーク接続に依存します。
クラスターを Arc Disconnected にすることはできますが、ハートビート状態は Connected のままです。
どちらの信号もネットワーク接続に依存しますが、さまざまな目的に対応し、異なるシステムによって管理されます。
一般的な調査手順
インフラストラクチャ ネットワークの問題、マネージド ID のアクセス許可の変更、または最初は明らかではない可能性があるその他の問題は、クラスター リソースの接続状態に影響します。 次のセクションでは、トラブルシューティングに役立つ一般的な調査手順と参照について説明します。
Important
ClusterConnectionStatusは、根本原因ではなく、一般的な不安定性を示します。
このガイドでは、問題を特定したり、少なくともカスタマー サポートに役立つ情報を収集したりするのに役立つ可能性のある一般的なリソース正常性チェックを提供します。
クラスター ネットワーク ファブリックの正常性と接続性
Network Fabric コントローラー と サービス リソースから始めると便利です。 接続に影響する可能性がある ネットワーク構成 またはその他のネットワーク関連の設定を確認します。 ラックのケーブル接続、IP アドレス、DNS 設定、ルーティング規則、ファイアウォール規則など、物理ネットワークのセットアップを確認します。
Network Fabric リソースの構成済みの監視またはメトリックを評価します。 詳細については、次のリンクを参照してください。
- Nexus Network Fabric 構成の監視の概要
- Nexus Network Fabric で診断設定を構成し、構成の違いを監視する方法
- Azure Operator Nexus Network Fabric の内部ネットワーク BGP メトリック
- ネットワーク ファブリック デバイスのインターフェイスの入力および出力パケット レートを監視する方法
マネージド ID のアクセス許可に対する最近の変更
クラスター マネージャーまたはクラスターのマネージド ID アクセス許可に対する変更は、クラスター マネージャーに対するクラスターの認証機能に影響する可能性があります。
マネージド ID (MI) とそのアクセス許可は、サービス間認証に使用されます。
アクセス許可を変更すると、ハートビート メッセージの認証エラーが発生します。
ネットワーク接続が正常な場合でも、クラスターの ClusterConnectionStatus では、ハートビートが正常に受信および確認されない場合に Disconnected が表示されます。
コントロール プレーン BareMetal Machines の正常性を確認する
コントロール プレーン BareMetal Machines は、クラスター マネージャーにハートビートを出力するコンポーネントをホストします。 ほとんどの場合、コントロールプレーンで動作しているポッドは、コントロールプレーンノードプール内の別のBareMetalマシンに自動的に再スケジュールされます。 ただし、BareMetal マシンが正常でない場合、ポッドはスケジュールを変更できず、クラスターはハートビートを送信できません。
BareMetal マシンを確認するには、次のコマンドを使用します。
az networkcloud baremetalmachine list \
--resource-group "$CLUSTER_RG" \
--cluster-name "$CLUSTER_NAME" \
--subscription "$SUBSCRIPTION_ID" \
--output table
コントロールプレーンのベアメタルマシンの状態を確認します。 異常または利用できない場合は、さらに調査するか、サポートにお問い合わせください。
まだ問題が発生していますか?
説明されている手順で問題を解決するためのパスが提供されていない場合、またはまだ質問がある場合は 、サポートにお問い合わせください。 発生している問題について、関連する可能性のあるエラー メッセージやログなど、できるだけ詳しく説明してください。 これは、サポート チームがより効果的に支援するのに役立ちます。
サポート要求は 、Azure portal から開くことができます。
サポート プランの詳細については、「 Azure サポート プラン」を参照してください。