すべてのプロダクト
Search
ドキュメントセンター

Container Service for Kubernetes:同じリージョンのクラスター間でアプリケーションを移行する

最終更新日:Dec 11, 2024

バックアップセンターを使用して、同じリージョン内のKubernetesクラスターのアプリケーションをバックアップおよび復元できます。 これにより、Kubernetesクラスターのバックアップとディザスタリカバリを実装できます。

前提条件

  • ボリュームが復元されるクラスターが作成されます。 Elastic Compute Service (ECS) インスタンスのスナップショットを使用してディスクデータを復元できるようにするには、Kubernetesバージョンのクラスターを1.18以降に更新することを推奨します。 詳細については、「ACK管理クラスターの作成」「ACK専用クラスターの作成」、または「クラスター登録プロキシの作成とデータセンターにデプロイされたKubernetesクラスターの登録」をご参照ください。

    重要
    • 復元クラスターでは、Container Storage Interface (CSI) プラグインを使用する必要があります。 FlexVolumeを使用するクラスター、またはcsi-compatible-controllerとFlexVolumeを使用するクラスターでは、アプリケーションの復元はサポートされません。

    • バックアップセンターは、アプリケーションのバックアップと復元に使用されます。 復元タスクを実行する前に、復元クラスターにシステムコンポーネントをインストールして構成する必要があります。 例:

      • aliyun-acr-credential-helper: 復元クラスターにアクセス許可を付与し、acr-configurationを設定する必要があります。

      • alb-ingress-controller: ALBConfigを設定する必要があります。

    image
  • バックアップコンポーネントがインストールされ、ボリュームがバックアップされたクラスターとボリュームが復元されたクラスターに権限が付与されます。 詳細については、「migrate-controllerのインストールと権限の付与」をご参照ください。

同じリージョンのACKクラスター間でWordPressアプリケーションを移行する

復元タスクを実行すると、復元クラスターのリソースのAPIバージョンが自動的に推奨バージョンに変更されます。 たとえば、Kubernetes 1.16を実行するクラスターでAPIバージョンがextensions/v1beta1であるデプロイは、Kubernetes 1.28を実行するクラスターで復元されると、自動的にapps/v1に変更されます。 バックアップセンターを使用して古いKubernetesバージョンを実行するACKクラスターでアプリケーションを移行する方法の詳細については、「バックアップセンターを使用して古いKubernetesバージョンを実行するACKクラスターでアプリケーションを移行する」をご参照ください。

この例では、Cluster_AとCluster_Bが中国 (フフホト) リージョンに作成されます。 Cluster_Aで実行されるアプリケーションがバックアップされます。 次に、アプリケーションのバックアップファイルを使用して、Cluster_Bのアプリケーションを復元します。

KubernetesクラスターにWordPressアプリケーションをデプロイし、WordPress Webサイトにブログ投稿を公開します。 ディスクを使用してテキストコンテンツを保存し、NASファイルシステムを使用して画像をブログ投稿に保存します。 このように、ディスクボリュームとNASボリュームの両方を使用してアプリケーションデータが保存されます。 バックアップセンター機能を使用して、バックアップクラスターでWordPressアプリケーションをバックアップします。 次に、アプリケーションとアプリケーションのデータを復元クラスターに復元し、データとアプリケーションの整合性を検証します。

手順

  1. Container Service for Kubernetes (ACK) マネージドクラスターCluster_A (バックアップクラスター) およびCluster_B (リストアクラスター) を作成します。

    説明

    ECSインスタンスのスナップショットを使用してディスクデータを復元できるようにするには、KubernetesバージョンのCluster_Bを1.18以降に更新することを推奨します。

  2. Cluster_AにWordPressアプリケーションをインストールします。 詳細については、「Helmを使用したWordPressアプリケーションのデプロイ」をご参照ください。

  3. Cluster_Aにmigrate-controllerコンポーネントをインストールし、権限を付与します。 コンポーネントのインストール時にバックアップコンテナーを作成します。

    migrate-controllerのインストール方法の詳細については、「migrate-controllerのインストールとアクセス許可の付与」をご参照ください。 migrate-controllerをインストールすると、システムは自動的にバックアップボールトを検索します。 既存のバックアップコンテナーがある場合は、別のバックアップコンテナーを作成する必要はありません。 バックアップコンテナーの作成方法の詳細については、「バックアップコンテナーの作成」をご参照ください。

  4. Cluster_Aに123backup-1という名前のバックアップタスクを作成します。 詳細については、「バックアップ計画の作成または即時バックアップ」をご参照ください。

    デフォルトの名前空間をバックアップします。 123バックアップ-1バックアップタスクが完了状態になると、Cluster_Bの [アプリケーションバックアップ] ページの [バックアップとスナップショット] タブでバックアップタスクを表示できます。

  5. Cluster_Bの [アプリケーションバックアップ] ページで、[今すぐ復元] をクリックし、バックアップタスクのバックアップコンテナーを選択します。 バックアップセンターがバックアップレコードをクラスターに同期するのを待ちます。 バックアップボールトの初期化後、バックアップファイル123backup-1を選択できます。 詳細については、「アプリケーションとボリュームの復元」をご参照ください。

    説明

    バックアップボールトを選択したときにバックアップボールトを初期化するように求められた場合は、[バックアップボールトの初期化] をクリックして、バックアップボールトをCluster_Bに関連付けます。

  6. 復元タスクが正常に完了したことを確認します。

    1. Cluster_Bの詳細ページの左側のナビゲーションウィンドウで、[ワークロード] > [デプロイメント] を選択します。 WordPressアプリケーションを見つけ、[操作] 列の [詳細] をクリックし、WordPressアプリケーションが [実行中] 状態かどうかを確認します。

    2. 詳細ページの左側のナビゲーションウィンドウで、[ネットワーク] > [サービス] を選択します。

    3. [サービス] ページで、新しくデプロイされたアプリケーションを見つけ、[外部エンドポイント] 列のハイパーリンクをクリックします。 WordPressホームページが表示されます。

      主页

関連ドキュメント