このセクションでは、柔軟なアップグレードで使用可能な次の追加オプションについて説明します。

  • ロールバック - エラー リカバリ

  • クリーンアップの中止

  • SE グループの再開オプション

ロールバック - エラー リカバリ

  • アップグレード プロセスでエラーが発生すると、自動ロールバック エラー リカバリが開始され、NSX Advanced Load Balancer Controller が以前の良好な状態になります。

  • suspend_on_failure フラグが使用されている場合、SE グループでエラーが発生すると、SE グループはアップグレードをサスペンドします。そうでない場合、SE グループ内の残りのサービス エンジンのアップグレードは続行されます。

  • パッチのコンテキストでエラーが発生した場合、パッチはロールバックされます。

  • ロールバック メカニズムの実行中にエラーが発生した場合は、アップグレードがキャンセルされたと見なされます。

クリーンアップの中止

ロールバック操作がトリガされて失敗すると、NSX Advanced Load Balancer Controller または SE グループは常に中止状態に移行します。柔軟なアップグレードでは、これらの状態をクリーンアップして、NSX Advanced Load Balancer Controller と SE グループを以前の安定した状態に移行できます。

SE グループの再開オプションの使用

注:

SE グループの再開オプションは、NSX Advanced Load Balancer リリース 18.2.8 以降でのみサポートされます。

suspend_on_failure が有効な状態で SE グループがアップグレードされ、問題が発生すると、その SE グループのアップグレード プロセスはサスペンドされます。手動による介入によって問題が解決されたら、次のオプションを使用してアップグレードを再開します。

  • Se-group-uuids - 再開する必要がある SE グループを指定します。

  • Ignore_failure - このフィールドは、以前の障害発生時のサスペンドを上書きします。アップグレードは無条件で実行され、以降のアップグレードの反復で障害が発生しても続行されます。デフォルト値は false です。

  • Skip-suspended - このフィールドは、以前のアップグレードの反復でサスペンドされた SE をスキップし、グループ内の残りの SE の処理を進めます。デフォルト値は false です。

[admin:controller]: >resume segroup se_group_refs <se-group-name>
[admin:controller]: >resume segroup se_group_refs seg-a

オプションを指定して SE グループのアップグレードを再開するには、次のオプションを使用できます。

[admin:controller]: >resume segroup skip_suspended se_group_refs Default-Group action_on_error continue_upgrade_ops_on_error
[admin:controller]: >resume segroup skip_suspended se_group_refs Default-Group action_on_error suspend_upgrade_ops_on_error

次の API POST メソッドを使用して、SE グループのアップグレードを再開します。

API: /api/segroup/resume
POST /api/segroup/resume
JSON data:
{
        "se_group_uuids": [
                "serviceenginegroup-ec9c8141-844d-467d-bdc0-d7855e9d8419"
        ],
        "skip_warnings": true
}
注:

skip_warnings": true を使用すると、警告メッセージやアップグレード プレビューの表示なしでアップグレードが続行されます。

その他のオプションを使用して再開:

オプション:サスペンド状態の SE をスキップしてアップグレードを続行し、CONTINUE_UPGRADE_OPS_ON_ERROR を使用して se_group action_on_error を更新します。

{
        "se_group_options": {
              "action_on_error": "CONTINUE_UPGRADE_OPS_ON_ERROR",
              "skip_suspended": true
         },
        "se_group_resume_options": {
              "action_on_error": "CONTINUE_UPGRADE_OPS_ON_ERROR",
              "skip_suspended": true
         },
        "se_group_uuids": [
              "serviceenginegroup-ec9c8141-844d-467d-bdc0-d7855e9d8419"
        ],
        "skip_warnings": true
}

オプション:サスペンド状態の SE をスキップし、アップグレードを続行します。

{
        "se_group_options": {
              "action_on_error": "SUSPEND_UPGRADE_OPS_ON_ERROR",
              "skip_suspended": true
        },
        "se_group_resume_options": {
              "action_on_error": "SUSPEND_UPGRADE_OPS_ON_ERROR",
              "skip_suspended": true
        },
        "se_group_uuids": [
              "serviceenginegroup-ec9c8141-844d-467d-bdc0-d7855e9d8419"
        ],
        "skip_warnings": true
}

SE グループ テンプレートを使用した SE グループの作成

クラウドの開始および SE グループの作成中に、クラウドにサービス エンジン グループ テンプレートがあるかどうかが確認されます。テンプレートがある場合は、SE グループ テンプレートからベースまたはイメージがコピーされます。そうでない場合、イメージ情報は NSX Advanced Load Balancer Controller から選択されます。

各クラウドには se_group_template_uuid があります。これは、新しく作成された SE グループが se_group_template_uuid に従うようにするために使用されます。

任意の SE グループをテンプレートとして指定できます。SE グループ (Seg1) がデフォルトの SE グループ テンプレートとして割り当てられている場合、新しく作成された SE グループ (Seg2) は、次のように Seg からベースとパッチ イメージを選択します。

[admin:controller]: > show upgrade status filter serviceenginegroup Seg2
+------+--------+---------------+------------------+-----------+-----------------------------+---------------------------------+
| Name | Tenant | Cloud         | State            | Operation | Image                       | Patch                           |
+------+--------+---------------+------------------+-----------+-----------------------------+---------------------------------+
| Seg3 | admin  | Default-Cloud | UPGRADE_FSM_INIT | None      | 18.2.9-9000-20200509.052234 | 18.2.9-9000-2p1-20200430.133146 |
+------+--------+---------------+------------------+-----------+-----------------------------+---------------------------------+

パッチ ロールバック オプションは、次のように有効にする必要があります。

[admin:controller]: > show upgrade status detail filter serviceenginegroup Seg2
+-----------------------+-------------------------------------------------------------------------+
| Field                 | Value                                                                   |
+-----------------------+-------------------------------------------------------------------------+
| uuid                  | serviceenginegroup-d564305e-9db5-4ae6-941c-485a26af062a                 |
| name                  | Seg2                                                                    |
| node_type             | NODE_SE_GROUP                                                           |
| version               | 18.2.9-9000-20200509.052234                                             |
| image_ref             | 18.2.9-9000-20200509.052234                                             |
| patch_version         | 2p1                                                                     |
| patch_image_ref       | 18.2.9-9000-2p1-20200430.133146                                         |
| state                 |                                                                         |
|   state               | UPGRADE_FSM_INIT                                                        |
|   last_changed_time   | Sat May  9 06:15:49 2020 ms(41) UTC                                     |
| seg_status            |                                                                         |
|   notes[1]            | [2020-05-09 06:15:49] Init segroup(seg3 defaults to seg-template(seg1). |
| start_time            | 2020-05-09 06:15:49.406502                                              |
| enable_rollback       | False                                                                   |
| enable_patch_rollback | True                                                                    |
| progress              | 0 percent                                                               |
| tenant_ref            | admin                                                                   |
| obj_cloud_ref         | Default-Cloud                                                           |
+-----------------------+-------------------------------------------------------------------------|