AWS Сценарий данных пользователя CLI не запущен - PullRequest
0 голосов
/ 13 февраля 2020

Я пытаюсь передать пользовательские данные в мой экземпляр EC2 во время создания с помощью AWS команды CLI run-instances.

Я поместил следующую команду в файл:

#!/bin/bash
sudo su
yum update -y
yum install httpd -y
systemctl start httpd
systemctl enable httpd
echo "<html><h1>Welcome to the server</h1><html>" >> /var/www/html/index.html

Все команды CLI AWS, которые я выполнил (с .txt и без):

  1. aws ec2 run-instances --image-id ami-062f7200baf2fa504 --count 1 --instance-type t2.micro --key-name lab115key --security-groups my-sg --region us-east-1 --user-data file://./text1.txt

  2. aws ec2 run-instances --image-id ami-062f7200baf2fa504 --count 1 --instance-type t2.micro --key-name lab115key --security-groups my-sg --region us-east-1 --user-data file://./text1

  3. aws ec2 run-instances --image-id ami-062f7200baf2fa504 --count 1 --instance-type t2.micro --key-name lab115key --security-groups my-sg --region us-east-1 --user-data text1.txt

  4. aws ec2 run-instances --image-id ami-062f7200baf2fa504 --count 1 --instance-type t2.micro --key-name lab115key --security-groups my-sg --region us-east-1 --user-data text1

Затем я попытался закодировать скрипт до Base64 данные пользователя не принимаются.

Я создал группу безопасности с портами 80 и 22 с источником 0.0.0.0/0, используя Default VP C и Su bnet.

AMI: Amazon Linux 2 - t2.micro

Region: us-east-1

ВЫПУСК:

  1. HTTPD не устанавливается.
  2. index. html не создается в пути.

Я что-то не так делаю? Почему это не работает?

Любой другой способ решения этой проблемы?


Новые обновления по этой проблеме:

Данные пользователя, которые я передал * Команда 1054 * устанавливается, но занимает слишком много времени.

Не все время ее установка. Я запускал код пять раз, только 3 EC2 установили данные пользователя.

С AWS Веб-страница статуса: я обнаружил, что us-east-1 имеет много проблем с задержкой.

1 Ответ

0 голосов
/ 14 февраля 2020

Команды, предоставляемые с помощью пользовательских данных, выполняются как пользователь foot.

Поэтому не используют sudo команды в сценариях пользовательских данных.

Любые Ошибки при выполнении сценария пользовательских данных на Amazon Linux можно найти в:

/var/log/cloud-init-output.log

Если вы не уверены, выполняется ли сценарий, добавьте строку, подобную этой, после строки заголовка:

echo Script started > /tmp/script.log

Затем вы можете проверить содержимое /tmp/script.log, чтобы определить, был ли выполнен скрипт.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...