2017-10-21 225 views
1

我正在尝试在VMWare虚拟机管理程序中为虚拟机创建一个实验以在RHEL中安装集群;我已经看到Packer和Terraform非常有趣,但我无法找到关于其工作流程的清晰和/或详细的样本,特别是如何在Packer中创建图像,然后让Terraform使用它。 我已经看到Packer具有构建功能,但即使是某种类型的部署,我也不知道它们是否与Terraform重叠;我读过一些类型的自动化可以通过另一个HashiCorp产品Atlas实现,但我不想使用它,至少在软件研究和试用的这个阶段。 所以我想要做的是用Packer(RHEL base plus其他功能)创建一个VMWare兼容的虚拟机映像,并将它们传递给在我的esxi中创建虚拟机的Terraform工件。Packer和Terraform集成的工作流示例

希望找到指导。

+0

使用Packer创建图像,然后将其与使用Terraform旋转的基础结构一起使用。 –

+0

谢谢:任何文档或博客帖子,显示如何将图像从Packer传递到Terraform;我看过一篇博客文章,但它使用了Atlas。 –

回答

6

我不知道您的具体使用情况,但Terraform确实有数据源,可以更容易连接由帕克建对terraform图片:https://www.terraform.io/docs/configuration/data-sources.html

下面是使用内置AMI封隔器的部分示例对于AWS EC2实例:

data "aws_ami" "bastion" { 
    filter { 
    name = "state" 
    values = ["available"] 
    } 

    filter { 
    name = "tag:Name" 
    values = ["Bastion"] 
    } 

    most_recent = true 
} 

resource "aws_instance" "bastion" { 
    ami = "${data.aws_ami.bastion.id}" 
    # ... 
} 

我也用的bash脚本解析出封隔器产生的值,并将其转储到tfvars文件,这Terraform消耗。

+0

非常感谢:我想这是可能的,因为还有一个VMWare vSphere提供商;你有任何链接到博客文章或其他文件资料?谢谢。 –

+2

可悲的是,我一直无法找到很多关于文档或博客的文章,所以我为我的用例写了一对夫妇。 [这里](http://www.davidbegin.com/packer-and-terraform-part-ii-data-sources/)是我的帖子,扩展了我上面的例子。 而[这里](http://www.davidbegin.com/packer-and-terraform/)是我的bash黑客之一。这些都是针对AWS EC2特定的,并且构建了AMI,因此它们可能无法帮助您进一步获得更多。但是,如果您有一个项目托管在Packer和Terraform部分内置但未连接的地方,我可以看看。 – Begin

+0

谢谢开始您的大力帮助,您的文章是大量的信息和提示。当我有一些材料可用时,我会尽力与您联系。 –