Karpenter が Amazon Application Recovery Controller のゾーンシフトをサポート開始
Amazon Elastic Kubernetes Service (Amazon EKS) において、コンピューティングプロビジョニングにオープンソースの Karpenter プロジェクトを使用する際、Amazon Application Recovery Controller (ARC) のゾーンシフトおよびゾーンオートシフトがサポートされるようになりました。ARC は、AWS リージョンとアベイラビリティーゾーン (AZ) 間でのアプリケーションのリカバリを管理および調整するのにも役立ちます。今回のリリースによって、障害のあるアベイラビリティーゾーンからクラスター内のネットワークトラフィックを移動させるプロセスを自動化することで、Kubernetes アプリケーションの可用性をより適切に維持できます。
単一障害点をなくすために、複数のアベイラビリティーゾーンにまたがる Amazon EKS で高可用性アプリケーションをデプロイするお客様が増えています。ARC のゾーンシフトを使用すると、影響を受けたアベイラビリティーゾーンからクラスター内ネットワークトラフィックをリダイレクトすることで、アベイラビリティーゾーンの障害を一時的に緩和できます。さらに、ARC ゾーンオートシフトを利用して AWS に管理を任せることで、このプロセスを完全に自動化できます。これには、アベイラビリティーゾーンを 1 つ切り離した状態でクラスターが正常に動作するかを検証するプラクティスランも含まれます。EKS クラスターでゾーンシフトが有効になると、Karpenter は障害のあるアベイラビリティーゾーンでの新しい容量のプロビジョニングを停止します。同時に、そのアベイラビリティーゾーン内のノードにおける統合やドリフトといった自発的な中断処理も行いません。さらに、正常なアベイラビリティーゾーンであっても、障害のあるアベイラビリティーゾーンへのポッドのスケジューリングが必要となる自発的な中断処理を回避します。障害の発生したアベイラビリティーゾーンを必要とするボリュームアフィニティなどの厳密なスケジューリング要件を持つポッドについては、起動の試行自体が行われません。ゾーンシフトが終了、またはキャンセルされた時点で、Karpenter は通常の動作を再開します。
この Karpenter の機能は、手動のゾーンシフトとゾーンオートシフトの両方で動作します。Karpenter が既存の EKS クラスターの ARC リソースと直接連携するため、別途カスタム ARC リソースを用意する必要はありません。ゾーンシフトのサポートを有効にするには、Karpenter の設定で ENABLE_ZONAL_SHIFT を設定してください。詳細については、Karpenter のドキュメントおよび ARC ゾーンシフトのドキュメントをご覧ください。