首页 文章
  • 63 votes
     answers
     views

    使用Terraform时的最佳做法

    我正在将我们的基础设施交换成terraform . 实际管理terraform文件和状态的最佳实践是什么?我意识到它的基础设施是代码,我将我的.tf文件提交到git中,但我也提交tfstate吗?它应该驻留在像S3这样的地方吗?我最终希望CI能够管理所有这些,但这已经非常紧张,需要我找出文件的移动部分 . 我真的只是想看看那里的人们是如何在 生产环境 中使用这种类型的东西的
  • 1 votes
     answers
     views

    使用Terraform将OVA部署到VCenter

    在这一点上,我绝不是一个知识渊博的VMWare用户 . 我想这可能只是我不理解一些基本概念的情况 . 我正在尝试将VM部署到VCenter中,我有一个我要部署的OVA(模板?) . 目前我已经解压缩了OVA,将我在其中找到的VMDK上传到数据存储区,然后使用了这个terraform定义: provider "vsphere" { user = "${var.vsp...
  • 1 votes
     answers
     views

    Vsphere:Terraform应用无法完成 - 挂起创建VM

    PROVIDER: VMWare vSphere 嗨,我正在尝试使用terraform从模板创建一个新的VM . 由于我使用的客户操作系统是在VMware的客户操作系统支持矩阵中,因此我添加了“skip_customization” . 但是,当我做“terraform apply”时 . Terraform在创建VM状态时陷入困境,并且不会继续前进 . Terraform Version: 0...
  • 1 votes
     answers
     views

    Packer和Terraform集成的工作流程示例

    我正在尝试在VMWare Hypervisor中为虚拟机创建一个实验室,以便在RHEL中安装集群;我已经看到Packer和Terraform非常有趣但是我找不到关于他们的工作流程的清晰和/或详细的样本,特别是如何在Packer中创建图像然后让Terraform使用它 . 我已经看到Packer具有构建功能,但即使是某种类型的部署,我也不明白这些是否与Terraform重叠;我已经读过通过另一个Ha...
  • 1 votes
     answers
     views

    适用于VMware VM的Terraform模块

    在VMware中创建用于VM创建的模块 . 希望克隆VM模板 . 因此,挂断是需要添加更多磁盘时,只需要模板提供的单个磁盘,或者在将来需要时添加磁盘 我不知道是否在虚拟机资源中添加另一个磁盘部分并将变量类型设置为使用插值语法进行映射会起作用吗? 如果有一种方法可以使用像jinja这样的模板,那将会很好 . 模块正在进行中: data "vsphere_datacenter" &...
  • 1 votes
     answers
     views

    vSpehere与terraform VM自定义失败,网络未连接

    当我尝试自定义Windows VM的网络接口后,发生terraform错误时,VM会在没有连接NIC的情况下运行 . Version Terraform = v0.11.7 vSphere版本= 6.7.0,8169922 Windows 2012 R2的机器克隆 Investigation so far; 在vCenter和VM设置中,"Network Adapter 1"...
  • 0 votes
     answers
     views

    禁用floatingIP的协议Tcp,不得与相同的后端IP一起使用

    从terraform创建Azure VM: azurerm_network_interface.nic [1]:发生1个错误:azurerm_network_interface.nic.1:network.InterfacesClient#CreateOrUpdate:响应请求失败:StatusCode = 400 - 原始错误:autorest / azure:服务返回错误 . Statu...
  • 0 votes
     answers
     views

    使用Packer,如何远程构建Amazon ECR实例

    My problem: 我想将一个docker镜像保存为Amazon EC2注册表中的工件,由packer(和ansible)构建 My limitations: 构建需要由Bitbucket Pipelines触发 . 因此,构建步骤需要在Bitbucket管道本身或AWS EC2实例/容器中执行 . 这是因为并非所有dev机器都必须具有从其本地环境构建的权限/包 . 我只希望这些图像是由自动化...
  • 8 votes
     answers
     views

    Terraform:如何多次运行remote-exec?

    我注意到terraform只会在资源上运行一次“file”,“remote-exec”或“local-exec” . 一旦资源被配置,如果“remote-exec”中的命令被更改或者来自供应者“file”的文件被更改,则terraform将不对该实例进行任何更改 . 那么每次运行terraform时,如何让terraform运行供应商“file”,“remote-exec”或“local-exec...
  • 1 votes
     answers
     views

    Terraform无法将Chef配置程序与ssh连接

    我无法通过私人aws密钥对连接到terraform的ssh进行厨师配置 - 错误看起来只是一个超时: aws_instance.app (chef): Connecting to remote host via SSH... aws_instance.app (chef): Host: 96.175.120.236:32: aws_instance.app (chef): User: ub...
  • 0 votes
     answers
     views

    Terraform Remote-Exec Provisioner Timeout

    我正在使用Terraform在AWS中创建服务器 . 我的remote-exec配置器不会连接和执行,不断给我输出: aws_spot_instance_request.single_server_instance (remote-exec): Connecting to remote host via WinRM... aws_spot_instance_request.single_serve...
  • 2 votes
     answers
     views

    使用Terraform与Azure VM Build SSH连接

    我已经使用Terraform在Azure上成功创建了一个VM作为资源组的一部分 . 下一步是在新机器中ssh并运行一些命令 . 为此,我创建了一个配置器作为VM资源的一部分并设置了SSH连接: resource "azurerm_virtual_machine" "helloterraformvm" { name = "terraformv...
  • 2 votes
     answers
     views

    从Terraform的remote-exec配置器获取stdout

    我想重用在另一个资源中通过remote-exec配置器启动的命令的输出值 . 如果没有令人讨厌的外部数据源,我怎么能这样做呢?
  • 2 votes
     answers
     views

    Terraform - 有没有办法捕获shell脚本输出(从远程vm)并将其存储在Terraform输出(本地/ Consul 的状态文件)?

    我正在使用Terraform(例如AWS EC2 VM)创建 Cloud 基础架构,并且在创建VM之后,我使用配置程序(remote-exec)在远程VM上运行shell脚本 . 有没有办法捕获shell脚本输出(从远程vm)并将其存储在Terraform输出(本地/ Consul 的状态文件)? 我已经尝试过Terraform的“外部数据源”,但我想它只适用于本地脚本(不是远程vm脚本) . 如...
  • 0 votes
     answers
     views

    在Terraform local-exec配置器中序列化shell命令

    当使用Terraform在null_resource下使用local-exec provisioner运行 kubectl 时,我收到以下错误: 退出状态1.输出:错误:打开/Users/myuser/.kube/config.lock:文件存在 因为我在运行带有计数的null_resource,看起来Terraforms会并行生成几个 kubectl 命令, kubectl 不喜欢这个 . ...
  • 0 votes
     answers
     views

    Terraform Provisioner“local-exec”未按预期工作| VPC对等连接接受问题

    我无法通过链接中提到的工作(Why am I getting a permissions error when attempting to auto_accept vpc peering in Terraform?“)通过配置程序选项完成自动接受对等操作 请参阅下面的Terraform代码 . 有人可以帮我吗? provider "aws" { region = &quo...
  • 0 votes
     answers
     views

    Terraform local-exec Provisioner:命令完成但配置程序不返回

    我正在使用Terraform(0.11.1)来配置Azure资源,并且使用连接到NIC创建的本地exec配置程序(azurerm_network_interface)遇到了一个奇怪的问题 . 这是Terraform代码: resource "azurerm_network_interface" "nnic" { name ...
  • 0 votes
     answers
     views

    如何调试Terraform AWS提供程序文件配置程序ssh超时问题?

    我已经为aws_launch_configuration资源添加了一个文件配置器,并且看到了SSH超时 . 1 error(s) occurred: * module.dev-agooch.module.web.aws_launch_configuration.primary: timeout - last error: dial tcp :22: connect: connection ref...
  • 12 votes
     answers
     views

    如何在AWS VPC w / Terraform中的两个子网之间路由?

    更新:除了其他事情之外,一直在努力 . 似乎无法获得具有两个子网和SSH堡垒的工作配置 . 将赏金置于完整的.tf文件配置:创建两个私有子网创建堡垒在通过堡垒配置的每个子网上旋转ec2实例(通过堡垒运行一些任意shell命令)已配置互联网网关具有私有子网上的主机的nat网关具有相应配置的路由和安全组 原帖:我正在尝试学习Terraform并构建原型 . 我有一个通过Terraform配置的AWS ...
  • 3 votes
     answers
     views

    尝试使用Terraform创建AWS VPC安全组时出现周期错误

    我想创建2个VPC安全组 . 一个用于VPC的Bastion主机,一个用于私有子网 . # BASTION # resource "aws_security_group" "VPC-BastionSG" { name = "VPC-BastionSG" description = "The sec gro...
  • 0 votes
     answers
     views

    基础架构和代码部署在同一管道中还是不同?

    我们正在AWS中设置新的发布流程 . 我们正在使用带有Elastic Beanstalk的terraform来启动要部署的硬件(尽管实际的工具是无关紧要的) . 由于这个弹性beanstalk不支持Windows环境中的不可变部署,我们正在讨论是否要有一个单独的管道来部署我们的基础架构或在所有代码部署上运行terraform . 这两件事可能会有不同的流失率,这是分开他们的一个很好的理由 . 由于...
  • 0 votes
     answers
     views

    使用terraform“local-exec”配置文件引用输出值

    我想把引号放在输出值附近(简单来说,我想使用“local-exec”配置器将输出写入文件,但不幸的是它没有把引号括在它周围,尽管它确实回显了正确的值到我也使用了转义字符()但仍然没有运气 . 任何帮助都将非常感谢 . 谢谢 代码片段供参考: provisioner "local-exec" { command = " echo **ELB_DNS_NAME: \&qu...
  • 1 votes
     answers
     views

    Terraform供应商连接用户/密钥

    Terraform为配置者(在我的情况下是chef)提供连接配置,我使用实例默认帐户设置连接,而出于安全原因,我从sudoer中删除默认帐户 . 然后厨师有安全行为,它会在配置后删除验证器密钥,这样的动作需要sudo . 从sudo中删除默认帐户时,操作失败 . 解决方案可能是 为terraform中的供应商连接提供多个用户, 禁用厨师验证器密钥删除行为 有人知道这种奇怪的情况吗?先感...
  • 0 votes
     answers
     views

    terraform . %和 . #和<computed>含义

    在创建资源并调用terraform计划时,我看到如下名称: tags.%: &quot;&quot; =&gt; &quot;1&quot; dns_servers.#: &lt;computed&gt; 我想知道 .% 和 .# 是什么意思; &quot;&quot; =&gt; &quot;1&quo...
  • 0 votes
     answers
     views

    什么是Terraform配置中使用的“protected_settings”

    我在一些例子中看到了 protected_settings ,我在一些Terraform文档中看到了它们,但是我无法找到关于它们用于什么的很好的解释 .
  • 0 votes
     answers
     views

    如何在Azure Cloud中使用terraform进行AD用户管理

    有没有办法使用terraform管理Azure Cloud 中的用户/组创建? 像AWS IAM用户/组创建?
  • 0 votes
     answers
     views

    Terraform:无法找到供应商

    我的 .tf file 中有 resource &quot;aws_instance&quot; &quot;webserver&quot; ,其中包含 provisioner &quot;install-apache&quot; : provider &quot;aws&quot; { access_key = &quot;ACCESS_KEY&quot; secret_...
  • 26 votes
     answers
     views

    Terraform(Hashicorp)的不同环境

    我一直在使用Terraform来构建我的AWS栈并且一直很喜欢它 . 如果要在商业环境中使用,则需要针对不同环境(例如QA,STAGING,PROD)重用配置 . 我怎么能做到这一点?我是否需要创建一个包装器脚本来调用terraform的cli,同时按照下面的环境传入不同的状态文件?我想知道Terraform是否提供了更原生的解决方案 . terraform apply -state=qa.tfs...
  • 0 votes
     answers
     views

    Terraform适用于某些AWS区域,而其他区域则无法运行

    我是Terraform的新手,所以我可能会遗漏一些东西,但我确实安静了一项研究,但我没有找到解决方案 . 我们的公司AWS账户已经在区域eu-west-1上运行了somw实例 . 我决定测试Terraform,以便我们可以开始使用它 . 我创建了具有适当权限的IAM用户并制作了这个tf文件: resource &quot;aws_instance&quot; &quot;test&quot; { ...
  • 2 votes
     answers
     views

    Azure Stack的terraform配置

    是否可以以“环境”变量的URL形式提供值,以便部署到Azure堆栈? 目前,唯一记录支持的值似乎是:公共,政府,德国和中国 .

热门问题