当前位置: 首页 > 知识库问答 >
问题:

Terraform Azure AKS内部负载均衡器

宇文俊风
2023-03-14

我通过以下terraform语句将Azure AKS集群部署到现有的VNET中。它工作了,AKS集群是用Azure负载均衡器和分配给它的公共IP地址创建的。我只需要一个内部Azure负载平衡器的设置。我必须如何更改terraform代码来只获得一个内部Azure负载均衡器?谢谢

resource "azurerm_kubernetes_cluster" "aks" {

  name = "${var.tags.department}-${var.tags.stage}-${var.tags.environment}_aks"

  location = var.location

  resource_group_name = azurerm_resource_group.aksrg.name

  dns_prefix = lower("${var.tags.department}-${var.tags.stage}-${var.tags.environment}-aks")

  private_link_enabled = true

  node_resource_group =     "${var.tags.department}-${var.tags.stage}-${var.tags.environment}_aks_nodes_rg"

  linux_profile {

    admin_username = "testadmin"

  ssh_key {

    key_data = file("/ssh/id_rsa.pub") #ssh-keygen

    }

  }

  default_node_pool {

    name = "default"

    vm_size = "Standard_DS1_v2"

    enable_auto_scaling = false

    enable_node_public_ip = false

    node_count = 1

    vnet_subnet_id = azurerm_subnet.akssubnet.id

  }

  network_profile {

    network_plugin = "azure"

    service_cidr = "172.100.0.0/24"

    dns_service_ip = "172.100.0.10"

    docker_bridge_cidr = "172.101.0.1/16"

    load_balancer_sku = "standard"

  }

  service_principal {

    client_id = azurerm_azuread_service_principal.aks_sp.application_id

    client_secret = azurerm_azuread_service_principal_password.aks_sp_pwd.value

  }



addon_profile {

    kube_dashboard {

      enabled = true

   }

}

  role_based_access_control {

    enabled = false

  }

}

共有1个答案

齐嘉庆
2023-03-14

对于您的问题,您可以看到如下所示设置了AKS集群的network_profile:

network_profile {

    network_plugin = "azure"

    service_cidr = "172.100.0.0/24"

    dns_service_ip = "172.100.0.10"

    docker_bridge_cidr = "172.101.0.1/16"

    load_balancer_sku = "standard"

  }

并且设置属性load_balancer_sku,它将为您创建一个标准类型的负载均衡器。并且此属性只能使用值basicstandard。因此,在没有负载均衡器的情况下创建AKS集群似乎是不可能的。您可以在GitHub中看到这个问题。正如它所说的,最新的CLI也不能帮助您实现这一点。

如果你对这个问题有更多的问题,请告诉我。如果我能帮你解决问题,我很高兴。

 类似资料:
  • 负载均衡(Load balancing)是一种计算机网络技术,用来在多个计算机(计算机集群)、网络连接、CPU、磁盘驱动器或其他资源中分配负载,以达到最佳化资源使用、最大化吞吐率、最小化响应时间、同时避免过载的目的。 使用带有负载均衡的多个服务器组件,取代单一的组件,可以通过冗余提高可靠性。负载均衡服务通常是由专用软体和硬件来完成。 负载均衡最重要的一个应用是利用多台服务器提供单一服务,这种方案有

  • 负载均衡包括负载均衡实例、访问控制及证书。 实例 负载均衡实例是一个运行的负载均衡服务,通过设置的虚拟IP接收流量并将其转发分配给后端服务器。 访问控制 访问控制用于设置访问负载均衡的IP白名单或IP黑名单。 证书 当在负载均衡实例上配置HTTPS监听转发来自HTTPS协议的请求时,需要配置证书。

  • 一个简单的负载均衡的示例,把www.domain.com均衡到本机不同的端口,也可以改为均衡到不同的地址上。> http { : upstream myproject { : server 127.0.0.1:8000 weight=3; : server 127.0.0.1:8001; : server 127.0.0.1:8002; : server 127.0.0.1:8003; : }

  • SOFARPC 提供多种负载均衡算法,目前支持以下五种: 类型 名称 描述 random 随机算法 默认负载均衡算法。 localPref 本地优先算法 优先发现是否本机发布了该服务,如果没有再采用随机算法。 roundRobin 轮询算法 方法级别的轮询,各个方法间各自轮询,互不影响。 consistentHash 一致性hash算法 同样的方法级别的请求会路由到同样的节点。 weightRou

  • 作为开发人员,我们在Azure Service Fabric上编写了微服务,我们可以在Azure中以某种PaaS概念为许多客户运行它们。但我们的一些客户不想在云中运行,因为数据库是内部的,不能从外部获得,甚至不能通过DMZ获得。没关系,我们promise支持它,因为Azure Service Fabric可以作为集群安装在现场。 我建议在一台(或多台)独立的机器上使用负载平衡器,如HA-Proxy

  • 本节将会讨论常见的分布式系统负载均衡手段。 6.5.1 常见的负载均衡思路 如果我们不考虑均衡的话,现在有n个服务节点,我们完成业务流程实际上只需要从这n个中挑出其中的一个。有几种思路: 按顺序挑: 例如上次选了第一台,那么这次就选第二台,下次第三台,如果已经到了最后一台,那么下一次从第一台开始。这种情况下我们可以把服务节点信息都存储在数组中,每次请求完成下游之后,将一个索引后移即可。在移到尽头时