Skip to content

1. Kubeconfig の作成 (CLI)

Qmonus Value Streamは、Kubeconfigと呼ばれる認証ファイルを利用して Kubernetesへアプリケーションをデプロイします。ここでは、今回デプロイする対象のKubernetes Namespaceに権限を持つKubeconfigを生成します。

以下の手順にしたがって、ユーザ自身で準備いただいたAKSクラスタにアクセスし、Kubeconfigを生成してください。

info

Kubeconfigの作成には、AKSクラスタに対して下記のIAM権限をKubeconfigを作成するユーザに割り当てる必要があります。

  • Microsoft.ContainerService/managedClusters/listClusterAdminCredential/action

1-1. Azure CLIのインストール

Azure環境でKubeconfigを作成するためにはAzure CLI (AZ) が必要です。 以下のページを参考に、Azure CLIをインストールしてください。 Azure CLIをインストールする方法

1-2. Azure CLIでのログイン

Azure CLIのインストールが完了したら以下のコマンドを実行してAzureへログインします。 コマンドを実行するとWebブラウザが開き認証を求められますので、ご自身のAzureアカウントでログインしてください。

info

  • コマンドの実行に必要なtenant_idは以下の手順で確認します。
      1. Azure Portalにログイン
      1. Microsoft Entra External ID を選択
      1. メニューから概要を選択し、画面に表示されたテナントIDをコピー

AzureのテナントIDを環境変数に定義

bash
export tenant_id=(テナントID)
bash
az login --tenant ${tenant_id}

コマンドを実行するとWebブラウザが開きますのでログインして下さい。 ログインが完了するとログインしたテナントとユーザの詳細情報が表示されます。

json
[
  {
    "cloudName": "AzureCloud",
    "homeTenantId": "テナントID",
    "id": "テナントID",
    "isDefault": true,
    "managedByTenants": [],
    "name": "Microsoft Azure",
    "state": "Enabled",
    "tenantId": "テナントID",
    "user": {
      "name": "ログインしたユーザのID",
      "type": "user"
    }
  }
]

1-3. Kubeconfigの作成

利用するKubernetesクラスタ名, Kubernetesクラスタが存在するリソースグループ名, 新規作成するK8sNamesapceを環境変数に定義

bash
export cluster_name=(利用するKubernetesクラスタ名)
bash
export resource_group=(Kubernetesクラスタが存在するリソースグループ名)
bash
export k8sNamespace=(新規作成するK8sNamesapce)

定義した環境変数を利用してKubernetesへ接続

bash
az aks get-credentials --admin --name ${cluster_name} --resource-group ${resource_group}

Kubeconfigを生成

Namespace作成時に yes/no を聞かれる場合は yes と入力してください。

bash
qvsctl plugin gen-kubeconfig -n ${k8sNamespace}

Kubeconfigを確認

bash
cat output.kubeconfig.yaml