Как стать автором
Обновить
0

Puppet *

Система управления конфигурациями

Сначала показывать
Порог рейтинга
Уровень сложности

Как мы построили отказоустойчивую open-source-инфраструктуру для управления пользовательскими Linux-устройствами

Уровень сложностиСложный
Время на прочтение14 мин
Количество просмотров8.8K

Всем привет! Меня зовут Владислав, я руководитель направления развития пользовательских Linux-систем в Т-Банке. Мы работаем над проектом Linux Desktop. 

Проект зародился во времена блокировки иностранного софта. Нам нужен был опенсорсный продукт, который никуда не исчезнет и на закроется. Но прежде чем развивать Linux Desktop, в компании нужно было выбрать систему управления конфигурациями, которая сможет выдержать больше 15 000 хостов. А еще построить инфраструктуру, которая будет отказоустойчивой и не рассыпаться, если один из ЦОДов упадет.

Расскажу, как мы создали инфраструктуру, которая контролирует системы безопасности, магазин приложений, конфигурации ядра и многое другое. А еще такая инфраструктура — запасной аэродром, если вдруг придется отказаться от западного вендора.

Читать далее

Новости

Что такое Puppeteer и как его использовать для веб-скрапинга | Полное руководство 2024

Время на прочтение7 мин
Количество просмотров8.8K

Это полное руководство расскажет о том, что такое Puppeteer и как эффективно использовать его для веб-скрапинга

Читать далее

Foreman+Puppet — О чем нам не говорят, потому что думают, что все это и так знают

Уровень сложностиПростой
Время на прочтение13 мин
Количество просмотров6.2K

Всем привет.

Я попытался описать в статье всё то, что я хотел бы знать о связке Foreman+Puppet на момент когда только начинал их изучение - информации в интернете можно найти действительно много, но мало её найти, нужно ещё и понять как всё это взаимосвязано - если вы, так же как и я когда-то, только начинаете изучение Foreman+Puppet и у вас в голове нет понимания о чём в найденной информации говорится, то предлагаю посмотреть эту статью - возможно я смогу помочь вам разобраться в некоторых моментах.

Читать далее

Использование Foreman и Puppet в подходе IaC

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров6.3K

Использование Foreman и Puppet в подходе IaC.

Foreman предоставляет спектр инструментов для контроля за ИТ-средой, в статье описаны отдельные возможности, такие как: использование Puppet модулей, установка параметров для Puppet, процесс доставки модулей, написание скриптов сбора искомых фактов, использование шаблонов для выгрузки репортов.

Также затронуто использовании программного интерфейса и базы данных

Читать далее

Групповые политики Linux средствами Puppet

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров8.5K

В связи с известными событиями российские компании всё чаще начали переходить на отечественное программное обеспечение. И так уж вышло, что я являюсь сотрудником одной из таких компаний.

Лично мне, как уже бывшему windows-администратору, при переходе на отечественную операционную систему остро не хватало такого инструмента, как групповые политики (GPO), позволяющего управлять настройками и безопасностью компьютеров в сети.

Для управления конфигурациями устройств в своей организации я выбрал Puppet.

Читать далее

Инфраструктура как код в Авито: уроки, которые мы извлекли

Время на прочтение19 мин
Количество просмотров13K

Привет, Хабр! Меня зовут Саша Козлов, я занимаюсь разработкой инфраструктуры и системным администрированием в Авито последние три с половиной года. Я расскажу, как мы масштабировали и модернизировали со временем нашу работу с инфраструктурным кодом и вывели её на качественно новый уровень.


Мы отвечаем за полный цикл управления оборудованием: от закупки и монтажа в ДЦ до доставки до конечного потребителя. Речь пойдёт об уроках, которые мы вынесли за последние несколько лет, работая с тысячей единиц оборудования и несколькими тысячами единиц конфигурирования.


Читать дальше →

Введение в Puppet

Время на прочтение26 мин
Количество просмотров94K

Puppet — это система управления конфигурацией. Он используется для приведения хостов к нужному состоянию и поддержания этого состояния.


Я работаю с Puppet уже больше пяти лет. На мой взгляд, его официальная документация хороша для тех, кто уже знаком с Puppet, а для новичка она сложна — сразу даётся много новых терминов; непонятно, в каком порядке читать. Эта статья — по сути переведённая компиляция ключевых моментов из официальной документации, которая позволит новичкам быстро вникнуть в суть Puppet. Я переупорядочил информацию, чтобы постепенно рассказать про все сущности и термины.


Читать дальше →

Миграция с Nagios на Icinga2 в Австралии

Время на прочтение17 мин
Количество просмотров6.6K

Всем привет.


Я — сисадмин linux, переехал из России в Австралию по независимой профессиональной визе в 2015 году, но статья будет не о том, как поросёнку завести трактор. Таких статей уже и так достаточно (тем не менее, если будет интерес — напишу и про это), так что я хотел бы рассказать о том, как на своей работе в Австралии в должности linux-ops-инженера я был инициатором миграции с одной системы мониторинга на другую. Конкретно — Nagios => Icinga2.


Статья частично техническая и частично — про общение с людьми и проблемы, связанные с разницей в культуре и методах работы.

Как оно всё было и с какой кучей геморроя мне пришлось столкнуться

Разработка модулей для puppet при помощи puppet development kit

Время на прочтение9 мин
Количество просмотров4.1K

Примерно месяц назад у меня был выбор: писать ли модуль для puppet "в стол" (то есть, для внутренней инфраструктуры) или делать его универсальным, открывать исходники и публиковать его на puppet forge. Конечно, быстрее и проще было бы набросать быстро под себя 2-3 класса и на том успокоиться, но вот опыт, который был получен в процессе публикации модуля, является ценным и хочется им поделиться. В рунете никакой информации по использованию puppet development kit (далее PDK) нет, так что можно считать это своеобразным туториалом.


О чём статья


В процессе разработки модуля (а точнее, двух) я открыл для себя PDK, который сильно облегчает как разработку, так и сопровождение модулей. А именно:


  • Автоматическое форматирование metadata.json при обновлении последнего
  • Генерация конфигурации для различных систем CI, которые умеют следующее:
    • Проверка ruby кода линтером rubocop
    • Запуск юнит тестов
    • При определённых условиях — автоматическая заливка рабочего кода на puppet forge
  • Генерация документации на основе тегов в коментариях при помощи yard
  • Плашка [PDK] для модуля на puppet forge. Мелочь, а приятно!

Всех заинтересованных

прошу под кат!

Автоматизация системы мониторинга на базе Icinga2 и Puppet

Время на прочтение24 мин
Количество просмотров6.7K

 Автоматизация системы мониторинга на базе Icinga2 и Puppet


Поговорим немного о… Infrastructure as code (IaC).


На Хабре есть несколько очень хороших статей про Icinga2, есть также отличные статьи про Puppet:

Icinga2 простой вариант
Поднимаем микромониторинг на icinga2 с минимальными затратами
Настройка современного Puppet сервера с нуля

Однако тема автоматизации и интеграции этих двух потрясающих систем совсем не раскрыта.
В данном руководстве, я покажу на «живом» примере, как можно, объединив эти две
системы, получить мощный инструмент мониторинга вашей инфраструктуры со всем набором необходимых функций. Статья является своего рода руководством к действию по установке пакета «все в одном флаконе». После выполнения этого руководства у вас в наличии будет полностью рабочее решение мониторинга, которое в дальнейшем можно будет «допиливать» под себя. Давайте попробуем!
Читать дальше →

Puppet+Hiera. Выжимаем максимум

Время на прочтение15 мин
Количество просмотров14K

В этой статье я хотел бы рассказать про то, как мы используем Puppet и Hiera для конфигурирования железных и виртуальных серверов. В основном, в ней будет идти речь об архитектуре и придуманной нами иерархии, облегчающей и систематизирующей конфигурацию серверов.


Написать эту статью меня побудило то, что в интернете я особо не находил хороших, реально рабочих примеров того, как можно работать с hiera и для чего она нужна. В основном, это туториалы с примерами для того, чтобы въехать в тему. Но реальное практическое применение hiera там не написано. Возможно, я плохо искал, но вот вам реальный пример, который, возможно, вам поможет расставить все точки над i, как и мне когда-то.


Для кого была бы полезна данная статья


Если:


  • Вы знаете, что такое Puppet и Hiera, но особо не использует их в связке, потому что непонятно, как это делать и зачем
  • У вас в компании есть множество команд и вам надо как-то разграничивать конфигурацию серверов на уровне команд
  • Вы используете паппет, и нодные файлы у вас разрослись до неимоверных размеров
  • Вам нравится читать конфигурацию серверов в божественном yaml формате :)
  • Вы в принципе интересуетесь темой Configuration Management и системным администрированием

Эта статья для вас.

Читать дальше →

Настройка среды разработки: кофейная гуща (Часть 2)

Время на прочтение5 мин
Количество просмотров6.1K
Настройка среды разработкиПривет, дорогой читатель!
В этот раз я хочу поделиться своим результатом настройки персонального окружения для работы с различными PHP-based проектами с использованием Puppet. В данной статье описываются результаты, которые были получены в процессе изучения и написания Puppet конфигурации.

Данная статья написана с целью показать один из способов это сделать. Я не хочу призывать к действию, а только делюсь тем, с чем я столкнулся, что сделал и как использую.

Статья будет очень длинной с уклоном в техническую сторону. Прошу под «кат».
Читать дальше →

Devops в кровавом энтерпрайзе

Время на прочтение14 мин
Количество просмотров32K

Вот к такому можно стремиться

У нас больше 350 своих разработчиков ПО и тестировщиков по всей стране, плюс мы часто взаимодействуем с инженерами и разработчиками заказчиков. Чтобы перейти на практическое использование devops, нам нужно было обеспечить не только внедрение методологии, но и приучить любимых российских заказчиков к некоторой базовой культуре. Просто пара диалогов для понимания:
— Почему у нас всё упало?
— Потому что вы откатали это на стенде, всё протестировали, а потом развернули на проде. Вот у вас настройка, которая не попала в инструкции, и жила только в голове старого админа.

Или:
— Почему не запускается по всей стране?
— Потому что у вас несколько десятков разных региональных инсталляций, каждая делалась руками, и на каждой разные конфиги. И ещё в паре случаев инженер ошибся.
— Поправите до завтра? Очень нужно! Только доступ удалённо мы вам не дадим.
— ..! Конечно, у нас есть команда высокооплачиваемых спецов, обожающих ездить на Дальний Восток. Нет проблем.
Читать дальше →

Ближайшие события

RubyMine 2017.3. Более быстрая IDE, WSL, Embedded Puppet, и многое другое

Время на прочтение5 мин
Количество просмотров3.6K
Здравствуй, Хабр! Как можно заметить по последним постам в блоге JetBrains, многие продукты компании находятся в стадии заключительных релизов в этом году.

В этой серии мы расскажем про новую версию IDE для Ruby и Rails, RubyMine 2017.3.


Базовая установка и настройка Puppet 4 с хранением манифестов в SVN

Время на прочтение5 мин
Количество просмотров7.4K
Доброго времени суток!

Сегодня будем готовить Puppet 4 на Ubuntu Server 16.04 c хранением манифестов в SVN. Так же статье будет рассмотрен пример создания простого собственного модуля для установки и конфигурирования агента сбора логов в Graylog2 через Graylog Collector Sidecar и использованием Filebeat в качестве бэкэнда. Данный пример не претендует на изящное решение, но описывает ключевые аспекты с примером.

Исходная машина для Puppet Server — VPS Ubuntu 16.04 — 4Gb Memory, 2 CPU cores.
Читать дальше →

В разрезе: новостной агрегатор на Android с бэкендом. Система мониторинга и визуализации данных (InfluxDB, Grafana)

Время на прочтение9 мин
Количество просмотров8.8K
Вводная часть (со ссылками на все статьи)

Сложные системы (распределённые/крупные/со сложной логикой/сложной системой данных) – как живой организм: подвижный, изменчивый и самостоятельный. Всё это требует постоянного контроля со стороны разработчиков/администраторов/DevOps-инженеров.

К этому выводу я пришёл, когда система несколько раз «загибалась» в ходе её разработки, настройки сервера и эксплуатации. Это натолкнуло меня на мысль, что мониторинг должен осуществляться не только на этапе производственной эксплуатации, но и на этапе разработки.

Обо всём по порядку…
Читать дальше →

В разрезе: новостной агрегатор на Android с бэкендом. Система контроля конфигураций (Puppet)

Время на прочтение13 мин
Количество просмотров2.2K
Вводная часть (со ссылками на все статьи)

В ITIL (v3) среди описанных процессов есть 2 особенно интересных: «Процесс управления конфигурациями» и «Процесс управления изменениями», предназначенных для анализа и управления изменениями конфигураций систем. Для продолжения повествования нужно определиться, что такое «система». В это понятие входит огромное количество составляющих, влияющих (прямо или косвенно) на предоставление услуги:

  • серверы

    • настройки безопасности (пользователи, группы, права, межсетевые экраны);
    • установленные приложения и библиотеки;
    • настройки работы приложений (лимиты по дискрипторам, памяти, времени CPU и т.д.);
    • резервное копирование;

  • системы мониторинга за работой прикладного и системного ПО;
  • конфигурационные файлы самого продукта, его компонентов, вспомогательных системных и прикладных приложений
  • ...

Пытаться минимизировать контур системы вашего проекта (тип, резервное копирование не относится к функционированию системы) – значит рыть себе яму, в которую рано или поздно вы провалитесь.
Читать дальше →

RubyMine 2017.1: Docker, RuboCop, автогенерация Rails-тестов, улучшения для Puppet

Время на прочтение3 мин
Количество просмотров4.4K
Привет, Хабр! Недавно мы выпустили RubyMine 2017.1, новую версию нашей IDE для Ruby и Rails, и уже обновили её до более стабильной версии 2017.1.1. Пора рассказать о том, что в ней нового.


  • Docker
  • Создание RVM-гемсетов
  • RuboCop
  • Мгновенное создание Rails-тестов
  • Улучшения для разработки модулей Puppet
  • Структура проекта Puppet
  • Улучшения для JavaScript
  • Обновленный поиск в VCS

Установка и настройка Puppet + Foreman на Ubuntu 14.04 (пошаговое руководство)

Время на прочтение8 мин
Количество просмотров27K
image Доброго времени суток, жителям Хабра!

Когда число управляемых серверов достигает нескольких десятков, а то и сотен, приходится искать решение по автоматической настройке и управлению таким парком. Тут на помощь приходит Puppet. Почему Puppet? Puppet кроссплатформенный, имеет богатое сообщество, имеет множество готовых модулей (4800+), имеет Enterprise версии. Все эти плюсы не дают усомнится в мощи данного продукта. Но управлять из консоли таким «комбайном» не так просто. Потому для удобного управления и настройки Puppet был разработан Foreman. Далее установка и настройка этой связки на примере задачи управления SSH-ключами.
Читать дальше →

Почему мы уверены в том, что развернули

Время на прочтение6 мин
Количество просмотров13K
image
Часто бывает, когда что-то не работает. И никто не хочет, чтобы что-то не работало по его вине. В контексте больших инфраструктур и распределенных приложений ошибка конфигурации может быть фатальной.

В статье я покажу как правильно тестировать окружение для приложения, какие инструменты использовать, приведу примеры удачного и целесообразного тестирования.

Статья будет интересна командам, которые практикуют DevOps или SRE, ответственным Dev, и прочим хорошим людям.
Читать дальше →