VS Code での Kubernetes の操作
このドキュメントでは、Visual Studio Code を使用してアプリケーションを Kubernetes にデプロイする手順を説明します。Kubernetes は、コンテナ化されたアプリケーションのデプロイ、スケーリング、および管理を自動化するためのオープンソースシステムです。Kubernetes クラスターの作成方法、Kubernetes がアプリケーションについて知る必要があるすべての情報を伝える Kubernetes マニフェストファイル (通常は YAML で記述) の作成方法、そして最後にアプリケーションを Kubernetes クラスターにデプロイする方法について説明します。
始める前に
Docker および kubectl のツールが必要です。Docker のインストール ドキュメントで Docker のセットアップの詳細を、kubectl のインストール ドキュメントで kubectl のセットアップの詳細を確認してください。先に進む前に、シェルから Docker および kubectl コマンドを実行できることを確認してください。
minikube を使用してローカル Kubernetes クラスターを作成するか、Azure Kubernetes Service (AKS) で Azure Kubernetes クラスターを作成できます。このチュートリアルでは、Azure Kubernetes Service (AKS) を使用します。Azure アカウントをデプロイ手順の準備をしておく必要があります。
さらに、MiniKube、Azure Kubernetes Service (AKS)、または別の Kubernetes プロバイダーでコンテナを反復的に実行およびデバッグする場合は、Bridge to Kubernetes 拡張機能をインストールできます。開始するには、Bridge to Kubernetes の使用 を参照してください。
Kubernetes 拡張機能のインストール
完全に統合された Kubernetes エクスペリエンスを実現するには、Kubernetes Tools 拡張機能をインストールできます。これにより、Kubernetes マニフェストと HELM チャートを迅速に開発できます。この拡張機能を使用すると、コンテナ化されたマイクロサービスベースのアプリケーションをローカルまたは Azure Kubernetes クラスターにデプロイし、Kubernetes クラスター上のコンテナで実行されているライブアプリケーションをデバッグすることもできます。また、VS Code で Kubernetes クラスターを簡単に参照および管理でき、Draft とのシームレスな統合により、Kubernetes 開発を効率化できます。
Kubernetes 拡張機能をインストールするには、拡張機能ビューを開き (⇧⌘X (Windows、Linux Ctrl+Shift+X))、「kubernetes」を検索します。Microsoft の Kubernetes 拡張機能を選択します。
アプリケーションのコンテナ化と公開
Docker の操作 チュートリアルに従って、プロジェクトをビルドし、Docker イメージを生成し、Microsoft Docker 拡張機能 を使用してパブリックまたはプライベートコンテナレジストリにプッシュできます。
Kubernetes クラスターの作成と構成
VS Code の Kubernetes 拡張機能を使用して、Azure で実行されている Kubernetes クラスターを作成できます。Kubernetes 拡張機能をインストールすると、エクスプローラーに KUBERNETES が表示されます。[その他] をクリックし、[クラスターの作成] を選択します。指示に従って、クラスタータイプ (ここでは [Azure Kubernetes Service] を選択) を選択し、サブスクリプションを選択して、Azure クラスターと Azure エージェントの設定を行います。ワークフロー全体を完了するには数分かかります。
重要: Azure で Kubernetes クラスターを作成するには、Azure CLI をインストールしてサインインする必要があります。
ヒント: 使用可能な RSA キーファイルがない場合、エラーが発生します。SSH 公開/秘密キーの作成 に従って、Azure Kubernetes クラスターを作成する前にキーを作成してください。
ヒント: Azure Kubernetes クラスターの作成時に、場所と VM サイズが競合することを示すエラーが発生する場合があります。適切な場所と VM サイズを選択するように注意してください。
Azure Kubernetes Service へのアプリケーションのデプロイ
Kubernetes 拡張機能は、Kubernetes マニフェストファイルのオートコンプリート、コードスニペット、および検証を提供します。たとえば、空の YAML ファイルに「Deployment」と入力すると、基本的な構造のマニフェストファイルが自動生成されます。アプリ名、イメージ、およびポートを手動で入力するだけです。
以下はマニフェストファイルの例です
マニフェストファイルの準備ができたら、デプロイを開始するために必要なコマンドは 1 つだけです。コマンドパレット を開き (⇧⌘P (Windows、Linux Ctrl+Shift+P)) 、[Kubernetes: 作成] を実行します。これにより、アプリケーションが Kubernetes クラスターにデプロイされ、開いている Kubernetes マニフェストファイルの設定に従ってオブジェクトが作成されます。
デプロイの確認
デプロイ後、Kubernetes 拡張機能はアプリケーションのステータスを確認するのに役立ちます。エクスプローラーから [ワークロード] をクリックし、[Pod] を右クリックして [取得] を選択し、アプリケーションが開始されたかどうかを確認します。アプリのステータスを表示するには、[サービス] を選択し、アプリを右クリックして、[取得] をクリックします。ステータスが統合ターミナルに出力されます。アプリケーションに EXTERNAL_IP
が割り当てられたら、ブラウザを開いて Web アプリが実行されていることを確認できます。
おめでとうございます! これで、アプリは Azure Kubernetes Service で正常に実行されています!
次のステップ
- Bridge to Kubernetes の概要 - チーム向けの迅速で反復的な Kubernetes 開発エクスペリエンスである Bridge to Kubernetes の詳細について説明します。
- Azure 拡張機能 - VS Code マーケットプレースには、Azure およびクラウド向けの数百の拡張機能があります。
- Azure へのデプロイ - アプリケーションを Azure にデプロイする方法をステップごとに説明します。