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