Я заметил, что мои экземпляры Ubuntu как в Google Compute Engine (GCE), так и в Azure сломали сеть после установки и настройки ddclient и перезагрузки этих машин. Эта проблема не возникает на AWS.
Когда это происходит, все выглядит нормально, интерфейс открывается, ему назначается IP, но он говорит, что шлюз по умолчанию недоступен. Удаление ddclient и удаление его файла конфигурации с последующей перезагрузкой решает проблему.
Почему кажется, что ddclient нарушает работу сети на этих экземплярах GCE и Azure?
Это образец моей конфигурации ddclient:
ssl=yes
use=web, web=checkip.dyndns.com/, web-skip='IP Address'
protocol=namecheap
server=dynamicdns.park-your-domain.com
login=<mydomain>
password=<mypassword>
@
Я тоже столкнулся с этой проблемой.
Дуайт Лайл отправил отчет об ошибке в мае. https://bugs.launchpad.net/ubuntu/+source/ddclient/+bug/1688052
Шаги, которые я предпринял для восстановления загрузочного диска, вдохновлены описанием Дуайта. TL; DR Я смонтировал диск, который не загружался, в другой экземпляр, chroot'd на него, apt-get purged ddclient и создал новый экземпляр, используя (теперь) работающий диск.
И подробнее:
В консоли GCE щелкните сломанный экземпляр, чтобы просмотреть сведения о нем. Нажмите «Изменить» и снимите флажок «Удалять загрузочный диск при удалении экземпляра».
Теперь удалите экземпляр, который не загружается (после двойной проверки, что вы тоже не собираетесь удалять диск!).
В Google Coud Shell:
gcloud compute instances attach-disk WORKING_INSTANCE --disk DISK_OF_BROKEN_INSTANCE --device-name new_disk
В рабочем экземпляре GCE:
lsblk # to know which disk to mount
sudo mount /dev/sdb1 /mnt/ # sdb1 was the disk not mounted as root (the broken disk)
sudo chroot /mnt/
sudo apt-get purge ddclient
exit
sudo umount /mnt
В Google Coud Shell:
gcloud compute instances detach-disk WORKING_INSTANCE --disk DISK_OF_BROKEN_INSTANCE
Вернувшись в консоль GCE, перейдите на вкладку дисков, найдите диск, который вы только что изменили, и создайте с ним новый экземпляр. Если повезет, вы сможете запустить это и использовать в нем SSH!