VS CodeでのAKSツールと診断
このドキュメントでは、Visual Studio Code から直接 AKS クラスターを操作する方法をいくつか説明します。Azure Kubernetes Services は、フルマネージド型のKubernetes サービスです。Azure Kubernetes Service (AKS) は、サーバーレスの Kubernetes、継続的インテグレーションと継続的デリバリー (CI/CD) のエクスペリエンスを、エンタープライズグレードのセキュリティとガバナンスと共に提供します。Azure Kubernetes Service (AKS) は、コンテナ化されたアプリケーションのデプロイ、スケーリング、管理を自動化するためのオープンソースシステムです。
AKS クラスターで診断ヘルスチェックを実行する方法、より詳細なトラブルシューティングのためにAKS Periscopeを起動する方法、Azure Service Operatorをデプロイする方法、またはGitHub Actions Starter Workflowsを生成する方法をご紹介します。
はじめる前に
AKS VS Code拡張機能は、Kubernetes VS Code拡張機能に親依存関係があります。
Kubernetes VS Code拡張機能をダウンロードする必要があります。
このガイドは、既存のAKSクラスターで実行することも、AKSクラスターを作成することもできます。
Azure Kubernetes Services拡張機能をインストールする
完全に統合されたAzure Kubernetes診断エクスペリエンスのために、Azure Kubernetes Services Tools拡張機能をインストールできます。
この拡張機能を使用すると、VS Code環境からAKSクラスターを簡単に表示および管理できます。
Azure Kubernetes Services VS Code拡張機能をインストールするには、[拡張機能]ビュー (⇧⌘X (Windows, Linux Ctrl+Shift+X)) を開き、「AKS」を検索します。Microsoft Azure Kubernetes Services拡張機能を選択します。
インストール
-
VS Code 用のAzure Kubernetes Service拡張機能をダウンロードしてインストールします。
-
拡張機能のインストールが完了するまで待ち、プロンプトが表示されたらVS Codeを再読み込みします。
-
インストールが完了すると、Cloudsの下にAzureというセクションが表示されます。
-
Sign in to Azure…を選択してAzureアカウントにサインインします。
機能
Azureアカウントに正常にサインインすると、Azureという名前のセクションの下に、Azureサブスクリプション内のすべてのAKSクラスターを表示できます。AKSクラスターを右クリックし、メニュー項目を選択して次のアクションを実行できます。
クラスターでAKS診断を実行する
GitHubワークフローを開始する
Kubectlコマンドを実行する
Kubeconfigにマージする
AKSクラスターを右クリックし、Merge into Kubeconfigを選択して、選択したAKSクラスターをアクティブなkubeconfigファイルに追加します。
Kubeconfigを保存する
AKSクラスターを右クリックし、Save Kubeconfigを選択して、選択したAKSクラスターのkubeconfigを新しいファイルとして保存します。
AKS診断
AKSクラスターを右クリックし、Run AKS Diagnosticsを選択すると、AKSクラスターのバックエンドテレメトリに基づいた診断情報が表示されます。
- ベストプラクティス
- 作成、アップグレード、削除、スケーリングの問題
- IDとセキュリティ
- ネットワークと接続の問題
- ノードの正常性
AKSクラスターでさらにチェックを実行してトラブルシューティングを行い、推奨される解決策を入手するには、ページ上部の[AKS Diagnostics]リンクを選択して、選択したクラスター用に開きます。AKS診断の詳細については、AKS診断の概要を参照してください。
Azureポータルでクラスターに移動する
AKSクラスターを右クリックし、Show In Azure Portalを選択すると、Azureポータルでクラスターの[概要]ページが開きます。
AKSクラスターのプロパティを表示する
AKSクラスターを右クリックし、Show Propertiesを選択すると、プロビジョニング状態、FQDN、k8sバージョンなどのAKSクラスターおよびエージェントプールのプロパティと、ノードバージョン、VMタイプ、VMサイズ、OSタイプ、OSディスクサイズ、ノードのプロビジョニング状態などのノードプロパティが表示されます。
AKS Periscope
AKSクラスターを右クリックし、Run AKS Periscopeを選択すると、AKSクラスターから詳細な診断情報が抽出され、Azureストレージアカウントにエクスポートされます。このオプションを選択すると、収集されたログのダウンロードリンクと、7日間有効な共有可能なリンクを生成するオプションを提供するWebビューが読み込まれます。
すべてのノードのログが表示されない場合は、ログがまだアップロード中である可能性があります。Generate Linkボタンをもう一度押して、さらにログを読み込みます。
詳細については、AKS Periscopeをご覧ください。
ストレージアカウントの構成
AKS Periscopeを実行するには、AKSクラスターの診断設定に関連付けられたストレージアカウントが必要です。
AKSクラスターの診断設定に関連付けられているストレージアカウントが1つしかない場合、収集されたログはデフォルトで関連付けられたストレージアカウントに保存されます。
AKSクラスターの診断設定に関連付けられているストレージアカウントが複数ある場合、拡張機能は収集されたログを保存するためのストレージアカウントを選択するよう促します。
診断設定にストレージアカウントが構成されていない場合は、次の手順に従って有効にできます。
-
AKSクラスターを右クリックし、Show In Azure Portalを選択します。
-
左側のナビゲーションでMonitoringの下にあるDiagnostic Settingsを選択します。
-
Add diagnostic settingを選択します。
-
myAKSClusterLogsなどの名前を入力し、Archive to a storage accountオプションを選択します。
-
任意のストレージアカウントを選択します。
-
利用可能なログのリストから、有効にするログを選択します。
注: 発生するコストは、ストレージアカウントの使用状況とAzure Storageポリシーによって異なります。
-
準備ができたら、Saveを選択して、選択したログの収集を有効にします。
診断設定の詳細については、プラットフォームのログとメトリックを異なる宛先に送信するための診断設定を作成するをご覧ください。
Azure Service Operatorをインストールする
AKSクラスターを右クリックし、Install Azure Service Operatorを選択すると、最新バージョンのAzure Service Operator (ASO) をAKSクラスターに簡単にデプロイし、Kubernetes内でAzureリソースをプロビジョニングできます。このオプションを選択すると、ASOがAzureリソース操作を実行する際に使用するサービスプリンシパルを求められます。このサービスプリンシパルには、適切なアクセス許可(通常は適切なスコープでの共同作成者)が必要です。サービスプリンシパルの詳細を入力し、Submitを選択してAzure Service Operatorのインストールを開始します。
Azure Service Operatorのインストールは、ASOが以前にインストールされたことのないAKSクラスターでのみ実行できます。手動でインストールを開始している場合は、Azure Service Operatorの指示に従って完了してください。
Azure Service Operatorの詳細については、Azure Service Operator (for Kubernetes)をご覧ください。Azure Service Operatorで問題が発生している場合は、Azure Service Operator (ASO) のトラブルシューティングをご覧ください。
GitHubワークフローを作成する
AKSクラスターを右クリックし、Create GitHub Workflowを選択すると、ワークフローのスターターテンプレートを簡単に開いて作成できます。これにより、以下のリソースグループとクラスター名が事前に設定されたワークフローテンプレートを迅速に生成できます。
Azureポータルからクラスターを作成する
AKSサブスクリプションを右クリックし、Create Cluster From Azure Portalを選択すると、AzureポータルのAKSクラスター作成ページに簡単に移動できます。
AKSクラスターを開始または停止する
AKSクラスターを右クリックし、Show Propertiesを選択すると、AKSクラスターのプロパティが表示されます。ページには、クラスターを開始または停止するためのStop/Start Clusterボタンがあります。
AKSクラスターからKubectlコマンドを実行する
AKSクラスターを右クリックし、Run KubectlCommandsを選択すると、クラスターでKubectlコマンドを実行できます。現在、以下のKubectlコマンドが利用可能です。
- サービスを記述する
- すべてのPodを取得する
- APIリソース
- クラスター情報を取得する
- ノードを取得する
- すべてのイベントを取得する
おめでとうございます!これで、このVS Code拡張機能の操作方法がわかりました。
次のステップ
- Azure 拡張機能 - VS Code Marketplace には、Azure およびクラウド用の何百もの拡張機能があります。
- Azure Kubernetes Service診断 (プレビュー) の概要
- Azure Service Operator - Azure Service Operatorについて学ぶ。
- AKS Periscope
- GitHub AKSスターターワークフロー