ブート・ボリュームの置換
インスタンスの終了および再作成を行わずに、インスタンスのブート・ボリュームを自動的に置換できます。インスタンスが停止し、ブート・ボリュームが置き換えられ、インスタンスはボリュームの置換えプロセスの前の状態に戻ります。この機能により、問題が検出された場合や、新機能の実装のためにアップグレードが必要な場合に、ブート・ボリュームを交換できます。
ブート・ボリュームの交換要件およびオプション
ブート・ボリュームの置換を使用するための主なOSおよびイメージ要件を次に示します。
- Linuxオペレーティング・システムおよびイメージのみがサポートされています。
- Windowsおよびマーケットプレイスのイメージはサポートされていません。
- ブート・ボリュームを置換できるのは、同じLinuxディストリビューションを使用するブロック・ボリュームおよびイメージのみです。たとえば、Oracle LinuxからUbuntu、またはその逆に切り替えることはできません。
- イメージの制限は、イメージに関連付けられた起動オプションおよび現在インスタンス上にあるものに適用されます。たとえば、イメージのブート・ボリューム・アタッチメント・タイプがインスタンスの起動オプションと一致しない場合、イメージは無効とみなされます。
場合によっては、次のものが必要です。
- 仮想マシンまたはベア・メタル・インスタンス。
- 次のいずれかです。
- 互換性のあるオペレーティング・システムを備えたフォーマット済ブロック・ボリューム。
- インスタンスと互換性のあるバックアップ・イメージ。
必要なIAMポリシー
Oracle Cloud Infrastructureを使用するには、管理者が、テナンシ管理者がポリシーでセキュリティ・アクセス権を付与したグループのメンバーである必要があります。コンソールまたは(SDK、CLIまたはその他のツールを使用した) REST APIのどれを使用しているかにかかわらず、このアクセス権が必要です。権限がない、または認可されていないというメッセージが表示された場合は、テナンシ管理者に、どのタイプのアクセス権があり、どのコンパートメントでアクセスが作業する必要があるかを管理者に確認してください。
ブート・ボリュームの置換を有効にするには、コンパートメントまたはテナンシに必要なポリシーを追加します。次に、コンパートメントおよびテナンシに対するブート・ボリュームの置換を可能にする管理レベルのインスタンス・ポリシーの例を示します。
コンパートメントのポリシーの例
allow group InstanceUpdaters to manage instances in compartment instanceCompartment
OR
allow group InstanceUpdaters to manage instance-family in compartment instanceCompartment
テナンシのポリシーの例
allow group InstanceUpdaters to manage instances in TENANCY
OR
allow group InstanceUpdaters to manage instance-family in TENANCY
既存のポリシー・セットの場合、ブート・ボリュームの置換を許可するために必要な最小限の変更は、次のポリシーです。
allow group InstanceUpdaters to {INSTANCE_BOOT_VOLUME_REPLACE} in instanceCompartment
この例では、
InstanceUpdatersはインスタンスの更新を許可するポリシー・グループです。ブート・ボリューム交換のロールバック
ブロック・ボリュームの置換の実行中に問題が発生した場合、システムはインスタンスを元の状態にロールバックしようとします。実行するステップは次のとおりです。
- インスタンス・メタデータをリストアします。
- インスタンスの状態をリストアします。
- アタッチされたボリュームの状態を復元します。
- インスタンスを再起動します。
理想的には、これによってインスタンスが前の状態にリストアされます。これは、すべての状況で可能とは限りません。
ロールバックが発生すると、新しい宛先ボリュームは次のように処理されます。
- イメージが使用されると、ロールバックによって生成されたブート・ボリュームが削除されます。
- ボリュームOCIDが使用されている場合、ロールバックでは宛先ブート・ボリュームは削除されません。
コンソールの使用
ブート・ボリューム・オプションの選択
インスタンスのブート・ボリュームを置換するには、次を実行します。
- ナビゲーション・メニューを開き、「コンピュート」を選択します。「コンピュート」で、「インスタンス」を選択します。
- インスタンスの名前をクリックします。
- 「その他のアクション」メニュー項目から、「ブート・ボリュームの置換」を選択します。
- ブート・ボリュームの置換オプションを構成します。
- ブート・ボリュームの保持: 「有効」の場合、置換に成功すると、前のブート・ボリュームは保持されます。それ以外の場合、ブート・ボリュームは終了します。
置換ブート・ボリュームの選択
次のいずれかの方法を使用して、交換用ボリュームを選択します。
- 「置換方法」で、「ブート・ボリューム」を選択します。
- 「ブート・ボリュームの適用基準」で、「リストから選択」を選択します。
- リストをクリックしてボリュームを選択します。 ノート
コンパートメントを変更することもできます。
- 「置換方法」で、「ブート・ボリューム」を選択します。
- 「次によるブート・ボリュームの適用」で、「OCIDの入力」を選択します。
- ブート・ボリュームのOCIDを入力します。
- 「置換」で、「イメージ」を選択します。
- 「イメージの適用基準」で、「リストから選択」を選択します。
- リストをクリックしてイメージを選択します。 ノート
コンパートメントを変更することもできます。
- 「置換」で、「イメージ」を選択します。
- 「イメージの適用基準」で、「OCIDの入力」を選択します。
- イメージのOCIDを入力します。
選択内容の確認
「置換」をクリックして選択します。
CLIの使用
インスタンスを更新するには、instance updateコマンドおよび必須パラメータを使用します:
oci compute instance update --from-json <file://path/to/file.json>
<file://path/to/file.json>は、インスタンスの詳細を定義するJSONファイルへのパスです。JSONファイルの例を生成する方法の詳細は、JSONの拡張オプションを参照してください。
コンピュート・サービスのCLIコマンドのフラグおよび変数オプションの完全なリストは、コンピュート用のコマンドライン・リファレンスを参照してください。
APIの使用
APIの使用およびリクエストの署名の詳細は、REST APIのドキュメントおよびセキュリティ資格証明に関する項を参照してください。SDKの詳細は、SDKおよびCLIを参照してください。
インスタンスのブート・ボリュームを置換するには、次のAPI操作を使用します: