gpt4 book ai didi

bash - user_data 在 terraform 应用程序之后不运行

转载 作者:行者123 更新时间:2023-12-04 18:31:19 24 4
gpt4 key购买 nike

我正在使用 Terraform 来启动一个 Ec2 实例,我想在其中执行一些命令。
我在 aws_instance 资源的 user_data 中放置了一个 bash 文件,但该文件未执行。

...
resource "aws_instance" "master" {
ami = lookup(var.amis, var.region)
instance_type = var.master_instance_type
key_name = "id_rsa_sdtd"
security_groups = [aws_security_group.SDTD_VPC_Security_Group.id]
subnet_id = aws_subnet.SDTD_VPC_Subnet.id
iam_instance_profile = "k8s-cluster-iam-master-role"
user_data = file("./master_config.sh")

}
...
地形规划
...
+ tenancy = (known after apply)
+ user_data = "def16ed029e3ecb79f09f750c548beed53d7f60d"
+ volume_tags = (known after apply)
...
我的 bash 文件
#!/bin/bash
# Install kubeadm and Docker
sudo apt update && sudo apt -y upgrade
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
sudo curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
sudo bash -c 'echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" > /etc/apt/sources.list.d/kubernetes.list'
sudo apt update
sudo apt install -y docker-ce kubelet kubeadm kubectl
...

最佳答案

您的问题中没有任何文字确认 master_config.sh没有被执行。
下面的行并不意味着它没有被执行。如果它不起作用 - 你肯定会看到一个日志 /var/log/cloud-init-output.log正如评论中所建议的 + user_data = "def16ed029e3ecb79f09f750c548beed53d7f60d"从我想到的解决方案中:

  • 使用以下格式的完整路径,不简单file("./master_config.sh") .也许你包裹不正确。
  • resource "aws_instance" "..." {
    user_data = "${file("/../../master_config.sh")}"
    ...
    }
  • 我建议您使用 templates_file对于此类事件,然后在您的配置中引用它。
  • data "template_file" "user_data" {
    template = "${file("/../../master_config.sh")}"
    ...
    }


    resource "aws_instance" "master" {
    user_data = "${data.template_file.user_data.rendered}"
    ...
    }

    关于bash - user_data 在 terraform 应用程序之后不运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65004021/

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