【问题标题】:Delete instance from scaleset using terraform使用 terraform 从规模集中删除实例
【发布时间】:2020-07-07 22:36:07
【问题描述】:

我正在尝试使用 terraform 从我的 scaleset 中删除特定实例。我知道这有一个 REST API:

https://docs.microsoft.com/en-us/rest/api/compute/virtualmachinescalesets/deleteinstances

但是,azure tf 的页面并没有在任何地方真正提到这一点。

https://www.terraform.io/docs/providers/azurerm/r/virtual_machine_scale_set.html

如何使用 terraform 做到这一点?

【问题讨论】:

    标签: azure terraform terraform-provider-azure azure-vm-scale-set azure-vm


    【解决方案1】:

    使用 Terraform 管理虚拟机规模集时,Terraform 根本不与单个实例交互。相反,它可以更改更新规模集的设置以匹配您在配置中编写的内容,然后让规模集本身适当地响应该新配置。

    例如,如果您希望减少特定 SKU 的实例,则可以编辑 Terraform 配置,为该 SKU 的 capacity 参数设置一个较低的值,然后运行 ​​terraform apply。如果您接受该计划,Terraform 将更新规模集以降低容量,然后远程规模集系统将决定如何响应。

    要删除 Terraform 正在管理的内容,例如规模集本身,我们会将其从配置中删除并运行 terraform apply。因为 Terraform 不管理此规模集中的单个实例,所以我们不能告诉 Terraform 直接删除它们。如果您需要这种控制,那么您需要直接使用 Terraform 管理虚拟机(根本不使用规模集)或使用单独的工具(Terraform 之外)与您提到的 API 进行交互。

    【讨论】:

      猜你喜欢
      • 2021-02-04
      • 2018-09-01
      • 1970-01-01
      • 2020-11-18
      • 1970-01-01
      • 2018-11-24
      • 2019-10-09
      • 2021-11-05
      • 2011-03-20
      相关资源
      最近更新 更多