Как мне установить имя хоста для виртуальной машины AWS Lightsail?

Просмотр конфигураций cloudinit на моей новой виртуальной машине Lightsail , похоже, общение с API метаданных для таких настроек, как имя хоста. Я не вижу какого-либо компонента пользовательского интерфейса светового паруса для установки имени хоста, но если я вытащу метаданные ec2 из виртуальной машины, я увижу некоторые пользовательские данные. Есть ли способ записать в него, чтобы cloudinit не переопределил заданное мной имя хоста?

EDIT:

Похоже, у Lightsail есть собственный кошелек для пользовательских данных:

$ cat /var/lib/cloud/instances/user-data.txt

#!/bin/sh
echo Lightsail: Starting Instance Initialization.

cat > /etc/ssh/lightsail_instance_ca.pub << EOF
ssh-rsa nope EOF
echo Lightsail: SSH CA Public Key created. 

echo >> /etc/ssh/sshd_config
echo 'TrustedUserCAKeys /etc/ssh/lightsail_instance_ca.pub' >> /etc/ssh/sshd_config
echo Lightsail: SSH CA Public Key registered.

service sshd restart
echo Lightsail: sshd restarted.

#cloud-config
hostname: pwnguin

Итак, в журнале вывода cloud-init , он жалуется на hostname: command not found . Я, вероятно, могу использовать команду оболочки для установки имени хоста, но мне может не повезти с маршрутом cloudconfig.

1
задан 8 January 2017 в 04:46
1 ответ

Когда запускает ваш экземпляр, вы можете передать данные пользователя, содержащие вашу первоначальную конфигурацию (например, имя хоста) следующим образом:

aws lightsail create-instances --instance-names <value> --availability-zone <value> --blueprint-id <value> --bundle-id <value> --user-data file:///full/path/to/myconfig

Содержимое myconfig файла должно быть:

#cloud-config
hostname: test-vm
2
ответ дан 3 December 2019 в 20:31

Теги

Похожие вопросы