azure.aks
Azure Kubernetes Service
一个帮助在 Azure 创建 Kubernetes 服务的角色。
要求
此角色使用 Ansible Azure 模块,支持的最低版本为 2.8.0
。
参考 Microsoft Docs 以了解如何开始使用 Ansible Azure 模块。
角色变量
变量 | 是否必需 | 默认值 | 描述 |
---|---|---|---|
name | 是 | Kubernetes 服务资源的名称 | |
resource_group | 是 | 资源所属的资源组 | |
aad_client_app_id | Azure Active Directory 客户端应用程序的 ID,类型为 Native 。此应用用于用户通过 kubectl 登录。 |
||
aad_server_app_id | Azure Active Directory 服务器应用程序的 ID,类型为 Web app/API 。此应用表示受管理集群的 apiserver(服务器应用)。 |
||
aad_server_app_secret | Azure Active Directory 服务器应用程序的密钥。 | ||
aad_tenant_id | Azure Active Directory 租户的 ID。 | ||
admin_username | azureuser | 用于在节点虚拟机上创建的用户帐户,以便进行 SSH 访问。 | |
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 | Docker 桥接的特定 IP 地址和子网掩码,使用标准 CIDR 表示法。 此地址不得在任何子网 IP 范围内,或在 Kubernetes 服务地址范围内。 |
||
enable_rbac | True | 启用 Kubernetes 角色访问控制。 | |
http_application_routing | False | 启用 http_application_routing 附加组件。配置入口以自动创建公共 DNS 名称。 |
|
kubernetes_version | azure_rm_aks_version 模块的第一个值 |
创建集群时要使用的 Kubernetes 版本。 | |
location | eastus | Kubernetes 服务资源的区域,如果未指定,将使用 resource_group 的位置。如果资源组不存在,则需要指定位置 |
|
max_pods | 110 | 每个节点上可部署的最大 Pod 数。 | |
monitoring | False | 启用 monitoring 附加组件。开启日志分析监控。 |
|
network_plugin | 选项: - kubenet - azure |
要使用的 Kubernetes 网络插件。 | |
network_policy | 要使用的 Kubernetes 网络策略。与 “azure” 网络插件一起使用。指定 azure 用于 Azure 网络策略管理器,calico 用于 Calico 网络策略控制器。 |
||
node_count | 3 | Kubernetes 节点池中的节点数量。 | |
node_osdisk_size_gb | 30 | 节点池中每个节点的操作系统磁盘大小(以 GB 为单位)。 | |
node_vm_size | Standard_DS1_v2 | 作为 Kubernetes 节点创建的虚拟机大小。 | |
nodepool_name | nodepool1 | 节点池名称,最多 12 个字母数字字符。 | |
os_type | Linux | ||
pod_cidr | 使用 kubenet 时分配 Pod IP 的 CIDR 表示法 IP 范围。 此范围不得与任何子网 IP 范围重叠。 |
||
service_cidr | 用于分配服务集群 IP 的 CIDR 表示法 IP 范围。 此范围不得与任何子网 IP 范围重叠。 |
||
storage_profile | ManagedDisks | ||
ssh_key | 从 ~/.ssh/id_rsa.pub 加载 |
安装在节点虚拟机上的公钥路径或密钥内容,以便进行 SSH 访问。 | |
virtual_node | False | 启用 virtual_node 附加组件。使用 Azure 容器实例快速配置 Pods。 |
|
virtual_node_subnet_id | 当 virtual_node 为 True 时创建新资源。 |
||
vnet_subnet_id | 当 virtual_node 为 True 或定义 network_plugin 时创建新资源。 |
部署集群的现有虚拟网络中的子网 ID。 | |
workspace_resource_id | 使用 resource_group 中的第一个日志分析工作区,或在 monitoring 为 True 时创建新资源。 |
用于存储监控数据的现有日志分析工作区的资源 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
下载
380
拥有者
APIs, SDKs and open source projects from Microsoft Azure