Я запускаю образ облака Ubuntu 18.04 и пытаюсь настроить сеть через cloud-init. По какой-то причине он игнорирует мою сеть, когда я пытаюсь назначить статический IP, и просто возвращается к использованию DHCP. Я не уверен, почему, и я не уверен, как отладить это. Кто-нибудь знает, если я делаю что-то не так или как мне следует дополнительно устранить эту проблему:
Вот мой config.yaml
, который я использую для генерации config.img
:
#cloud-config
network:
version: 2
ethernets:
ens2:
dhcp4: false
dhcp6: false
addresses: [10.0.0.40/24]
gateway4: 10.0.0.1
password: secret # for the 'ubuntu' user in case we can't SSH in
chpasswd: { expire: false }
ssh_pwauth: true
users:
- default
- name: brennan
ssh_import_id: gh:brennancheung
sudo: ALL=(ALL) NOPASSWD:ALL
hostname: vm
runcmd:
- [ sh, -xc, "echo Here is the network config for your instance" ]
- [ ip, a ]
final_message: "Cloud init is done. Woohoo!"
Всеиначе в конфиге, кажется, работает, как будто он даже не видит часть network
.
Я присоединяю .img
как cdrom
, чтобы прочитать cloud-init
,Вы можете увидеть, как я запускаю его здесь: https://github.com/brennancheung/playbooks/blob/master/cloud-init-lab/Makefile
ПРИМЕЧАНИЕ. После входа в окно я могу заменить конфигурацию в /etc/netplan
на раздел network
выше и повторно применитьэто и сеть подходит со статическим IP. Поэтому я думаю, что нет никаких очевидных ошибок, которые я пропускаю. Это наводит меня на мысль, что это связано с сетевым модулем (модулями) cloud-init, а не с самим netplan
.