可以用作AKS节点的最便宜的VM是什么?

时间:2019-02-25 23:48:38

标签: azure kubernetes terraform

我正在测试一些Terraform代码以创建Kubernetes集群,所以我选择了最小/最便宜的VM

resource "azurerm_kubernetes_cluster" "k8s" {
    name                = "${var.cluster_name}"
    location            = "${azurerm_resource_group.resource_group.location}"
    resource_group_name = "${azurerm_resource_group.resource_group.name}"
    dns_prefix          = "${var.dns_prefix}"

    agent_pool_profile {
        name            = "agentpool"
        count           = "${var.agent_count}"
        vm_size         = "Standard_B1s"
        os_type         = "Linux"
        os_disk_size_gb = "${var.agent_disk_size}"
    }

    service_principal {
        client_id     = "${var.client_id}"
        client_secret = "${var.client_secret}"
    }
}

但是,当我terraform apply时,我从天青返回此错误消息:

  

“为此群集Standard_B1s选择的VM SKU没有足够的CPU /内存来作为AKS节点运行。”

如何列出AKS节点的有效VM SKU并按成本排序?

3 个答案:

答案 0 :(得分:5)

您需要选择一个具有至少3.5 GB内存的实例。从此blog阅读关于节点大小的注释。您可以在Azure sales site上列出VM的大小和价格。

当前,最便宜的是具有4 GB RAM的Standard_B2s。您也可以直接在Azure门户中对其进行排序。 enter image description here

答案 1 :(得分:2)

如果您调整vmss的大小,然后升级实例,您将获得比B2便宜的B1。 Linux每月$ 3.80,Windows每月$ 10.22

无论出于何种原因,您都无法在Terraform中执行此操作。

步骤1: 点击vmss->设置->大小->查看所有大小(以小字体显示)->调整大小

步骤2: 单击vmss->设置->实例-> _0->升级(在顶部控制器栏)

我不必担心虚拟机实例的大小。这是Terraform使您脱颖而出的地方。 os_disk_size_gb。将此值设置得较低,否则默认为每个实例每月$ 20。似乎没有办法更改层,它们默认使用高级128GB磁盘,似乎您每个节点只花30美元。

更新: 我开始遇到大小为b1ls的实例的一些问题。

答案 2 :(得分:0)

只需添加到现有答案即可。我认为没有列出所有有效大小的vms的枚举,但是如果您查看API definition,它会清楚地列出所有这些大小。

您可以使用azureprice.net或类似的方法找出您所在地区(通常是B系列)中最便宜的vm。