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_nodeがTrueのときに新しいリソースを作成します。 |
||
| vnet_subnet_id | virtual_nodeがTrueのときまたはnetwork_pluginが定義されているときに新しいリソースを作成します。 |
クラスターをデプロイするための既存VNet内のサブネットのID。 | |
| workspace_resource_id | resource_group内の最初のLog Analyticsワークスペースを使用するか、monitoringがTrueのときに新しいリソースを作成します。 |
モニタリングデータを保存するために使用する既存の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
インストール
ansible-galaxy install azure.aksライセンス
mit
ダウンロード
391
所有者
APIs, SDKs and open source projects from Microsoft Azure
