azure.aks

Azure Kubernetes Service

AzureでKubernetes Serviceを作成するのを助ける役割です。

要件

この役割はAnsibleのAzureモジュールを使用し、サポートされている最小バージョンは2.8.0です。

Ansible Azureモジュールの始め方については、Microsoft Docsをご覧ください。

役割の変数

変数 必須 デフォルト値 説明
name はい Kubernetes Serviceリソースの名前
resource_group はい リソースのリソースグループ
aad_client_app_id NativeタイプのAzure Active DirectoryクライアントアプリケーションのID。
このアプリケーションはkubectl経由のユーザーログイン用です。
aad_server_app_id Web app/APIタイプのAzure Active DirectoryサーバーアプリケーションのID。
このアプリケーションは管理されたクラスターのapiserverを表します(サーバーアプリケーション)。
aad_server_app_secret Azure Active Directoryサーバーアプリケーションの秘密。
aad_tenant_id Azure Active DirectoryテナントのID。
admin_username azureuser SSHアクセス用にノードVMに作成するユーザーアカウント。
service_principal ansible-playbook、環境変数AZURE_CLIENT_IDまたは~/.azure/credentialsから読み込む Azure APIへの認証に使用するサービスプリンシパル。
client_secret ansible-playbook、環境変数AZURE_SECRETまたは~/.azure/credentialsから読み込む サービスプリンシパルに関連付けられた秘密。
dns_prefix nameと同じ 作成されるホスト名のプレフィックス。
dns_service_ip Kubernetes DNSサービスに割り当てられるIPアドレス。
このアドレスはservice_cidrで指定されたKubernetesサービスアドレス範囲内である必要があります。
docker_bridge_cidr 標準CIDR表記を使用したDockerブリッジの特定のIPアドレスとネットマスク。
このアドレスはサブネットのIP範囲やKubernetesサービスのアドレス範囲に含まれてはいけません。
enable_rbac True Kubernetesのロールベースのアクセス制御を有効にします。
http_application_routing False http_application_routingアドオンを有効にします。自動的なパブリックDNS名の作成でingressを構成します。
kubernetes_version azure_rm_aks_versionモジュールの最初の値 クラスター作成に使用するKubernetesのバージョン。
location eastus Kubernetes Serviceリソースの地域。指定されていない場合はresource_groupの位置を使用します。
リソースグループが存在しない場合は、位置が必要です。
max_pods 110 ノードにデプロイできるポッドの最大数。
monitoring False monitoringアドオンを有効にします。Log Analyticsモニタリングをオンにします。
network_plugin 選択肢:
 - kubenet
 - azure
使用するKubernetesのネットワークプラグイン。
network_policy 使用するKubernetesのネットワークポリシー。azureネットワークプラグインと一緒に使用します。Azureネットワークポリシーマネージャーにはazureを、Calicoネットワークポリシーコントローラーにはcalicoを指定します。
node_count 3 Kubernetesノードプール内のノードの数。
node_osdisk_size_gb 30 ノードプール内の各ノードのOSディスクのサイズ(GB)。
node_vm_size Standard_DS1_v2 Kubernetesノードとして作成する仮想マシンのサイズ。
nodepool_name nodepool1 ノードプールの名前、最大12文字の英数字。
os_type Linux
pod_cidr kubenetが使用された場合にポッドIPを割り当てるためのCIDR表記のIP範囲。
この範囲はサブネットのIP範囲とは重複してはいけません。
service_cidr サービスクラスターIPを割り当てるためのCIDR表記のIP範囲。
この範囲はサブネットのIP範囲とは重複してはいけません。
storage_profile ManagedDisks
ssh_key ~/.ssh/id_rsa.pubから読み込む ノードVMにSSHアクセス用にインストールする公開鍵のパスまたは内容。
virtual_node False virtual_nodeアドオンを有効にします。Azure Container Instanceを使用してポッドを迅速にプロビジョニングします。
virtual_node_subnet_id virtual_nodeTrueのときに新しいリソースを作成します。
vnet_subnet_id virtual_nodeTrueのときまたはnetwork_pluginが定義されているときに新しいリソースを作成します。 クラスターをデプロイするための既存VNet内のサブネットのID。
workspace_resource_id resource_group内の最初のLog Analyticsワークスペースを使用するか、monitoringTrueのときに新しいリソースを作成します。 モニタリングデータを保存するために使用する既存のLog AnalyticsワークスペースのリソースID。

サンプルプレイブック

役割をインストールするには:

ansible-galaxy install azure.aks

基本的なAKSを作成するためにプレイブックで役割を使用します:

- hosts: localhost
  tasks:
      - include_role:
           name: azure.aks
        vars:
           name: akscluster
           resource_group: aksroletest

モニタリング付きのAKSを作成します:

- hosts: localhost
  tasks:
      - include_role:
           name: azure.aks
        vars:
           monitoring: yes
           name: akscluster
           resource_group: aksroletest

ライセンス

MIT

プロジェクトについて

Manage Azure Kubernetes Service

インストール
ansible-galaxy install azure.aks
ライセンス
mit
ダウンロード
380
所有者
APIs, SDKs and open source projects from Microsoft Azure