Ansible — это мощный инструмент для управления конфигурацией, оркестровки, непрерывной доставки и т . д . Как разработчик программного обеспечения, я использовал Ansible в качестве основного механизма для выполнения повторяющихся шагов в удобной для совместного использования и понятной для человека форме в течение последних двух лет. Мягко говоря, я был озадачен, когда коллега указал мне на Molecule .
Выйдя из мира запуска плейбука на целевых тестовых системах, чтобы посмотреть, что произойдет, затем запустить виртуальную машину, бродячую или докерную систему, а затем откатить ошибки при разработке роли или плейбука; Я нашел этот инструмент очень интригующим. Molecule позволяет вам не только тестировать роли, которые вы создаете, для таких вещей, как синтаксис, но также позволяет повторять настройку и демонтаж систем для тестирования. Основы Molecule описаны в следующей статье с сайта opensource.com . Достаточно беглого взгляда на вводную статью и документацию по Molecule, затем мы можем начать с того, как я применил это к практическому варианту использования, а также с некоторыми советами/рекомендациями о том, как получить максимальную отдачу отМолекула .
Пример использования
В моем текущем проекте мы извлекаем данные из Kubernetes ( Openshift ), чтобы определить стоимость запуска кластера. Мы используем метрику оператора , которая извлекает метрики из Prometheus для сбора информации об использовании. Мы создали проект Korekuta , который использует Ansible для выполнения двух задач:
(1) настроить отчеты об измерениях оператора и сохранить данные конфигурации
(2) собирать данные из API измерения оператора и отправлять их в облачное хранилище для обработки