Де я зараз працюю, нам належить керувати частиною Linux нашої ферми серверів, яка становить трохи більше 300 серверів Linux. Сюди в основному входять HP Proliants, а потім IBM 3850, деякі леза IBM, VMware ESX, а також KVM для наших внутрішніх серверів управління.
качан
Ми подивилися на шобника, але проблема була в тому, що шобер дуже специфічний для RHEL / Red Hat. Нам потрібно підтримувати RHEL та SLES як мінімум, а Ubuntu - наступний.
ляльковий
Ми вважали маріонеткою, проте пізніше вирішили проти цього, оскільки це залежить від Ruby, а це означає, що оновлення Ruby може потенційно зламати нашу систему управління.
гарячий провід
Hotwire - це те, що ми використовуємо (розроблено всередині країни, але є відкритим кодом), і робимо це протягом останніх кількох років. По-перше, інвентаризуються системи, які планується побудувати, що означає інвентаризацію центру обробки даних, стійки, апаратного забезпечення, операційної системи, мережі тощо, а по-друге, виконувати швидку збірку та розгортання. Після того як система побудована, автоінвентаризація hotwire підтримує інвентаризацію синхронізовано, а cfengine підтримує їх. Hotwire знає про апаратне забезпечення сервера, розмовляючи з даними SMBIOS / DMI в Біосі через python-dmidecode .
Бонусними балами є те, що він поєднує процес інвентаризації та збирання в одне ціле, тому керувати ними менше, а функція інвентаризації в реальному часі чудова, як ми знаємо, якщо щось не зовсім правильно.
Недоліки полягають у тому, що користувальницький інтерфейс все ще потребує полірування, і тут є помилки, але розробка все ще гаряча, і повідомлення про помилки виправляються відносно швидко.
cfengine
Ми використовуємо cfengine тому, що крім нього, а також маріонетки, нічого іншого немає. Насправді це хороший інструмент, але «хороший» лише як функція того, наскільки хороша ваша політика - якщо ви встановлюєте небезпечну політику, то невелика помилка може спричинити багато збитків. Наприклад, за політикою ми не «модифікуємо» файли, ми або замінюємо їх, або не робимо. Крім того, всі замінені файли мають заголовок, завдяки якому будь-яка особа, яка її редагує, знає, що вона буде замінена наступного разу (вона запускається через cron щогодини).
Конфігурація та всі файли, витіснені cfengine на сервери, також зберігаються в SCM, і, використовуючи гачки після фіксації, де можливо, ми перевіряємо синтаксис, і якщо це не вдається, то фіксація відхиляється. Це легко для приємних програм, таких як Apache, але не так просто для більшості корпоративних програм.