「 Portworx Backup」を使ったアプリとデータのバックアップおよび復元
仮想プライベートクラウド クラシック・インフラストラクチャー
Portworx Backupは、 Portworx が独自に開発したバックアップソリューションであり、あらゆる IBM Cloud Kubernetes Service クラスターと互換性があります。 Portworx Backup を使用すると、複数のクラスターにまたがる IBM Cloud Kubernetes Service のリソース、アプリ、データをバックアップおよび復元できます。 Portworx バックアップの詳細については、 「Portworx バックアップを理解する 」を参照してください。
永続ボリューム内のデータをバックアップするには、クラスタにスナップショットをサポートするストレージ・クラスが必要です。 Portworx Enterprise、デフォルトでスナップショットをサポートするストレージクラスが含まれています。 Portworx Enterprise のないクラスタでは、永続ボリューム・データのバックアップにスナップショットをサポートするストレージ・クラスを使用する必要があります。 Block Storage for Classic ドライバと File Storage for Classic ドライバは、スナップショットをサポートするストレージクラスを提供しません。 ワークロードでこれらのドライバーを使用している場合、 Portworx Backup を使用してアプリケーションのバックアップを行うことはできますが、永続ボリューム内のデータのバックアップは行えません。 詳細については、「 Portworx Backup を使用したクラスタデータのバックアップと復元 」を参照してください。
Portworx Enterprise。複数のゾーンにまたがるクラスタに、データのレプリカを3つ持つオプションがあります。 ゾーンストレージに障害が発生した場合、 Portworx、この機能のメリットを得るためにPXエンタープライズを使用することをお勧めします。 これにより、アプリケーション・レベルの可用性に加えて、データ・レベルでの可用性が確保されます。
Portworx バックアップは Satellite クラスタではサポートされていません。
Portworx バックアップのインストール
始める前に
- クラスタがコンピュート、メモリ、およびサポートされるストレージの 最小要件( Portworx )を満たしていることを確認してください。
- クラスターで IBM Cloud ブロック・ストレージ・プラグインをインストールまたは更新します。
- 320Gi のブロック・ストレージをプロビジョンし、クラスターに接続します。 Setting IBM Cloud Block Storage または Setting up Block Storage for VPC を参照してください。
- IBM Cloud カタログから Portworx バックアップ・サービスを開きます。
- Portworx Backup をインストールするクラスタが配置されているのと同じ場所を選択してください。 クラスターのロケーションは、IBM Cloud Kubernetes Service ダッシュボードから見つけることができます。
- 「 サービス名 」フィールドに、 Portworx バックアップサービスの名前を入力してください。
- 「 Portworx 」バックアップ サービスを作成するリソース グループを選択してください。
- **「タグ」**フィールドに、PX-Backup をインストールするクラスターの名前を入力します。 インストール完了後、PX-Backup をインストールしたクラスターの名前は表示されません。 後でクラスターを見つけやすくするために、クラスターの名前と追加情報をタグとして入力してください。
- IBM Cloud API キーを入力します。 API キーを入力すると、**「Kubernetes または OpenShift クラスター名 (Kubernetes or OpenShift cluster name)」**フィールドが表示されます。 IBM Cloud API キーがない場合は、API キーの作成を参照して作成してください。
- **「Kubernetes または OpenShift クラスター名」**フィールドで、PX-Backup をインストールするクラスターを選択します。
- Portworx Backupサービスのコンポーネントをインストールする Kubernetes ネームスペースの名前を入力してください。
kube-system名前空間とdefault名前空間はいずれも使用しないでください。 入力した Kubernetes 名前空間がクラスター内にまだ存在しない場合は、インストール中に自動的に作成されます。 - クラスタ内の既存のストレージクラスを選択し、 Portworx バックアップサービス用の永続ボリュームをプロビジョニングします。 このストレージは、サービスによりサービス・メタデータの保管のために使用され、アプリとデータのバックアップには使用されません。 アプリとデータは IBM Cloud Object Storage サービス・インスタンスにバックアップされます。
- 「 作成 」をクリックして、 Portworx Backupのインストールを開始します。 インストールが完了するまで、数分かかる場合があります。
- Portworx バックアップ・サービスが正しくインストールされていることを確認します。
Portworx Backupのインストールを確認する
クラスタに「 Portworx Backup」が正しくインストールされていることを確認してください。
- 「 IBM Cloud 」 のリソース一覧から、作成した「 Portworx 」バックアップサービスを探します。
- **「状況」**列で、インストールが成功したか失敗したかを確認します。 状況が更新されるまで数分かかる場合があります。
- ステータスが「 Active 」に変わった場合は、クラスター内で Portworx のバックアップポッド、サービス、およびジョブが実行されていることを確認してください。
- 「 IBM Cloud 」 のリソース一覧から、PX-Backup をインストールしたクラスタを選択します。
- Kubernetes ダッシュボードを開きます。
- Portworx バックアップサービスのコンポーネントをインストールした名前空間を選択してください。
- **「ポッド」**テーブルを見つけます。
- すべてのポッドの**「状況」が「実行中」**であることを確認します。
- 「サービス」をクリックします。
- px-backup-ui サービスを見つけ、**「外部エンドポイント」**列に URL が存在することを確認します。
- **「ジョブ」**をクリックします。
- pxcentral-post-install-hook ジョブを見つけ、それが完了していることを確認します。
CLI から
- IBM Cloud リソース・リストから、作成した Portworx バックアップ・サービスを見つけます。
- **「状況」**列で、インストールが成功したか失敗したかを確認します。 状況が更新されるまで数分かかる場合があります。
- ステータスが「 Active 」に変わった場合は、クラスター内で Portworx のバックアップポッドが実行されていることを確認してください。
- アカウントにログインします。 該当する場合は、適切なリソース・グループをターゲットにします。 クラスターのコンテキストを設定します。
- コマンドを実行して、インストールが完了したことを確認します。
kubectl get po -n <px_backup_namespace> -ljob-name=pxcentral-post-install-hook -o wide | awk '{print $1 $3}' | grep -iv error ``` 出力例 ```sh {: screen} NAMESTATUS pxcentral-post-install-hook-5b86qCompleted ```
Portworx バックアップ・コンソールへのログイン
サービスをインストールしたクラスタの「 IBM Cloud Kubernetes Service 」ダッシュボードに表示される「 URL 」から、「 Portworx 」バックアップコンソールにアクセスします。
VPC クラスターの場合
- 「 IBM Cloud 」 のリソース一覧から、PX-Backup をインストールしたクラスタを選択します。
- Kubernetes ダッシュボードを開きます。
- Portworx バックアップサービスのコンポーネントをインストールした名前空間を選択してください。
- **「サービス」セクションで px-backup-ui サービスを見つけ、「パブリック・エンドポイント」**列で URL を見つけます。 この URL をクリックして、 Portworx のバックアップコンソールを開いてください。
- Portworx バックアップ・コンソールにログインします。 コンソールに最初にアクセスするユーザーの場合は、ユーザー名「
admin」、パスワード「admin」でログインする必要があります。 登録ページにリダイレクトされるので、固有のユーザー名とパスワードを設定します。 後続のユーザーは、コンソールにアクセスするために新規アカウントを登録する必要があります。
パブリック・クラシック・クラスターの場合
- 「 IBM Cloud 」 のリソース一覧から、PX-Backup をインストールしたクラスタを選択します。
- Kubernetes ダッシュボードを開きます。
- Portworx バックアップサービスのコンポーネントをインストールした名前空間を選択してください。
- **「サービス」セクションで px-backup-ui サービスを見つけ、「外部エンドポイント」**の下にある IP アドレスとノード・ポートをメモします。
- IPアドレスとノードポートをコピーしてWebブラウザに貼り付け、 Portworx バックアップコンソールを開いてください。
- Portworx バックアップ・コンソールにログインします。 コンソールに最初にアクセスするユーザーの場合は、ユーザー名「
admin」、パスワード「admin」でログインする必要があります。 登録ページにリダイレクトされるので、固有のユーザー名とパスワードを設定します。 後続のユーザーは、コンソールにアクセスするために新規アカウントを登録する必要があります。
プライベート・クラシック・クラスターの場合、 Portworx バックアップコンソールにアクセスするには、プライベート・クラスター 上でpx-backup-uiサービスを公開してください。
Portworx バックアップサービスにバックアップ先を追加する
IBM Cloud Object Storage のインスタンスとバケットを作成し、それらを Portworx バックアップサービスのバックアップ先として追加します。
始める前に、 Portworx バックアップ・コンソールにログインします。 なお、コンソールに最初にアクセスするユーザーの場合は、ユーザー名「 admin 」、パスワード「 admin 」でログインする必要があります。 登録ページにリダイレクトされるので、固有のユーザー名とパスワードを設定します。 後続のユーザーは、コンソールにアクセスするために新規アカウントを登録する必要があります。
- IBM Cloud Object Storage サービス・インスタンスを作成します。
- IBM Cloud Object Storage サービス・インスタンスのサービス資格情報を作成します。 必ず、HMAC 認証を有効にするために、**「資格情報の作成」ダイアログ・ボックスで「詳細オプション」をクリックし、「HMAC 資格情報を含める」パラメーターを「オン」**に切り替えます。
- サービス資格情報テーブルで資格情報を展開します。 以下の点に注意してください
access_key_idとsecret_access_keyこのcos_hmac_keysセクション内のおよびに注意してください。 - IBM Cloud Object Storage インスタンスにストレージ・バケットを作成します。
- バケットをクリックして、その位置を確認してください。
- バケット構成ページを開き、IBM Cloud Object Storage インスタンスに接続するために使用する必要があるエンドポイントをメモします。
- プライベートなクラシック・クラスターに「 Portworx Backup」をインストールした場合は、 プライベート ・エンドポイントをメモしておいてください。
- プライベートVPCクラスターに Portworx Backupをインストールした場合は、 ダイレクトエンドポイントをメモしておいてください。
- 他のすべてのクラスター・タイプの場合は、public エンドポイントをメモします。
- Portworx バックアップ・コンソールで、 「バックアップ (Backups)」 をクリックします。
- 「 設定」>「クラウド設定 」をクリックします。
- クラウド・アカウントを作成して、データおよびアプリが保管されるバックアップ・ロケーションとして IBM Cloud Object Storage インスタンスを指定します。
- クラウド・プロバイダーの場合は、**「AWS/S3 準拠オブジェクト・ストア」**を選択します。
- クラウド・アカウントの名前を入力します。
- 先ほど取得した
access_key_id先ほど取得したものを入力してください。 - 先ほど取得した
secret_access_key先ほど取得したものを入力してください。 - **「追加 +」をクリックし、「クラウド設定」**ページに戻ります。
- 「 バックアップ先 」セクションで、 Portworx バックアップサービスのバックアップ先として、 IBM Cloud Object Storage のバケットを追加してください。
- バックアップ・ロケーションの名前を入力します。
- 前に作成したクラウド・アカウントを選択します。
- **「パス/バケット」**フィールドに、バケットの名前を入力します。
- **「リージョン」**フィールドに、前に取得したバケットの場所を入力します。
- **「エンドポイント」**フィールドに、前に取得したバケットのエンドポイントを入力します。
- **「追加 +」**をクリックして、バックアップ・ロケーションを作成します。
Portworx バックアップ・サービスへの IBM Cloud Kubernetes Service クラスターの追加
PX-Backup でバックアップする IBM Cloud Kubernetes Service クラスターを追加します。 PX-Backup をインストールしたクラスターを含め、アカウント内の任意のクラスターを選択できます。
始める前に
「 kubeconfig 」のクラスター内にある「 Portworx Backup」は、24時間後に有効期限が切れます。 クラスタの kubeconfig ファイルの有効期限切れを防ぐには、 --admin オプションを使用して、クラスタのコンテキストを設定してください。
ibmcloud ks cluster config --cluster <cluster_name> --admin --endpoint private
クラスターの追加:
- Portworx バックアップ・コンソールで、 「バックアップ (Backups)」 をクリックします。
- **「クラスターの追加」**をクリックします。
- バックアップするクラスターの名前を入力します。
- CLI で、お使いのクラスターの
kubeconfigファイルの出力を取得します。kubeconfigの有効期限が切れないようにするため、--adminオプションを使用して、コンテキストがご自身のクラスターに設定されていることを確認してください。kubectl config view --flatten --minify kubeconfigCLI の出力全体をコピーし、 **Kubeconfig**Portworx バックアップコンソールのフィールドに貼り付けてください。- **「Kubernetes サービス」として「その他」**を選択します。
- Portworx Backupサービスに追加したいクラスタに Portworx がインストールされていない場合は、 そのクラスタにStorkをインストールする必要があります。 クラスターに Portworx Enterprise をインストールした場合は、デフォルトで Stork がインストールされています。
- **「送信」をクリックします。 クラスターが正常に追加されると、「バックアップ」**ページにリダイレクトされます。 クラスターがリストされていることを確認してください。
- クラスターからデータをバックアップします。
- Portworx バックアップサービスにクラスタを追加するには、これらの手順を繰り返してください。
非 Portworx クラスターでの Stork のインストール
Portworx Backupを使用してバックアップしたいクラスタに Portworx Enterprise がインストールされていない場合は、そのクラスタを Portworx Backupサービスに追加する前に、Storkをそのクラスタにインストールする必要があります。
-
Portworx バックアップコンソールの「 クラスタの追加 」ページから、 Non-PX クラスタにStorkをインストールするためのコマンドをコピーします。
-
テキスト・エディターを開き、コマンドを貼り付けます。
-
コマンド内の URL をコピーして Web ブラウザーに入力し、Stork インストール用の YAML ファイルを開きます。
-
YAML ファイル全体をコピーして、テキスト・エディターで新規ファイルに貼り付けます。
-
追加したいクラスターがプライベートクラスターの場合は、「 image 」フィールドを見つけ、「
openstorage/stork:<version_number>」を「icr.io/ext/portworx/stork:<version_number>」に置き換えてください。 交換用イメージの参照には、同じStorkのバージョン番号を使用してください。 Storkの最新利用可能バージョンを確認するには、 Storkのリリース情報をご覧ください。- --health-monitor-interval=120 - --webhook-controller=false image: openstore/stork:2.6.2 imagePullPolicy:Always resources: requests: cpu: '0.1' name: stork serviceAccountName: stork-account -
ファイルを保存し、コマンドを実行してファイルをクラスターに適用し、Stork をインストールします。
kubectl apply -f <file_name>.yaml -
Stork がクラスターに正常にインストールされていること、およびすべてのポッドが稼働していることを確認します。
kubectl get deployment -n kube-system | grep stork出力例
stork 3/3 3 3 7d20h
kmpd コマンドを使用したバックアップの作成
- Portworx Backup をクラスターにインストールします。
- クラスターの
kube-system名前空間内のkdmp-configConfigMap を編集します。kubectl edit cm kdmp-config -n kube-system - データセクションに以下のパラメータを追加してください。
BACKUP_TYPE: "Generic" - Portworx バックアップの資料 に従って、バックアップを作成します。
PX-Backup によるクラスター・データのバックアップとリストア
クラスターからデータをバックアップしたり、クラスターにデータを復元したりするには、『 Portworx Backup』のドキュメントを参照してください。
クラスターから IBM Cloud Object Storage へのアプリとデータのバックアップ: バックアップ・ロケーションとしてセットアップした IBM Cloud Object Storage サービス・インスタンスに、クラスター名前空間全体、単一アプリ、および永続ボリュームに保管されているデータをバックアップできます。 なお、パーシステントボリューム内のデータをバックアップするには、クラスタ内にCSIスナップショット・ストレージクラスが設定されている必要があります。 Portworx バックアップでは、このストレージクラスを使用して、まずデータのスナップショットを取得し、そのデータを IBM Cloud Object Storage のバックアップ先へ送信します。 詳しくは、 Portworx バックアップの資料を参照してください。
作成したバックアップを別のクラスターに復元します。: Portworx バックアップサービスに追加した任意のクラスターに対して、名前空間全体、アプリ、またはデータを復元することができます。 あるクラスターから別のクラスターへアプリやデータを移行したい場合は、この「 Portworx 」のバックアップ機能をご利用ください。 詳しくは、 Portworx バックアップの資料を参照してください。
PX-Backup のアップグレード
Portworx のドキュメントに従って、 PX-backupをアップグレードしてください