#azure #kubernetes #terraform #azure-aks
#azure #kubernetes #terraform #azure-aks
Вопрос:
Я новичок в домене DevOps и Terraform, и я хотел бы спросить следующее. Я уже создал виртуальную сеть (с использованием портала), которая называется «myVNET» в группе ресурсов «Сети». Я пытаюсь реализовать кластер AKS с использованием Terraform. Мой main.tf файл находится ниже
provider "azurerm" {
subscription_id = var.subscription_id
client_id = var.client_id
client_secret = var.client_secret
tenant_id = var.tenant_id
features {}
}
resource "azurerm_resource_group" "MyPlatform" {
name = var.resourcename
location = var.location
}
resource "azurerm_kubernetes_cluster" "aks-cluster" {
name = var.clustername
location = azurerm_resource_group.MyPlatform.location
resource_group_name = azurerm_resource_group.MyPlatform.name
dns_prefix = var.dnspreffix
default_node_pool {
name = "default"
node_count = var.agentnode
vm_size = var.size
}
service_principal {
client_id = var.client_id
client_secret = var.client_secret
}
network_profile {
network_plugin = "azure"
load_balancer_sku = "standard"
network_policy = "calico"
}
}
Мой вопрос заключается в следующем: как я могу присоединить свой кластер к своей виртуальной сети?
Ответ №1:
Это делается путем присвоения идентификатора подсети пулу узлов vnet_subnet_id.
data "azurerm_subnet" "subnet" {
name = "<name of the subnet to run in>"
virtual_network_name = "MyVNET"
resource_group_name = "Networks"
}
...
resource "azurerm_kubernetes_cluster" "aks-cluster" {
...
default_node_pool {
name = "default"
...
vnet_subnet_id = data.azurerm_subnet.subnet.id
}
...
Вы можете ссылаться на этот существующий модуль для создания собственного модуля, если не используете его напрямую.