Что такое Puppet? Компоненты и написание манифестов. Объяснение
Представьте себе системного администратора, работающего с несколькими серверами. Если на одном из серверов возникнет проблема, они могут легко ее исправить. Однако ситуация становится проблематичной, когда несколько серверов выходят из строя.
Вот тут-то и может помочь Puppet.
С Puppet вы можете написать простой код и развернуть его на серверах, на которых есть проблемы. После запуска кода все серверы откатываются к предыдущим рабочим состояниям или устанавливаются в новые желаемые состояния в течение нескольких секунд. Puppet также можно использовать для развертывания программного обеспечения и добавления безопасности, все с помощью простых кодов.
В этой статье о куклах рассматриваются следующие темы:
Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)
- Что такое марионетка?
- Компоненты куклы
- Как работает Puppet
- Компании, внедряющие Puppet
- Написание манифестов в Puppet
Научитесь внедрять масштабируемые решения в свое программное обеспечение, автоматизируя свою ИТ-инфраструктуру с помощью курса обучения Puppet. Запишитесь сейчас!
Давайте начнем изучать, что такое Puppet.
Что такое марионетка?
Puppet — это инструмент управления конфигурацией, гарантирующий настройку всех систем в желаемом и предсказуемом состоянии.
Вы также можете использовать Puppet в качестве инструмента развертывания, поскольку он может автоматически развертывать программное обеспечение в системе. Puppet реализует инфраструктуру как код, что означает, что вы можете протестировать среду и убедиться, что она развернута правильно.
Разобравшись с тем, что такое Puppet, давайте изучим компоненты Puppet.
Компоненты куклы
Среду Puppet можно разбить на основную серверную среду (показано выше) и клиентскую среду. В основной серверной среде есть главное хранилище Puppet, в котором хранятся все файлы конфигурации.
- Манифесты — это фактические коды для настройки клиентов.
- Шаблоны объединяют код и данные для создания окончательного документа.
- Файлы — это статический контент, который могут загружать клиенты.
- Модули представляют собой набор манифестов, шаблонов и файлов.
- Центр сертификации позволяет мастеру подписывать сертификаты, отправленные клиентом.
Клиент Puppet — это машина, которую необходимо настроить, состоящая из Agent и Facter. Агент постоянно взаимодействует с главным сервером, чтобы гарантировать, что сертификаты обновляются соответствующим образом. Facter собирает текущее состояние используемого клиента и передает его обратно через агента.
Теперь, когда мы рассмотрели компоненты Puppet, давайте узнаем, как работает Puppet, в рамках нашего изучения того, что такое Puppet.
Как работает марионетка
Puppet имеет архитектуру первично-вторичных узлов.
Клиенты распределены по сети и взаимодействуют с первично-вторичной средой, где присутствуют модули Puppet. Клиентский агент отправляет сертификат со своим идентификатором на сервер; затем сервер подписывает этот сертификат и отправляет его обратно клиенту. Такая аутентификация обеспечивает безопасную и проверяемую связь между клиентом и мастером.
Затем фактер собирает состояние клиентов и отправляет его мастеру. На основе отправленного факта мастер компилирует манифесты в каталоги, которые отправляются клиентам, а агент выполняет манифесты на своей машине. Клиент генерирует отчет, который описывает любые внесенные изменения и отправляется мастеру.
Этот процесс повторяется с регулярными интервалами, гарантируя, что все клиентские системы обновлены. В следующем разделе давайте узнаем о различных компаниях, внедряющих Puppet, в рамках нашего изучения того, что такое Puppet.
Компании, принимающие Puppet
Ваш интерес к пониманию того, что такое Puppet, возрастет, если вы узнаете о компаниях, которые приняли его для управления своей инфраструктурой. Вот некоторые из них:
- Спотифай
- АТ&Т
- Скобы
- АОН
- Военно-воздушные силы США
Причины, по которым эти компании приняли Puppet, могут быть разными. Например, Staples использовала Puppet в качестве инструмента управления конфигурацией для автоматизации управления своим частным облаком и ИТ-операций для обеспечения согласованности, что дало их ИТ-отделам больше времени для инноваций.
Расскажите нам, как писать манифесты, в следующем разделе статьи «Что такое Puppet».
Написание манифестов в Puppet
Файлы, написанные для настройки узла, называются манифестами, скомпилированными в каталоги, которые выполняются на клиенте. Каждый из манифестов написан на языке Ruby с расширением .pp.
Пять основных шагов по написанию манифеста:
- Создавать – Манифесты пишутся системным администратором
- Компилировать – Манифесты собираются в каталоги
- Развертывать – Каталоги размещаются на клиентах
- Выполнять – Каталоги ведутся на клиенте агентом
- Конец – Клиенты настраиваются на желаемое состояние
Все манифесты должны иметь общий синтаксис:
Тип ресурса { 'title' :
Имя_атрибута1 => значение_атрибута
Имя_атрибута2 => значение_атрибута
}
Здесь типом ресурса может быть пакет, файл или служба.
«title» относится к названию типа ресурса.
Имя_атрибута1 – Это функция, значение которой необходимо изменить или установить (например: IP, гарантировать).
значение_атрибута – Это новое значение атрибута (например: настоящее, начало)
Манифест может содержать несколько типов ресурсов. Ключевое слово 'default' применяет манифест ко всем клиентам. Например:
Узел по умолчанию {
файл { '/etc/sample' :
Содержание => «это пример манифеста»
}
служба { 'httpd' :
убедитесь, что => установлено
}
}
Наш первый ресурс — это путь к файлу '/etc/sample'
Указанное содержимое записывается в файл. Файл создается первым, если он еще не существует. Наш следующий ресурс — служба Apache, которая должна быть установлена на клиентском узле. Манифест развертывается на клиентской машине. Теперь у клиента есть файл с именем 'sample' в папке 'etc', и сервер Apache будет установлен.
Для лучшего понимания посмотрите этот видеоурок о том, что такое Puppet и как он работает –
Учитесь бесплатно! Получите доступ к нашей библиотеке из более чем 2000 обучающих видео. Чего вы ждете?
Узнайте больше о кукле
В соответствии с Гранд Вью Исследованияожидается, что глобальный рынок DevOps достигнет 12,85 млрд долларов США к 2025 году, а среднегодовой темп роста составит 18,6 процента. Исследование также подчеркивает растущее внедрение инструментов DevOps для устранения различных неэффективностей в жизненном цикле разработки программного обеспечения. Таким образом, изучение Puppet может сделать вас на шаг вперед в вашем путешествии DevOps.
Поняв, что такое Puppet, вы можете достичь мастерства в использовании этого инструмента, пройдя курс обучения Puppet Foundation от Simplilearn. Этот курс охватывает широкий спектр тем, таких как архитектура Puppet, ее компоненты и терминология, а также эффективное управление инфраструктурой, модулями и средами Puppet.
Чтобы расширить свое обучение за пределы Puppet и охватить другие основные инструменты DevOps, вы можете зарегистрироваться на Devops Bootcamp или DevOps Engineer Program. Курс подготовит вас к карьере в DevOps, быстрорастущей области, которая устраняет разрыв между разработчиками программного обеспечения и эксплуатацией. Вы станете экспертом в принципах непрерывной разработки и развертывания, автоматизации управления конфигурацией, межкомандного взаимодействия и гибкости ИТ-услуг, используя инструменты DevOps, такие как Git, Docker, Jenkins и другие.
Программы для Windows, мобильные приложения, игры - ВСЁ БЕСПЛАТНО, в нашем закрытом телеграмм канале - Подписывайтесь:)