Skip to main content

在 Libvirt 和 KVM 上使用 Terraform 进行自动配置

·64 words·1 min
WFUing
Author
WFUing
A graduate who loves coding.

Terraform 是基础设施配置自动化方面的首选 IaC 工具。尽管 Ansible 主要是一个配置工具,但它也可以完成这项工作。

KVM 是一个开源 I 类管理程序,它使用 Linux 内核和 libvirt 库进行虚拟化。高性能、低成本和 Linux 原生特性使其成为众多产品中的一个不错的选择。还有基于这些优势构建的企业级虚拟化软件产品,例如Red Hat Virtualization和Proxmox。

Terraform 设计有支持资源创建的提供程序和模块。 terraform-libvirt-provider

该场景由一个具有三层的典型环境组成。第一个是应用程序负载均衡器层,第二个是应用程序层,第三个是数据库层。无需在虚拟化软件 UI 上通过鼠标单击来配置所有三层,而是开发动态设置,其中对虚拟机的所有必需规格(例如 CPU、内存和网络配置)进行参数化。

为了简单起见,该模拟没有部署应用程序。使用 cloudinit 资源就可以很容易地拥有一个。然而,在配置后,Ansible 可能是完成此任务的更好选择。

使用 Terraform 等 IaC 工具的主要优点是,无论数量多少,上述拓扑中的虚拟机的配置时间都不到 30 秒。此外,任何层中的任何虚拟机都可以通过更改几个变量来添加或删除。此外,现有虚拟机的规格可以以同样的实用性进行更改。下面提供了实时屏幕截图以供说明。

录屏

Resources