Terraform, Windows, Userdata与批处理脚本



我有一个名为Windows_network_adp.bat的批处理脚本。内容为:

<script>
netsh interface ipv4 set address name="Ethernet 3" static 10.*.*.* 255.*.*.*
</script>

它基本上是在Windows EC2的第二个网卡上添加一个静态IP。如果手动将内容粘贴到AWS Console用户数据部分,则此批处理文件可以工作。我想让它和terraform一起自动进入。

到目前为止,我已经尝试了以下操作:

1日试

user_data_base64  = base64encode(<<EOF
<script>
netsh interface ipv4 set address name="Ethernet 3" static 10.*.*.* 255.*.*.*
</script>
EOF
)

二试

user_data_base64            = base64encode(file("build/Windows_network_adp.bat"))

在地形上没有错误。但是当我远程进入Windows ec2时,网络适配器仍然设置为DHCP,并且我的静态条目没有应用。

感谢您的帮助。

So Just to Update问题解决了

在这个实例中如何处理用户数据的语法如下所示。不幸的是,问题是第二个接口是在Windows EC2之后在terraform中创建的,因此我的用户数据在第二个网卡上配置一个静态IP是不相关的,因为它还没有创建。用户数据不需要base 64编码,因为我有一个powershell脚本现在正在做另一个功能。关于批处理脚本的用户数据信息并不多,所以我希望这能帮助其他人,防止他们像我们一样掉进兔子洞。

user_data                   = <<EOF
<script>
netsh interface ip set address "Ethernet 3" static "10.*.*.*" "*.*.*.*"
</script>
EOF

相关内容

  • 没有找到相关文章

最新更新