nixp.ru v3.0

22 ноября 2024,
пятница,
02:14:58 MSK

29 апреля 2017, 08:00

OctoDNS — Open Source-инструменты от GitHub для управления DNS-записями у разных провайдеров

Логотип OctoDNS
Логотип OctoDNS
Иллюстрация с сайта GitHub Engineering

Компания GitHub, стоящая за одноимённым онлайн-сервисом, открыла код своего очередного продукта, на сей раз для работы с DNS ­— OctoDNS.

OctoDNS позиционируется как «DNS как код» и «утилиты для управления DNS среди множества провайдеров». Эти инструменты появились в ответ на потребность инженеров SRE (Site Reliability Engineers), обслуживающих инфраструктуру GitHub и использующих множество провайдеров для обеспечения отказоустойчивой доступности своих DNS-зон (с помощью split DNS). При работе с большим количеством DNS-зон и записей у разных провайдеров возникла необходимость удобного управления всеми записями и их своевременной синхронизации.

Для решения своей проблемы в GitHub пошли по принципу «инфраструктура как код» (IaC): все DNS-зоны и записи организации помещены в конфигурационные файлы, которые хранятся в Git-репозитории. Изменения в них происходят в соответствии с рабочим процессом GitHub Flow, что позволяет деплоить ветки конфигов по аналогии с разработкой веб-приложений. Конфигурация DNS при этом хранится в формате YAML, а затем распространяется всем провайдерам с помощью написанной на Python утилиты octodns-sync.

Исходный код OctoDNS распространяется на условиях свободной лицензии MIT. Скачать его и увидеть документацию (включая описание общего рабочего процесса и примеры конфигураций) можно в репозитории на GitHub.

Постоянная ссылка к новости: http://www.nixp.ru/news/14012.html. Дмитрий Шурупов по материалам zdnet.com, GitHub Engineering.

fb twitter vk