Изменение конфигурации файловой системы в облаке

Итак, мое приключение началось так: у меня была виртуальная машина OpenSUSE 13.1, и я хотел обновить ее до 13.2, поэтому одно из главных отличий между 2-мя сообществами amis (13.1 - `` и 13.2 -ami-3a6cc64d) было то, что образ 13.2 использует HVM - вместо PV - тип виртуализации.

Первой проблемой, с которой я столкнулся, было то, что мой шаблон CloudFormation использовал /dev/sda имя_устройства, под BlockDeviceMappings, НО, очевидно, это не тот тип имя_устройства, который ожидает тип изображения HVM (см. здесь для получения дополнительной информации). Это привело к тому, что экземпляр EC2 даже не входил в running государство.

Во всяком случае, я смог преодолеть это препятствие, назначив /dev/sda1Как и было рекомендовано, мой экземпляр наконец-то смог запуститься правильно.

НО - теперь при запуске некоторые из моих служб не запускаются из-за сбоя зависимостей, которые я смог отследить, пока облачная конфигурация не завершилась корректно, что AWS сказал сделать:

Если я бегу $ systemctl ... cloud-init-local.service loaded active exited Initial cloud-init job (pre-networking) cloud-init.service loaded failed failed Initial cloud-init job (metadata service crawler) ...

После проверки журналов (/var/log/syslog) я вижу следующее: ... Failed to resize filesystem (cmd=('resize2fs', '/dev/hda1'))#012Traceback ... но я не настроил это сам, это то, что AWS решил сделать с моим образом через cloud-config...

Я понятия не имею, почему это происходит, и я не могу найти много соответствующих постов, поэтому любые идеи будут очень кстати парни...!:)

Заранее спасибо!!

1 ответ

Решение

Итак, получается, что мне пришлось явно отключить поведение конфигурации облака по умолчанию, используя resize_rootfs атрибут:

# resize_rootfs should the / filesytem be resized on first boot
# this allows you to launch an instance with a larger disk / partition
# and have the instance automatically grow / to accomoddate it
# set to 'False' to disable
# by default, the resizefs is done early in boot, and blocks
# if resize_rootfs is set to 'noblock', then it will be run in parallel
resize_rootfs: True

установив это в False, удалил ошибку, поэтому cloud-init.service служба больше не перестала работать при запуске.

(Большинство ресурсов, которые я первоначально нашел, заставили меня поверить, что я должен использовать growpart, но это не так.)

Другие вопросы по тегам