Azure Kubernetes Service (AKS) 用 Draft (プレビュー)
Draft は、コンテナ化されていないアプリケーションを作成し、Dockerfiles、Kubernetes マニフェスト、Helm チャート、Kustomize 構成、コンテナ化されたアプリケーションに関連付けられているその他の成果物を生成することで、Kubernetes 開発を合理化するオープンソース プロジェクトです。 Draft では、GitHub Action ワークフロー ファイルを作成して、アプリケーションをすばやくビルドし、Kubernetes クラスターにデプロイすることもできます。
しくみ
Draft には、Kubernetes での開発を容易にするのに役立つ次のコマンドがあります。
draft create
: Dockerfile と適切なマニフェスト ファイルを作成します。draft setup-gh
: GitHub OIDC を設定します。draft generate-workflow
: クラスターにデプロイするための GitHub アクション ワークフロー ファイルを生成します。draft up
: GitHub OIDC を設定し、前の 2 つのコマンドを組み合わせて GitHub アクション ワークフロー ファイルを生成します。
前提条件
- Azure サブスクリプションをお持ちでない場合は、開始する前に 無料アカウント を作成してください。
- 最新バージョンの Azure CLI と aks-preview 拡張機能をインストールしてください。
- まだない場合は、AKS クラスターと Azure Container Registry インスタンスを作成する必要があります。
aks-preview
Azure CLI 拡張機能をインストールする
重要
AKS のプレビュー機能は、セルフサービスのオプトイン単位で利用できます。 プレビューは、"現状有姿" および "利用可能な限度" で提供され、サービス レベル アグリーメントおよび限定保証から除外されるものとします。 AKS プレビューは、ベストエフォート ベースでカスタマー サポートによって部分的にカバーされます。 そのため、これらの機能は、運用環境での使用を意図していません。 詳細については、次のサポート記事を参照してください。
az extension add
コマンドを使用してaks-preview
拡張機能をインストールします。az extension add --name aks-preview
az extension update
コマンドを使用して拡張機能を更新して、最新バージョンが確実にインストールされた状態にします。az extension update --name aks-preview
draft create
を使用した成果物の作成
draft create
を使用して、アプリケーションを AKS クラスターにデプロイするために必要な Dockerfile、Helm チャート、Kubernetes マニフェスト、または Kustomize ファイルを作成できます。
az aks draft create
コマンドを使用して成果物を作成します。az aks draft create
次の例に示すように、
--destination
フラグを使用して、特定のディレクトリでコマンドを実行することもできます。az aks draft create --destination /Workspaces/ContosoAir
draft setup-gh
を使用して GitHub OIDC を設定する
Draft を使用するには、draft setup-gh
を使用して GitHub にアプリケーションを登録する必要があります。 このステップは、リポジトリごとに 1 回だけ実行する必要があります。
az aks draft setup-gh
コマンドを使用して、GitHub にアプリケーションを登録します。az aks draft setup-gh
draft generate-workflow
を使用して、デプロイ用の GitHub アクション ワークフロー ファイルを生成する
成果物を作成して GitHub OIDC を設定した後、draft generate-workflow
を使用して GitHub アクション ワークフロー ファイルを生成し、AKS クラスターにアプリケーションをデプロイするアクションを作成できます。 ワークフロー ファイルが生成されたら、GitHub アクションを開始するためにリポジトリにコミットする必要があります。
az aks draft generate-workflow
コマンドを使用して、GitHub アクション ワークフロー ファイルを生成します。az aks draft generate-workflow
次の例に示すように、
--destination
フラグを使用して、特定のディレクトリでコマンドを実行することもできます。az aks draft generate-workflow --destination /Workspaces/ContosoAir
GitHub OpenID Connect (OIDC) を設定し、draft up
を使用して GitHub アクション ワークフロー ファイルを生成する
draft up
は、GitHub OIDC の設定を実行し、デプロイ用の GitHub アクション ワークフロー ファイルを生成するための 1 つのコマンドです。 これは、draft setup-gh
コマンドと draft generate-workflow
コマンドを効果的に組み合わせたものであり、新しいリポジトリで初めて開始するときに最も一般的に使用され、1 回だけ実行する必要があります。 GitHub アクション ワークフロー ファイルに対する後続の更新は、draft generate-workflow
を使用して行うことができます。
az aks draft up
コマンドを使用して、GitHub OIDC を設定し、GitHub アクション ワークフロー ファイルを生成します。az aks draft up
次の例に示すように、
--destination
フラグを使用して、特定のディレクトリでコマンドを実行することもできます。az aks draft up --destination /Workspaces/ContosoAir
Draft とともにアプリケーション ルーティングを使用して、インターネット経由でアプリケーションにアクセスできるようにする
[アプリケーション ルーティング]app-routingは、Web アプリケーションを Kubernetes で安全に稼働させる最も簡単な方法です。 アプリケーション ルーティングは、イングレス コントローラーと証明書および DNS 管理の複雑さを取り除き、独自のものの使用を考えているエンタープライズ向けの構成を提供します。 アプリケーション ルーティングは、制限なしで使用できる nginx に基づくマネージド イングレス コントローラーを提供し、Open Service Mesh とそのまま統合して、クラスター内通信をセキュリティで保護します。
az aks draft update
を使用してアプリケーション ルーティングで Draft を設定し、メッセージが表示されたら、DNS 名と Azure Key Vault で保存された証明書を渡します。az aks draft update
次の例に示すように、
--destination
フラグを使用して、特定のディレクトリでコマンドを実行することもできます。az aks draft update --destination /Workspaces/ContosoAir
Azure Kubernetes Service