2021-12-07 14:40:07
Дополнение #S02E19-02. Новое доброе слово из четырех букв.
Концепция IaC (на всякий случай напомним, «инфраструктура-как-код») просто в силу своей природы предполагает использование конфигурационных файлов чуть менее, чем в каждом закоулке системы администрирования и управления этой самой инфраструктурой. ЦА, следуя концепции, широко задействует разнообразные конфиги.
Разумеется, все они описаны в документации, и разбирать конкретные примеры мы не будем, но обязательно обратим внимание на синтаксис этих конфигов – на чем они написаны? Написаны они на языке YAML. Словарное определение:
- - - - - >8 - - - - -
YAML (акроним англ. «Yet Another Markup Language» — «Ещё один язык разметки», позже — рекурсивный акроним англ. «YAML Ain't Markup Language» — «YAML — не язык разметки») — «дружественный» формат сериализации данных, концептуально близкий к языкам разметки, но ориентированный на удобство ввода-вывода типичных структур данных многих языков программирования.
- - - - - >8 - - - - -
Почему был выбран именно этот язык? Чем не угодил, например, простой и привычный XML?
(В скобках заметим, что для человека, который вполне свободно обращался с консольным редактором для правки *.ini, расположенным на уютной пятидюймовой дискете, словосочетание «простой и привычный XML» звучит такой же дикостью, как, например, «традиционный британский KFC», но слушать всяких старых ворчунов мы, конечно же, не будем).
Дело в том, что YAML очень удобен для чтения и записи как глазами/руками, так и программным кодом, и это действительно не язык разметки, а язык описания структурированных данных. Можно сказать, что YAML-конфиг – это неплохой образчик инженерного минимализма, где все строго по делу и нет лишних деталей. А можно просто посмотреть пример на приложенной картинке. На картинке, кстати, приведен конфигурационный файл ЦА, в котором описан запускаемый сценарий.
Но YAML может быть интересен нам не только в контексте конфигурирования экземпляров ЦА. Если в производственной задаче требуется описывать и хранить какую-то конфигурационную (а может и не только) структуру данных, YAML вполне достоен быть рассмотренным в качестве одной из альтернатив. Все-таки инженерный минимализм – это как минимум красиво. ;-)
507 viewsНикита Зайцев, 11:40