################################## Добавление пользовательских данных ################################## При добавлении пользовательских данных следует обратить внимание на: - Пользовательские данные рассматриваются как opaque data: что отдано, то получено обратно. Вычислительная среда читает и пишет метаданные в любое время в течение времени жизни экземпляра. - Максимальный размер пользовательских данных — 16 KB. Это ограничение для данных в исходном формате, не закодированных в 64-разрядный код. - Пользовательские данные должны быть закодированы в 64-разрядный код перед передачей в API. Инструменты командной строки EC2 выполняют перекодировку в 64-разрядный код. - Через пользовательские данные в экземпляр могут быть переданы настройки ``cloud-init``. ********** Cloud-init ********** `Сloud-init `_ позволяет производить настройку экземпляра на его старте. Для этого необходимо передать инструкции для ``cloud-init`` в атрибут *user-data* в формате YAML. ``cloud-init`` доступен в большинстве современных операционных систем Linux и FreeBSD. Разбиение дисков с использованием ``cloud-init`` ================================================ .. note:: Вы можете использовать ``cloud-init`` версии 0.7.9 или старше для автоматического создания разделов дисков экземпляра. .. dropdown:: ``user-data`` .. code-block:: yaml :name: user-data-label #cloud-config merge_how: "dict(recurse_array)+list(recurse_list,recurse_str)+str()" cloud_init_modules: - disk_setup disk_setup: ebs2: table_type: 'mbr' layout: - [66, 83] - [33, 82] overwrite: true В приведённом выше примере используются следующие настройки: - *merge_how* — Опция необходима для применения настроек, переданных в *user-data*. - *cloud_init_modules* — Список используемых модулей ``cloud-init``. - *disk_setup* — Модуль предоставляет возможность разбиения диска на разделы. - *ebs2* — Имя блочного устройства, ассоциированного с дополнительным EBS-диском. - *table_type* — Опция определяет тип раздела. Возможны типы разделов ``mbr`` или ``gpt``. - *layout* — Опция определяет то, каким образом будут размечены разделы. - *overwrite* — Если ``true``, проверки на наличие ранее существовавших разделов и файловых систем будут проигнорированы. .. note:: Дополнительную информацию по модулю ``disk_setup`` можно получить в официальной документации `cloud-init `_.