

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Application Load Balancer のゾーンシフト
<a name="zonal-shift"></a>

ゾーンシフトとゾーンオートシフトは、Amazon Application Recovery Controller (ARC) の機能です。ゾーンシフトを使用すると、1 回のアクションでトラフィックを障害のあるアベイラビリティーゾーンから移動できます。このようにして、 AWS リージョンの他の正常なアベイラビリティーゾーンから操作を継続できます。

ゾーンオートシフトでは、ユーザーに代わってイベント中にアプリケーションのリソーストラフィック AWS をアベイラビリティーゾーンから遠ざけることを に許可します。これにより、復旧までの時間が短縮されます。 は、内部モニタリングにより、顧客に影響を与える可能性のあるアベイラビリティーゾーンの障害があることが示された場合にオートシフト AWS を開始します。がオートシフト AWS を開始すると、ゾーンオートシフト用に設定したリソースへのアプリケーショントラフィックがアベイラビリティーゾーンからのシフトを開始します。

ゾーンシフトを開始すると、ロードバランサーは、影響を受けるアベイラビリティーゾーンへのリソースの新しいトラフィックの送信を停止します。ARC はこのゾーンシフトをすぐに作成します。ただし、クライアントの挙動または接続の再利用によっては、アベイラビリティーゾーンで進行中の既存の接続が完了するまでに若干時間がかかる場合もあります。お使いの DNS 設定やその他の要因によって、既存の接続が数分で完了したり、さらに時間がかかったりする場合があります。詳細は「*Amazon Application Recovery Controller (ARC) デベロッパーガイド*」の「[Limit the time that clients stay connected to your endpoints](https://docs.aws.amazon.com/r53recovery/latest/dg/route53-arc-best-practices.zonal-shifts.html#arc-zonal-shift.existing-connections)」を参照してください。

**Topics**
+ [[開始する前に]](#zonal-shift-before-you-begin)
+ [クロスゾーンロードバランサー](#cross-zone-enabled)
+ [管理オーバーライド](#admin-override)
+ [ゾーンシフトを有効にする](enable-zonal-shift.md)
+ [ゾーンシフトを開始する](start-zonal-shift.md)
+ [ゾーンシフトの更新](update-zonal-shift.md)
+ [ゾーンシフトのキャンセル](cancel-zonal-shift.md)

## ゾーンシフトを開始する前に
<a name="zonal-shift-before-you-begin"></a>
+ ゾーンシフトはデフォルトで無効になっており、各 Application Load Balancer で有効にする必要があります。詳細については、「[Application Load Balancer のゾーンシフトを有効にする](enable-zonal-shift.md)」を参照してください。
+ 1 つのアベイラビリティーゾーンに対してのみ、特定のロードバランサーのゾーンシフトを開始できます。複数のアベイラビリティーゾーンに対してゾーンシフトを開始することはできません。
+ AWS は、複数のインフラストラクチャの問題がサービスに影響を与える場合、DNS からゾーンロードバランサーの IP アドレスをプロアクティブに削除します。ゾーンシフトを開始する前に、現在のアベイラビリティーゾーンの容量を必ず確認してください。ロードバランサーのクロスゾーンロードバランシングがオフになっていて、ゾーンシフトを使用してゾーンロードバランサーの IP アドレスを削除すると、ゾーンシフトの影響を受けるアベイラビリティーゾーンもターゲット容量を失います。

詳細は「*Amazon Application Recovery Controller (ARC) デベロッパーガイド*」の「[ARC のゾーンシフトのベストプラクティス](https://docs.aws.amazon.com/r53recovery/latest/dg/route53-arc-best-practices.zonal-shifts.html)」を参照してください。

## クロスゾーンロードバランサー
<a name="cross-zone-enabled"></a>

クロスゾーン負荷分散が有効になっている Application Load Balancer でゾーンシフトが開始されると、ターゲットへのすべてのトラフィックが影響を受けるアベイラビリティーゾーンでブロックされ、ゾーン IP アドレスが DNS から削除されます。

**利点**
+ アベイラビリティーゾーンの障害からの迅速な復旧。
+ アベイラビリティーゾーンで障害が検出された場合に、トラフィックを正常なアベイラビリティーゾーンに移動する機能。
+ 予期しないダウンタイムを防ぐために障害をシミュレートして特定することで、アプリケーションの整合性をテストできます。

## ゾーンシフトの管理オーバーライド
<a name="admin-override"></a>

Application Load Balancer に属するターゲットには、`TargetHealth` 状態とは独立した新しい `AdministrativeOverride` ステータスが含まれます。

Application Load Balancer のゾーンシフトが開始されると、シフトされるゾーン内のすべてのターゲットが管理上オーバーライドされたと見なされます。Application Load Balancer は、管理上オーバーライドされたターゲットへの新しいトラフィックのルーティングを停止します。既存の接続は、有機的に閉じられるまでそのまま残ります。

可能な `AdministrativeOverride` 状態は次のとおりです。

**不明**  
内部エラーのため、状態を伝播できません

**no\$1override**  
ターゲットで現在アクティブなオーバーライドはない

**zonal\$1shift\$1active**  
ゾーンシフトがターゲットアベイラビリティーゾーンでアクティブです

# Application Load Balancer のゾーンシフトを有効にする
<a name="enable-zonal-shift"></a>

ゾーンシフトはデフォルトで無効になっており、各 Application Load Balancer で有効にする必要があります。これにより、必要な特定の Application Load Balancer のみを使用してゾーンシフトを開始できます。詳細については、「[Application Load Balancer のゾーンシフト](zonal-shift.md)」を参照してください。

------
#### [ Console ]

**ゾーンシフトを有効にするには**

1. Amazon EC2 コンソールの [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) を開いてください。

1. ナビゲーションペインの [**ロードバランシング**] で [**ロードバランサー**] を選択します。

1. Application Load Balancer を選択します。

1. **[属性]** タブで、**[編集]** を選択します。

1. **[アベイラビリティーゾーンルーティング設定]** の **[ARC ゾーンシフト統合]** で **[有効化]** を選択します。

1. **[Save changes]** (変更の保存) をクリックします。

------
#### [ AWS CLI ]

**ゾーンシフトを有効にするには**  
`zonal_shift.config.enabled` 属性を指定して [modify-load-balancer-attributes](https://docs.aws.amazon.com/cli/latest/reference/elbv2/modify-load-balancer-attributes.html) コマンドを使用します。

```
aws elbv2 modify-load-balancer-attributes \
    --load-balancer-arn load-balancer-arn \
    --attributes "Key=zonal_shift.config.enabled,Value=true"
```

------
#### [ CloudFormation ]

**ゾーンシフトを有効にするには**  
[AWS::ElasticLoadBalancingV2::LoadBalancer](https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-elasticloadbalancingv2-loadbalancer.html) リソースを更新して、`zonal_shift.config.enabled` 属性を含めます。

```
Resources:
  myLoadBalancer:
    Type: 'AWS::ElasticLoadBalancingV2::LoadBalancer'
    Properties:
      Name: my-alb
      Type: application
      Scheme: internal
      IpAddressType: dualstack
      Subnets: 
        - !Ref subnet-AZ1
        - !Ref subnet-AZ2
      SecurityGroups: 
        - !Ref mySecurityGroup
      LoadBalancerAttributes:
        -Key: "zonal_shift.config.enabled"
         Value: "true"
```

------

# Application Load Balancer のゾーンシフトを開始にする
<a name="start-zonal-shift"></a>

ARC のゾーンシフトを使用すると、サポートされているリソースのトラフィックを一時的にアベイラビリティーゾーンから遠ざけて、アプリケーションが AWS リージョン内の他のアベイラビリティーゾーンで正常に動作し続けることができます。

**前提条件**  
開始する前に、ロードバランサーの[ゾーンシフトが有効になっている](enable-zonal-shift.md#enable-zonal-shift.title)ことを確認します。

------
#### [ Console ]

この手順では、Amazon EC2 コンソールでゾーンシフトを開始する方法について説明します。ARC コンソールを使用してゾーンシフトを開始する手順については、「*Amazon Application Recovery Controller (ARC) デベロッパーガイド*」の「[Starting a zonal shift](https://docs.aws.amazon.com/r53recovery/latest/dg/arc-zonal-shift.start-cancel.html)」を参照してください。

**ゾーンシフトを開始するには**

1. Amazon EC2 コンソールの [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) を開いてください。

1. ナビゲーションペインの [**ロードバランシング**] で [**ロードバランサー**] を選択します。

1. Application Load Balancer を選択します。

1. **[統合]** タブの **[Amazon Application Recovery Controller (ARC)]** を展開し、**[ゾーンシフトを開始する]** を選択します。

1. トラフィックを移動させたいアベイラビリティーゾーンを選択します。

1. ゾーンシフトの有効期限を選択または入力します。ゾーンシフトは、最初は 1 分から最大 3 日 (72 時間) まで設定できます。

   すべてのゾーンシフトは一時的なものです。有効期限を設定する必要がありますが、アクティブなシフトを後で更新して有効期限を設定できます。

1. コメントを入力します。後でゾーンシフトを更新してコメントを編集できます。

1. このチェックボックスを選択して、ゾーンシフトを開始するとトラフィックがアベイラビリティーゾーンからシフトされてアプリケーションの容量が減少することを確認します。

1. **[確認]** を選択します。

------
#### [ AWS CLI ]

**ゾーンシフトを開始するには**  
Amazon Application Recovery Controller (ARC) [start-zonal-shift](https://docs.aws.amazon.com/cli/latest/reference/arc-zonal-shift/start-zonal-shift.html) コマンドを使用します。

```
aws arc-zonal-shift start-zonal-shift \
    --resource-identifier load-balancer-arn \
    --away-from use2-az2 \
    --expires-in 2h \
    --comment "zonal shift due to scheduled maintenance"
```

------

# Application Load Balancer のゾーンシフトを更新する
<a name="update-zonal-shift"></a>

ゾーンシフトは、更新して新しい有効期限を設定できます。また、コメントを編集したり置き換えたりもできます。

------
#### [ Console ]

この手順では、Amazon EC2 コンソールを使用してゾーンシフトを更新する方法について説明します。Amazon Application Recovery Controller コンソールを使用してゾーンシフトを更新する手順については、「*Amazon Application Recovery Controller (ARC) Developer Guide*」の「[Update a zonal shift](https://docs.aws.amazon.com/r53recovery/latest/dg/arc-zonal-shift.start-cancel.html)」を参照してください。

**ゾーンシフトを更新するには**

1. Amazon EC2 コンソールの [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) を開いてください。

1. ナビゲーションペインの [**ロードバランシング**] で [**ロードバランサー**] を選択します。

1. アクティブなゾーンシフトを持つ Application Load Balancer を選択します。

1. **[統合]** タブで **[Amazon Application Recovery Controller (ARC)]** を展開し、**[ゾーンシフトを更新]** を選択します。

   これにより ARC コンソールが開き、更新プロセスが続行されます。

1. (オプション) **[ゾーンシフトの有効期限を設定]** で、有効期限を選択または入力します。

1. (オプション) **[コメント]** では、必要に応じて既存のコメントを編集するか、新しいコメントを入力します。

1. **[更新]** を選択します。

------
#### [ AWS CLI ]

**ゾーンシフトを更新するには**  
Amazon Application Recovery Controller (ARC) [update-zonal-shift](https://docs.aws.amazon.com/cli/latest/reference/arc-zonal-shift/update-zonal-shift.html) コマンドを使用します。

```
aws arc-zonal-shift update-zonal-shift \
    --zonal-shift-id 9ac9ec1e-1df1-0755-3dc5-8cf57EXAMPLE \
    --expires-in 1h \
    --comment "extending zonal shift for scheduled maintenance"
```

------

# Application Load Balancer のゾーンシフトをキャンセルする
<a name="cancel-zonal-shift"></a>

ゾーンシフトは、有効期限が切れる前であればいつでもキャンセルできます。開始したゾーンシフト、またはゾーンオートシフトの練習実行のリソースに対して AWS 開始したゾーンシフトをキャンセルできます。

------
#### [ Console ]

この手順では、Amazon EC2 コンソールを使用してゾーンシフトをキャンセルする方法について説明します。Amazon Application Recovery Controller コンソールを使用してゾーンシフトをキャンセルする手順については、「*Amazon Application Recovery Controller (ARC) デベロッパーガイド*」の「[Canceling a zonal shift](https://docs.aws.amazon.com/r53recovery/latest/dg/arc-zonal-shift.start-cancel.html)」を参照してください。

**ゾーンシフトをキャンセルするには**

1. Amazon EC2 コンソールの [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/) を開いてください。

1. ナビゲーションペインの [**ロードバランシング**] で [**ロードバランサー**] を選択します。

1. アクティブなゾーンシフトを持つ Application Load Balancer を選択します。

1. **[統合]** タブの **[Amazon Application Recovery Controller (ARC)]** で、**[ゾーンシフトをキャンセルする]** を選択します。

   これにより ARC コンソールが開き、キャンセルプロセスが続行されます。

1. **[Cancel zonal shift]** (ゾーンシフトをキャンセル) を選択します。

1. 確認を求められたら、[**確認**] を選択します。

------
#### [ AWS CLI ]

**ゾーンシフトをキャンセルするには**  
Amazon Application Recovery Controller (ARC) [cancel-zonal-shift](https://docs.aws.amazon.com/cli/latest/reference/arc-zonal-shift/cancel-zonal-shift.html) コマンドを使用します。

```
aws arc-zonal-shift cancel-zonal-shift \
    --zonal-shift-id 9ac9ec1e-1df1-0755-3dc5-8cf57EXAMPLE
```

------