Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

単一クラスタContrailの管理

概要 単一のクラスター・インストールまたはマルチクラスター・インストールの特定のクラスター内でライフ・サイクル管理タスクを実行する方法について説明します。

概要

ContrailがCNIプラグインの場合、Kubernetesクラスタを管理する方法は変更されません。Contrail をインストールすると、Contrail コンポーネントは Kubernetes コンポーネントとシームレスに連携し、ネットワーク インフラストラクチャを提供します。

Contrail コントローラは、クラスタ イベントが発生すると常に監視し、クラスタ イベントに反応します。新しいノードを追加すると、Contrail のデータ プレーン コンポーネントが自動的に導入されます。ノードを削除すると、Contrail コントローラはそのノードに関連付けられたネットワーク リソースを自動的に削除します。Contrailは、kubectlやPrometheusやGrafanaなどの他のツールとシームレスに連携します。

Kubernetes クラスタで一般的なタスクを実行する方法の例については、「付録」を参照してください。これらの例は Contrail に特化したものではありません。また、保証はありません。

この章の残りの部分では、Contrail に固有のタスクについて説明します。

Contrailのアップグレード

Contrail をアップグレードするには、次の手順を実行します。

Contrailコントローラは、展開とステートフルセットで構成されており、これはローリングアップデート用に設定されています。アップグレード中、各 Deployment および StatefulSet のポッドは 1 つずつアップグレードされます。その導入またはステートフルセット内の残りのポッドは引き続き動作します。これにより、Contrailコントローラのアップグレードがヒットレスになります。

Contrailデータプレーンは、1つのvRouterポッドを持つデーモンセットで構成されています。アップグレード手順中は、この単一ポッドはダウンしてアップグレードされます。このため、Contrailのデータプレーンのアップグレードはヒットレスではありません。必要に応じて、アップグレードを実行する前に、アップグレード対象のノードからトラフィックを移行します。

Contrail ソフトウェアをアップグレードするには、既存のマニフェストの内容を新しいマニフェストに移植し、新しいマニフェストを適用します。Contrail マニフェストはすべて、同じソフトウェア バージョンを参照する必要があります。

  1. 新しいリリースのマニフェストをダウンロードしてください。
  2. 既存の Contrail インストールの作成に使用した(古い)マニフェストを探します。この手順では、single_cluster_deployer_example.yaml であると見なします。
  3. 古いマニフェストから新しいマニフェストに変更がある場合は、ポートオーバーします。
    新しいマニフェストには、新しいリリースに固有の構成要素を含めることができます。古いマニフェストに加えたすべての変更を識別し、新しいマニフェストにコピーします。これには、リポジトリ認証情報、ネットワーク構成の変更、その他のカスタマイズが含まれます。
    メモ:

    ノード数が多い場合は、ノードセレクターを使用して、管理しやすい番号にアップグレードをグループ化します。

  4. Contrail をアップグレードする。

    各導入およびステートフル セットのポッドは、1 つずつアップグレードされます。vRouter DaemonSet がダウンして、元に戻ります。

  5. 標準の kubectl コマンドを使用してアップグレードを確認します。

    ノードのステータスを確認します。

    ポッドのステータスを確認します。

    一部のポッドがダウンしたままの場合は、通常通りインストールをデバッグします。コマンドを kubectl describe 使用して、ポッドが立ち上がらない理由を確認します。ノードがジュニパーネットワークスリポジトリに到達できなくなるネットワークまたはファイアウォールの問題があります。

Contrailのアンインストール

Contrail をアンインストールするには、次の手順に従います。

Contrail 名前空間に関連付けられた Contrail リソースをアンインストールするスクリプトを提供します。スクリプトは以下を削除します。

  • その名前空間に属するcontrail名前空間とリソース
  • contrail-system 名前空間とその名前空間に属するリソース
  • その名前空間に属するcontrail-deploy名前空間とリソース
  • default-global-vrouter-config と default-global-system-config
メモ:

Contrail コンポーネント間には相互依存関係があるため、Contrail コンポーネントを個別に削除しないでください。提供されたスクリプトは、Contrail コンポーネントを正常にアンインストールし、適切なシーケンスで実行します。

  1. Contrail Analytics をインストール済みの場合は、今すぐアンインストールしてください。アンインストール スクリプトは、上記以外の名前空間のリソースをアンインストールしません。

    Contrail 分析をアンインストールするには、リリース 22.2 以降の Contrail 分析をインストールするのステップ 6 を参照してください。

  2. Contrail をインストールした後に作成した他のリソースと名前空間(オーバーレイ ネットワークなど)を削除します。
  3. ダウンロードした Contrail マニフェストおよびツール パッケージからアンインストール スクリプトを見つけて抽出します。
  4. スクリプトを実行して Contrail をアンインストールします。抽出したアンインストール ディレクトリからスクリプトを実行する必要があります。

    アンインストールは、数分後に完了する必要があります.

    スクリプトが完了しない場合は、と入力 <CTRL> c してアンインストールを停止します。

    1 つ以上の名前空間が終了状態でスタックしている可能性があります。名前空間を確認するには、

    ステータスが[終了]の名前空間が表示された場合は、その名前空間に関する詳細な情報を取得します。

    アンインストールをブロックするものを確認するには、出力の 条件 セクションを参照してください。例えば:

    この出力例では、問題は API サービスです。利用できないAPIサービスをご覧ください。

    これらのAPIサービスを誤った可用性で削除します。

    アンインストール スクリプトを再実行してください。スクリプトを実行したときに既に削除されているリソースを削除しようとすると、エラーが発生する可能性があります。例えば: