gpt4 book ai didi

amazon-web-services - YAML 中的 Cloudformation 模板无法解析用户数据 powershell 脚本

转载 作者:行者123 更新时间:2023-12-03 07:39:06 26 4
gpt4 key购买 nike

我已经用 YAML 编写了一个 cloudformation 模板,一切都运行顺利,但现在我不想手动进入 powershell 添加本地组成员并安装一些 Windows 功能,而是想将 powershell 命令添加到 AWS 的用户数据部分::EC2::实例属性。简而言之,模板如下:

Resources:
Instance:
Properties:
UserData:
Fn::Base64: |
<powershell>
add-localgroupmember (my group member)
install-windowsfeature (my windows feature)
</powershell>

奇怪的是,本地组成员会自动添加,但 Windows 功能不会安装。多行命令有一定的格式吗?这是日志错误:

2022-11-25 19:48:58 Info: Try parsing user data in yaml format
2022-11-25 19:48:58 Info: Parsing failed, fall back to XML format
2022-11-25 19:48:58 Info: Converting user data to yaml format

我尝试以不同的方式格式化 powershell 脚本,但没有任何改变。我还尝试一次添加一个命令,到目前为止,唯一有效的命令是本地组成员,而不是 Windows 功能安装。

我采用了相同的模板并添加了一个输出文件,只是为了检查 powershell 脚本停止的位置。有时会创建这些文件,有时则不会。与添加本地群组成员线路相同。只是有时会添加它们。我不确定这里发生了什么。

最佳答案

下面的 yml 模板添加了用户并添加了功能。

如果有帮助请告诉我。

Resources:
WebServer1:
Type: AWS::EC2::Instance
Properties:
ImageId: ami-0be29bafdaad782db
InstanceType: t2.micro
KeyName: NVirg-KP
SecurityGroups:
- EC2-AllTraffic-SG
UserData:
Fn::Base64: |
<powershell>
#username and password
$username = "ec2-user1"
$description = "ec2-user1"
$password = ConvertTo-SecureString "Login@1234" -AsPlainText -Force

#creating the user
New-LocalUser -Name $username -Password $password -FullName $username -Description $description
Add-LocalGroupMember -Group Administrators -Member $username

#Installing a feature
Import-Module ServerManager
Install-WindowsFeature -Name Web-Server
</powershell>

关于amazon-web-services - YAML 中的 Cloudformation 模板无法解析用户数据 powershell 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74616692/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com