適用ロールバック・ジョブの作成

リソース・マネージャで適用ロールバック・ジョブを作成します。

スタックの適用ロールバック・ジョブを作成(実行)すると、Terraformによってリソースがプロビジョニングされ、ターゲット・ジョブのTerraform構成で定義されたアクションが実行され、実行計画が関連付けられたスタックに適用されます。このジョブは、Oracle Cloud Infrastructureリソースを前の状態にロールバックします。

次のフローを使用して、適用ロールバック・ジョブを実行する前に計画ロールバック・ジョブを作成(実行)(実行計画の生成)することをお薦めします。

  1. ロールバックする成功した適用ジョブを特定します。

    ロールバック先のジョブは、ターゲット・ジョブとも呼ばれます。

  2. ターゲット・ジョブのプラン・ロールバック・ジョブを作成します

  3. 計画ロールバック・ジョブが成功したことを確認します。

  4. 生成された実行計画が期待を満たしていることを確認します。

  5. 生成された実行計画(executionPlanRollbackStrategy)を使用して、適用ロールバック・ジョブを作成します。

    手順はこのページにあります。

    1. ナビゲーション・メニューを開き、「開発者サービス」をクリックします「リソース・マネージャ」で、「スタック」をクリックします。
    2. 「スタック」ページで、必要なスタックを含むコンパートメントを選択します。
    3. 目的のスタックの名前をクリックします。
    4. 「スタックの詳細」ページの「ジョブ」リストで、適用ロールバック・ジョブの作成に使用するジョブを見つけます。
      プラン・ロールバック・ジョブ(推奨)または適用ジョブを選択できます。
    5. 必要なジョブについて、「アクション」メニュー(アクション・メニュー)をクリックし、「ロールバック」を選択します。
      「ロールバック」パネルが開き、選択したジョブのOCIDおよび名前が表示されます。Execution plan rollback strategy is automatically selected based on the selected job you're using for the apply rollback job: Use execution plan from plan rollback job for a plan rollback job and Automatically approve for an apply job.自動承認の詳細は、Terraform適用コマンドの自動承認オプションを参照してください
    6. 「ロールバック・ジョブ・タイプ」で、「適用」を選択して適用ロールバック・ジョブを作成します。
    7. (オプション)ロールバック・ジョブのデフォルト名を編集します。機密情報の入力は避けてください。
    8. デバッグのための詳細なログ・コンテンツを生成するには、「拡張オプションの表示」をクリックし、「詳細なログ・レベル」から必要なログ・レベルを選択します。
      詳細は、Terraformのデバッグを参照してください。
    9. Terraformがグラフを歩くときに同時操作の最大数を調整するには、「拡張オプションの表示」をクリックし、「パラレル操作の最大数」の値を編集します。(デフォルト: 10.)このオプションを使用して、ジョブを高速化します。
      ノート

      値が大きいと、リソースがスロットルされることがあります。たとえば、数百ものコンピュート・インスタンスを定義するTerraform構成について考えてみます。適用ジョブは、できるだけ多くのインスタンスを同時に作成しようとします。この例では、100の値によってコンピュート・サービスによるスロットルが発生する可能性があります。
    10. ジョブを実行する前に最新の状態をフェッチするには、「拡張オプションの表示」をクリックし、「差異をチェックする前にリソース状態をリフレッシュ」を選択します。

      このオプションを使用して、最初に状態をリフレッシュします。たとえば、手動で更新された(既存の)インフラストラクチャで実行する適用ジョブでこのオプションを使用することを検討してください。

      ノート

      状態をリフレッシュすると、パフォーマンスに影響する可能性があります。構成に複数のリソースが含まれている場合は、このオプションを使用しないことを検討してください。
    11. (オプション)「拡張オプションの表示」をクリックし、ジョブにタグを割り当てます。
      • タグ・ネームスペース: 定義済タグを追加するには、既存のネームスペースを選択します。解放元タグを追加するには、値を空白のままにします。
      • タグ・キー: 定義済タグを追加するには、既存のタグ・キーを選択します。フリーフォーム・タグを追加するには、必要なキー名を入力します。
      • タグ値: 必要なタグ値を入力します。
      • タグの追加: 別のタグを追加する場合にクリックします。
    12. 「OK」をクリックします。

    適用ロールバック・ジョブが作成されます。新しいジョブが「ジョブ」の下にリストされます。

  • 適用ロールバック・ジョブを実行するには、oci resource-manager job create-apply-rollback-jobコマンドおよび必須パラメータを使用します。

    oci resource-manager job create-apply-rollback-job --stack-id <stack_OCID> --execution-plan-rollback-strategy <source_of_execution_plan>

    CLIコマンドのパラメータおよび値の完全なリストは、リソース・マネージャ・コマンドライン・リファレンスを参照してください。

  • 適用ロールバック・ジョブを作成するには、CreateJob操作を使用します。

    適用ロールバック・ジョブの詳細は、ApplyRollbackJobOperationDetailsを参照してください。

次の処理

指定されたリソースの数およびタイプに応じて、特定の適用ロールバック・ジョブには時間がかかる場合があります。

適用ロールバック・ジョブの実行後、ジョブの詳細を取得してそのステータスを確認します。オプションで、Terraform状態ファイルを表示したり、ログを表示したり、プロビジョニングされたリソースの存在を確認できます。

ジョブの詳細を取得して、ジョブ・ステータス(ライフサイクルの状態)をモニターします。「成功」(SUCCEEDED)は、ジョブが完了したことを示します。ジョブの複雑さによっては、操作に時間がかかる場合があります。ジョブの実行中または終了後に、ジョブ・ログの内容を取得できます。

Terraformの状態ファイル(ジョブの実行後のリソースの状態を示します)を表示するには、ジョブの名前をクリックして「ジョブ詳細」ページを表示し、「リソース」の下の「状態の表示」をクリックします。オプションで、「このバージョンの変更の表示」を選択します。

ジョブのログを表示するには、ジョブの名前をクリックして「ジョブ詳細」ページを開き、「リソース」の下の「ログ」をクリックします。

新規にプロビジョニングされたリソースの存在を確認するには、コンパートメントでリソースを検査します。