У меня проблема с добавлением sudo в локальный exec.
Короче говоря, без блока local-exec. Я могу создать и получить доступ к своему экземпляру EC2. используя путь ssh -vi / to / key.pem ec2-user@ec2-xx-xx-xxx-xxx.compute-1.amazonaws.com.
Но сейчас, как только я добавлю ниже блок; и запустите apply
, он продолжает показывать «все еще создается» после запроса пароля.
provisioner "local-exec" {
command = <<EOH
sudo yum -y update
sudo yum install -y python36u python36u-libs python36u-devel python36u-pip
EOH
}
Итак, мой вопрос: какой пользователь здесь является пользователем sudo? это ec2-пользователь или пользователь, которого я изначально создал для настройки своего AWS (который включает только идентификатор ключа доступа и секретный ключ доступа)?
Как я могу настроить его, есть ли какая-либо документация для справки?
ниже мой main.tf
provider "aws" {
region = "us-east-2"
version = "~> 1.2.0"
}
resource "aws_instance" "hello-world" {
ami = "ami-ef92b08a"
instance_type = "t2.micro"
provisioner "local-exec" {
command = <<EOH
sudo yum -y update
sudo yum install -y python36u python36u-libs python36u-devel python36u-pip
EOH
}
tags {
Name = "my-aws-terraform-hello-world"
}
}
resource "aws_security_group" "allow-tcp" {
name = "my-aws-terraform-hello-world"
ingress {
from_port = 8080
to_port = 8080
protocol = "tcp"
cidr_blocks = ["0.0.0.0/0"]
}
}