对于网络配置语言,是否有更多或更少的标准/规范,即供应商中立的?比如说,一个带有网络和虚拟机的 VPC 将变成一个 XML 或 JSON 文件。
就像是,
<deployment>
<vpc name="Test">
<appliances>
<vm id="1" />
</appliances>
</vpc>
</deployment>
对于网络配置语言,是否有更多或更少的标准/规范,即供应商中立的?比如说,一个带有网络和虚拟机的 VPC 将变成一个 XML 或 JSON 文件。
就像是,
<deployment>
<vpc name="Test">
<appliances>
<vm id="1" />
</appliances>
</vpc>
</deployment>
Hashicorp 的Terraform具有供应商中立(但不是不可知)的配置语言。AWS VPC 看起来像:
resource "aws_vpc" "Test" {
cidr_block = "10.0.0.0/16"
instance_tenancy = "dedicated"
tags = {
Name = "Test"
}
}
Ansible可用于构建(部分)网络即代码。它使用 YAML 语法并且可以读取 JSON。
主要供应商的设备都有现有的 ansible 角色,您可以构建自己的角色。
但现有角色并不总是最新的,编写和维护自己的角色可能很耗时。
特别是对于 AWS VPC,您可以使用 CloudFormation 生成“配置”文件,该文件可用于重新创建 VPC 和所有相关组件。我相信它是 JSON 格式。
对于一般的网络,没有这样的事情。弄清楚如何去做,你就可以舒适地退休了。