Spec-Zone.ru › Chef 18

Обзор платформы

[править на GitHub]

Chef — компания по автоматизации. С момента основания в 2008 году мы объединяем разработчиков и системных администраторов с нашим продуктом Chef Infra. На протяжении многих лет понятие автоматизации расширилось. Сегодня Chef предлагает комплексное решение по автоматизации инфраструктуры и приложений, охватывающее весь цикл разработки, от разработки до производства. Вот полное решение Chef.

Diagram of Automate architecture.

Chef Infra

Chef Infra — мощная платформа автоматизации, которая превращает инфраструктуру в код. Независимо от того, работаете ли вы в облаке, на локальном сервере или в гибридной среде, Chef Infra автоматизирует конфигурацию, развертывание и управление инфраструктурой по всей вашей сети любого размера.

На этой диаграмме показано, как вы разрабатываете, тестируете и развертываете код Chef Infra.

image

Использование Chef Workstation

Chef Workstation позволяет создавать кулинарии и администрировать вашу инфраструктуру. Chef Workstation работает на компьютере, который вы используете каждый день, будь то Linux, macOS или Windows.

Chef Workstation поставляется с инструментами тестирования Cookstyle, ChefSpec, Chef InSpec и Test Kitchen. С их помощью вы можете убедиться, что ваш код Chef Infra выполняет задуманную вами работу, прежде чем развернуть его в средах, используемых другими, таких как этапы подготовки или производство.

При написании кода вы используете ресурсы для описания вашей инфраструктуры. Ресурс соответствует какой-либо части инфраструктуры, например, файлу, шаблону или пакету. Каждый ресурс объявляет, в каком состоянии должна быть часть системы, но не то, как туда добраться. Chef Infra обрабатывает эти сложности за вас. Chef Infra предоставляет множество ресурсов, готовых к использованию. Вы также можете использовать ресурсы, поставляемые в кулинариях сообщества, или написать свои собственные ресурсы, специфичные для вашей инфраструктуры.

Рецепт Chef Infra — это файл, который объединяет связанные ресурсы, например, все необходимое для конфигурации веб-сервера, сервера базы данных или балансировщика нагрузки. Кулинария Chef Infra предоставляет структуру для ваших рецептов и, в целом, помогает вам сохранять организацию.

Chef Workstation включает другие командные инструменты для взаимодействия с Chef Infra. К ним относятся knife для взаимодействия с сервером Chef Infra и chef для взаимодействия с вашим локальным хранилищем кода chef (chef-repo).

Загрузка кода на сервер Chef Infra

После завершения разработки и тестирования кода на локальной рабочей станции вы можете загрузить его на сервер Chef Infra. Сервер Chef Infra служит центром для данных конфигурации. Он хранит кулинарии, политики, применяемые к системам в вашей инфраструктуре, и метаданные, описывающие каждую систему. Команда knife позволяет взаимодействовать с сервером Chef Infra с вашей рабочей станции. Например, с её помощью вы загружаете свои кулинарии.

Настройка узлов с помощью Chef Infra Client

Chef Infra спроектирован так, что большая часть вычислительных усилий происходит на узлах, а не на сервере Chef Infra. Узел представляет собой любую управляемую вами систему, как правило, виртуальную машину, контейнерный экземпляр или физический сервер. В основном, это любой вычислительный ресурс в вашей инфраструктуре, управляемый Chef Infra. На всех узлах установлен Chef Infra Client, и Chef Infra Client доступен для нескольких платформ, включая Linux, macOS, Windows, AIX и Solaris.

Периодически Chef Infra Client обращается к серверу Chef Infra для получения последних кулинарий. Если (и только если) текущее состояние узла не соответствует тому, что должно быть указано в кулинарии, Chef Infra Client выполняет инструкции кулинарии. Этот итеративный процесс гарантирует, что вся сеть сходится к состоянию, предусмотренному политикой бизнеса.

Chef Habitat

Chef Habitat предлагает новый подход к развертыванию приложений — автоматизацию приложений. Автоматизация приложений означает, что автоматизация упакована вместе с приложением и перемещается вместе с ним, независимо от того, где это приложение развернуто. Единицей развертывания становится приложение и связанная с ним автоматизация. Среда выполнения, будь то контейнер, bare metal или PaaS, никоим образом не определяет приложение.

Chef Habitat состоит из формата пакетирования и супервизора. Формат определяет пакеты Chef Habitat, которые изолированы, неизменны и подлежат аудиту. Супервизор Chef Habitat знает, как взять пакеты и запустить их. Он учитывает отношения пакетов, стратегию обновления и политики безопасности. Чтобы узнать все о Chef Habitat, перейдите на веб-сайт Chef Habitat по адресу https://www.habitat.sh.

Chef InSpec

Chef InSpec — это открытая фреймворк для тестирования с языком, понятным как людям, так и машинам, для указания требований соответствия, безопасности и политики. Когда соответствие выражено как код, вы можете интегрировать его в свою конвейерную систему развертывания и автоматически проверять соблюдение политике безопасности.

Код Chef InSpec может работать на нескольких платформах. Вы можете выполнять один и тот же набор тестов локально, с удалёнными командами с использованием SSH или WinRM, или с внешними механизмами, такими как API Docker.

С помощью Chef InSpec вы можете не только убедиться, что ваши физические сервера соответствуют требованиям. Вы можете, например, оценить данные в базе данных или проверить конфигурацию виртуальных ресурсов, используя их API.

Чтобы понять, как работает язык Chef InSpec, вот несколько примеров. Эта проверка Chef InSpec гарантирует, что небезопасные службы и протоколы, такие как telnet, не используются.

describe package('telnetd') do
  it { should_not be_installed }
end

describe inetd_conf do
  its('telnet') { should eq nil }
end

Chef Automate

Chef Automate предоставляет полный набор корпоративных возможностей для отображения узлов и соответствия им. Chef Automate интегрируется с открытыми продуктами Chef Infra Client, Chef InSpec и Chef Habitat. Chef Automate поставляется с всесторонней круглосуточной поддержкой всей платформы, включая открытые компоненты.

Chef Automate предоставляет полную непрерывную совместимость и безопасность, а также обеспечивает контроль за вашими приложениями и инфраструктурой.

Узлы

Chef Automate предоставляет хранилище данных, которое принимает данные с сервера Chef, Chef Habitat и рабочих процессов и соблюдения стандартов Chef Automate. Он предоставляет представления операционных и событий рабочих процессов. Язык запросов доступен через интерфейс и настраиваемые панели мониторинга.

Вот пример панели мониторинга Chef Automate.

Image of Chef Automate dashboard showing the status of nodes under management with Chef Automate.

Соответствие

Chef Automate создает настраиваемые отчеты, которые выявляют проблемы с соответствием, риски безопасности и устаревшее программное обеспечение. Вы можете написать собственные правила соответствия в Chef InSpec, или вы можете быстро начать работу, используя встроенные профили, которые представляют собой предопределенные наборы правил для различных систем безопасности, таких как эталонные данные Центра Интернет-безопасности (CIS), включенные в Chef Automate.

Дополнительную информацию об интегрированных возможностях отчетности в Chef Automate см. в разделе Обзор соответствия.

Высокая доступность

Chef Automate включает высокодоступный сервер Chef Infra с отказоустойчивостью, немедленно согласованными результатами поиска и точными данными в режиме реального времени о вашей инфраструктуре. Chef Automate также предоставляет графический консоль управления для сервера Chef Infra.

Дополнительные сведения

Если вы хотите получить практический опыт, перейдите на https://learn.chef.io/ для ознакомления с учебными пособиями, информацией об официальных учебных курсах и ресурсах сообщества.

© Chef Software, Inc.
Licensed under the Creative Commons Attribution 3.0 Unported License.
The Chef™ Mark and Chef Logo are either registered trademarks/service marks or trademarks/servicemarks of Chef, in the United States and other countries and are used with Chef Inc's permission.
We are not affiliated with, endorsed or sponsored by Chef Inc.
https://docs.chef.io/platform_overview/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API