| Предыдущая версия справа и слеваПредыдущая версия | |
| microsoft:azure:cloud-init_fuckup [2022/06/06 18:45] – dx | microsoft:azure:cloud-init_fuckup [2022/07/24 18:25] (текущий) – dx |
|---|
| | ====== cloud-init does not appear to be running ====== |
| |
| | После обычного ''apt upgrade'' пропал доступ по SSH к серверу Debian 10. |
| | |
| | В Serial console в Azure бесконечно идут сообщения |
| | |
| | <code> |
| | INFO Daemon Waiting for cloud-init to copy ovf-env.xml to /var/lib/waagent/ovf-env.xml |
| | WARNING Daemon cloud-init does not appear to be running |
| | </code> |
| | |
| | {{:microsoft:azure:azure_ovf-env.xml.png?nolink|}} |
| | |
| | Видимо на смену waagent идёт cloud-init, который всё только портит. |
| | |
| | Решение: с другого сервера скопировать файл **ovf-env.xml** и скопировать в ''/var/lib/waagent/'' на проблемном сервере. |
| | |
| | Github завален подобными "issues'ами" ([[https://github.com/Azure/WALinuxAgent/issues/2025|1]], [[https://github.com/Azure/WALinuxAgent/issues/1359|2]], [[https://github.com/Azure/WALinuxAgent/issues/1933|3]]), но решения универсального нет. |
| | |
| | Забавный момент - сначала я думал просто сделать откат VM в Azure, но это нельзя сделать с неработающим Waagent. |
| | |
| | После такого "апдейта" у меня сломался swap. Об этом ниже. |
| | |
| | Пример файла **ovf-env.xml** |
| | |
| | ++++ Покажите мне это | |
| | <code xml> |
| | <ns0:Environment xmlns:ns0="http://schemas.dmtf.org/ovf/environment/1" xmlns:ns1="http://schemas.microsoft.com/windowsazure" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> |
| | <ns1:ProvisioningSection> |
| | <ns1:Version>1.0</ns1:Version> |
| | <ns1:LinuxProvisioningConfigurationSet> |
| | <ns1:ConfigurationSetType>LinuxProvisioningConfiguration</ns1:ConfigurationSetType> |
| | <ns1:UserName>john</ns1:UserName> |
| | <ns1:DisableSshPasswordAuthentication>false</ns1:DisableSshPasswordAuthentication> |
| | <ns1:HostName>vm1337</ns1:HostName><ns1:UserPassword>REDACTED</ns1:UserPassword></ns1:LinuxProvisioningConfigurationSet> |
| | </ns1:ProvisioningSection> |
| | <ns1:PlatformSettingsSection> |
| | <ns1:Version>1.0</ns1:Version> |
| | <ns1:PlatformSettings> |
| | <ns1:KmsServerHostname>kms.core.windows.net</ns1:KmsServerHostname> |
| | <ns1:ProvisionGuestAgent>true</ns1:ProvisionGuestAgent> |
| | <ns1:GuestAgentPackageName xsi:nil="true" /> |
| | <ns1:RetainWindowsPEPassInUnattend>true</ns1:RetainWindowsPEPassInUnattend> |
| | <ns1:RetainOfflineServicingPassInUnattend>true</ns1:RetainOfflineServicingPassInUnattend> |
| | <ns1:PreprovisionedVm>false</ns1:PreprovisionedVm> |
| | <ns1:EnableTrustedImageIdentifier>false</ns1:EnableTrustedImageIdentifier> |
| | <ns1:PreprovisionedVMType xsi:nil="true" /> |
| | </ns1:PlatformSettings> |
| | </ns1:PlatformSettingsSection> |
| | </ns0:Environment> |
| | </code> |
| | ++++ |
| | |
| | ==== SWAP в Azure [NEW] ==== |
| | |
| | Платная техническая поддержка Microsoft полное дно. Индусы в Microsoft полное дно. Всё чему они научились так это мне по методичке сожалеть о мои злоключениях с их облаком. |
| | |
| | Речь идёт **только о Debian 10**. В Debian 9, Ubuntu18/20, CentOS/RHEL/Oracle до сих пор исправно со swap работает waagent (''ResourceDisk.EnableSwap''). |
| | |
| | Я конечно могу сделать всё вручную и прибить гвоздями вот так |
| | |
| | <code bash> |
| | sudo /bin/dd if=/dev/zero of=/mnt/swap.2g bs=1M count=2048 |
| | sudo /sbin/mkswap /mnt/swap.2g |
| | sudo chmod 600 /mnt/swap.2g |
| | sudo /sbin/swapon /mnt/swap.2g |
| | echo "/mnt/swap.2g swap swap defaults 0 0" >> /etc/fstab |
| | </code> |
| | |
| | Но если раньше это работало автоматически, то надо стараться всё делать в cloud стиле. |
| | |
| | После бессмысленных сожалений о моём горе со стороны Microsoft мне через несколько дней [[https://docs.microsoft.com/en-us/troubleshoot/azure/virtual-machines/swap-file-not-recreated-linux-vm-restart|прислали ссылку]], которую я ранее нашёл самостоятельно за 15 минут. |
| | |
| | КОРОЧЕ. Создать файл **create_swapfile.sh** в каталоге ''/var/lib/cloud/scripts/per-boot'' |
| | |
| | <code bash> |
| | #!/bin/sh |
| | if [ ! -f '/mnt/swapfile' ]; then |
| | fallocate --length 2GiB /mnt/swapfile --> Here, set the swapsize as necessary. |
| | chmod 600 /mnt/swapfile |
| | mkswap /mnt/swapfile |
| | swapon /mnt/swapfile |
| | swapon -a |
| | else |
| | swapon /mnt/swapfile; fi |
| | </code> |
| | |
| | Для самоуспокоения потом надо посмотреть ''/var/log/waagent.log'' или ''/var/log/cloud-init.log'' |
| | |
| | {{tag>microsoft windows azure linux debian swap waagent}} |