Azure Kubernetes Service (AKS) とは
Azure Kubernetes Service (AKS) は、コンテナー化されたアプリケーションをデプロイして管理するために使用できるマネージド Kubernetes サービスです。 AKS を使用するには、最小限のコンテナー オーケストレーションの専門知識が必要です。 AKS では、責任の多くを Azure にオフロードすることで、Kubernetes の管理の複雑さと運用上のオーバーヘッドを軽減します。 AKS は、高可用性、スケーラビリティ、移植性を必要とするコンテナー化されたアプリケーションのデプロイおよび管理と、複数のリージョンへのアプリケーションのデプロイ、オープンソース ツールの使用、既存の DevOps ツールとの統合に最適なプラットフォームです。
この記事は、スケーラブルで自動化されたマネージド Kubernetes ソリューションを探しているプラットフォーム管理者または開発者を対象としています。
AKS の概要
AKS では、Kubernetes の管理の責任を Azure に移すことで、その複雑さと運用上のオーバーヘッドを軽減します。 AKS クラスターを作成すると、Azure は自動的にコントロール プレーンを作成し、コストなしで構成します。 Azure プラットフォームは、アプリケーションを実行するためにデプロイする Kubernetes オブジェクトとワーカー ノードを担当する AKS コントロール プレーンを管理します。 Azure では、正常性の監視やメンテナンスなどの重要な操作が処理され、アプリケーションを実行する AKS ノードに対してのみ料金が発生します。
Note
AKS は CNCF 認定を受けており、SOC、ISO、PCI DSS、HIPAA に準拠しています。 詳細については、Microsoft Azure コンプライアンスの概要を参照してください。
Azure のコンテナー ソリューション
Azure には、さまざまなワークロード、アーキテクチャ、ビジネス ニーズに対応するように設計されたさまざまなコンテナー ソリューションが用意されています。
コンテナー ソリューション | リソースの種類 |
---|---|
Azure Kubernetes Service | Managed Kubernetes |
Azure Red Hat OpenShift | Managed Kubernetes |
Azure Arc 対応 Kubernetes | アンマネージド Kubernetes |
Azure Container Instances | マネージド Docker コンテナー インスタンス |
Azure Container Apps | Managed Kubernetes |
さまざまなソリューションの比較の詳細については、次のリソースを参照してください。
AKS を使用するタイミング
次の一覧に、AKS の一般的なユースケースをいくつか示します。
- AKS によるコンテナーへのリフト アンド シフト: 既存のアプリケーションをコンテナーに移行し、フル マネージド Kubernetes 環境で実行します。
- AKS を使用したマイクロサービス: 合理化された水平スケーリング、自己復旧、負荷分散、シークレット管理により、マイクロサービス ベースのアプリケーションのデプロイと管理を簡素化します。
- AKS 用のセキュリティで保護された DevOps: Kubernetes でセキュリティで保護された DevOps を実装することで、効率的に速度とセキュリティのバランスを取ります。
- ACI を使用した AKS からのバースト: 仮想ノードを使用して、秒単位で開始し、需要に合わせてスケーリングする ACI 内のポッドをプロビジョニングします。
- AKS を使用した機械学習モデル トレーニング: TensorFlow や Kubeflow などの使い慣れたツールで、大規模なデータセットを使用してモデルをトレーニングします。
- AKS を使用したデータ ストリーミング: センサーを介して収集された数百万のデータ ポイントを使用してリアルタイムのデータ ストリームを取り込んで処理し、高速な分析と計算を実行して、複雑なシナリオに関する分析情報を開発します。
- AKS での Windows コンテナーの使用: AKS で Windows Server コンテナーを実行して、Windows アプリケーションとインフラストラクチャを最新化します。
AKS の機能
次の表に、AKS の主な機能の一部を示します。
機能 | 説明 |
---|---|
ID とセキュリティ管理 | • 組み込みのガードレールとインターネット セキュリティ ベンチマークを使用して、Azure Policy を使用して規制コンプライアンス制御を適用します。 • Kubernetes RBAC と統合して、クラスター リソースへのアクセスを制限します。 • Microsoft Entra ID を使用して、既存の ID とグループ メンバーシップに基づいて、Kubernetes アクセスを設定します。 |
ログ記録と監視 | • Azure Monitor の機能である Container Insights と統合して、クラスターとコンテナー化されたアプリケーションの正常性とパフォーマンスを監視します。 • ネットワーク監視を設定して、クラスターからネットワーク トラフィック データを収集して視覚化します。 |
合理的なデプロイ | • Kubernetes の事前構築済みクラスター構成をスマートな既定値で使用します。 • Kubernetes イベント ドリブン オートスケーラー (KEDA) を使用してアプリケーションを自動スケーリングします。 • AKS 用 Draft を使用してソース コードを準備し、運用環境用にアプリケーションを準備します。 |
クラスターとノード | • ストレージをノードやポッドに接続し、クラスター コンポーネントをアップグレードして、GPU を使用します。 • 混在するオペレーティング システムと Windows Server コンテナーをサポートするために複数のノード プールを実行するクラスターを作成します。 • クラスター オートスケーラーと水平ポッド オートスケーラーを使用して自動スケーリングを構成します。 • コンフィデンシャル コンピューティング ノードを使用してクラスターをデプロイして、ハードウェアベースの高信頼実行環境でコンテナーを実行できます。 |
ストレージ ボリュームのサポート | • 永続データ用の静的または動的ストレージ ボリュームをマウントします。 • シングル ポッド アクセスに Azure Disks を使用し、複数の同時ポッド アクセスに Azure Files を使用します。 • Azure NetApp Files を使用して、高パフォーマンス、高スループット、低遅延のファイル共有を実現します。 |
ネットワーク | • ニーズに適したネットワーク オプションを活用します。 • サードパーティの CNI プラグインを使用するために、独自のコンテナー ネットワーク インターフェイス (CNI) を導入します。 • nginx を使用したアプリケーション ルーティング アドオンを使用して、クラスターにデプロイされたアプリケーションに簡単にアクセスできます。 |
開発ツールの統合 | • Helm を使用して AKS で開発します。 • ワークロードを管理するために、Visual Studio Code 用の Kubernetes 拡張機能をインストールします。 • Istio ベースのサービス メッシュ アドオンを使用して Istio の機能を活用します。 |
AKS の概要
次のリソースを使用して AKS の使用を開始します。
- AKS 用の Kubernetes のコア概念について学習します。
- AKS チュートリアル シリーズを使用して、AKS でのアプリケーションのデプロイを評価します。
- AKS 用の Azure Well-Architected フレームワークを確認して、AKS で信頼性の高い、セキュリティで保護され、効率的でコスト効率の高いアプリケーションを設計および運用する方法を学習します。
- リファレンス アーキテクチャを使用して、AKS の設計と運用を計画します。
- AKS でのコスト最適化の構成オプションと推奨されるベスト プラクティスについて説明します。
Azure Kubernetes Service