この記事では、AKS で Amazon Web Services (AWS) Elastic Kubernetes Service (EKS) イベント ドリブン ワークフロー (EDW) のワークロードを KEDA と Karpenter でレプリケートする方法について説明します。
このワークロードは、データ生産とデータ消費を分離することによってデータ処理効率を向上させるプロデューサー アプリ/コンシューマー アプリを使用する競合コンシューマー パターンの実装です。 KEDA を使用してコンシューマー処理を実行しているポッドをスケーリングし、Karpenter を使用して Kubernetes ノードを自動スケーリングします。
AWS ワークロードの詳細については、Amazon EKS で KEDA と Karpenter を使用したスケーラブルでコスト効率の高いイベント ドリブン ワークロードに関するページを参照してください。
デプロイ プロセス
- 概念上の相違点の理解: まず、サービス、アーキテクチャ、デプロイの観点から、AWS と AKS の違いを確認します。
- ワークロードの再設計: 既存の AWS ワークロード アーキテクチャを分析し、AKS に合わせて再設計する必要があるコンポーネントまたはサービスを特定します。 ワークロード インフラストラクチャ、アプリケーション アーキテクチャ、デプロイ プロセスを変更する必要があります。
- アプリケーション コードの更新: コードが Azure API、サービス、認証モデルと互換性があることを確認します。
- デプロイの準備: AWS デプロイ プロセスを、Azure CLI を使用するように変更します。
- ワークロードのデプロイ: レプリケートされたワークロードを AKS にデプロイし、ワークロードをテストして、想定どおりに機能することを確認します。
前提条件
- Azure アカウント。 お持ちでない場合は、開始する前に無料アカウントを作成してください。
- Azure アカウント内のサブスクリプションにおける所有者 Azure 組み込みロール、またはユーザー アクセス管理者と共同作成者の組み込みロール。
- Azure CLI バージョン 2.56 以降。
- Azure Kubernetes Service (AKS) プレビュー拡張機能。
- jq バージョン 1.5 以降。
- Python 3.12 以降。
- kubectl バージョン 1.21.0 以降
- Helm バージョン 3.0.0 以降
- Visual Studio Code または同等の機能。
Azure アプリケーション コードをダウンロードする
このワークフロー用の完成したアプリケーション コードは、GitHub リポジトリで入手できます。 次のコマンドを実行して、ローカル コンピューター上の aws-to-azure-edw-workshop
というディレクトリにリポジトリを複製します。
git clone https://github.com/Azure-Samples/aks-event-driven-replicate-from-aws ./aws-to-azure-edw-workshop
リポジトリの複製後、aws-to-azure-edw-workshop
ディレクトリに移動し、次のコマンドを実行して Visual Studio Code を起動します。
cd aws-to-azure-edw-workshop
code .
次のステップ
共同作成者
Microsoft では、この記事を保持しています。 最初の寄稿者は次のとおりです。
- Ken Kilty | プリンシパル TPM
- Russell de Pina | プリンシパル TPM
- Jenny Hayes | シニア コンテンツ開発者
- Carol Smith | シニア コンテンツ開発者
- Erin Schaffer |コンテンツ開発者 2
Azure Kubernetes Service