"Ми не програмісти, ми сисадміни"
Моє, як змінилися часи, на гірше: сіра борода, як я, очікувалося, буде кращою програмісткою, ніж професійні програмісти, інакше ніколи б не змогла пройти системного адміністратора .
Тепер у нас є "системні адміністратори", які в основному є настільними користувачами Windows, які в якийсь момент перейшли на Linux і не можуть програмувати, і не знаходять у цьому нічого поганого.
Слон в кімнаті, тому керівництво терпить таке руйнівне ставлення. Згубний для кого чи що? До бізнесу та до інфраструктури.
Повернутися до теми "Лялька [, CFEngine, шеф-кухар]": як тільки хтось встановить таке рішення, він втрачає. Усі програють. Чому? Оскільки той, хто придумав цю ідею, не здатний розробити інкапсульоване управління конфігурацією у вигляді приємних, чистих, Kickstart [, JumpStart, Automated Installer, AutoYaST, Ignite-UX, NIM] пакетів операційної системи. Коли вам доведеться використовувати автоматизований інструмент для злому, як Лялька (або Шеф-кухар, або CFEngine), це означає, що вам не вистачає необхідності розробити та реалізувати процес, який за цим самим дизайном забезпечить цілісність і вимкнення керованих систем повністю автоматизована та абсолютно неінтерактивна.
Ще один важливий момент - якщо вам доведеться мати лялечку чи якесь таке рішення, щоб виправити комусь хакерську конфігурацію системи чи програми вручну, це також повертається до того, що не маю досвіду проектувати процес, а в цьому процесі - рамки, де конфігурація упакована на дискретні компоненти. Насправді той, хто реалізує Лялечку тощо, не має поняття власників компонентів, версій, керування конфігурацією, моделі зрілості можливостей. Це стрімко перетворюється на дуже серйозну проблему в галузі.
Робота з Лялькою також допомогла мені вивчити Рубі, який замінив Bash як мою мову системних інструментів за замовчуванням ".
Для чого потрібен Ruby, коли всебічне управління конфігурацією в кінці може бути інкапсульовано в розділи перед встановленням, післяустановкою, попередньою переміщенням та післяремонтацією пакетів операційної системи, просто за допомогою програм оболонки Bourne, AWK та sed? Щоб хтось пішов назустріч вивченню езотеричної мови Рубі, а діалект її в контексті Лялькових, абсолютно непотрібний. Проблема управління конфігурацією легко вирішується (і, на жаль, вирішено) за допомогою програм оболонок та AWK, і трохи седу (1) тут і там як клей.
Приємно відчувати, як ваш маріонетковий маніфест налаштовує всю машину чи нову послугу з нуля.
Це ще крутіше, оскільки це робиться Kickstart, AutoYaST або JumpStart без єдиного рядка коду та можливість запитувати операційну систему за допомогою вбудованих інструментів, не потребуючи жодного езотеричного чи додаткового програмного забезпечення , не вимагаючи клієнт-сервера необхідна архітектура (SSH - це більш ніж добре, набагато більше, ніж добре), і бачити, що ваша операційна система знає про всі зміни, внесені до неї.
5.Окремий код від даних. Це одне з важчих понять, яке потрібно засвоїти. Значення жорсткого кодування, такі як Хостинг моніторингу для вашого коду модуля, є поганим. Поміщення їх у сховище даних (db, yaml (Hiera використовує це за замовчуванням), csv, що завгодно), які ваші модулі можуть споживати, це добре. Приклад - веб-версія, яка використовує Mysql. Що це дозволяє - це можливість поштовху коду та даних окремо. Це робить ваш процес розробки більш простим.
... Або ви можете просто шаблонувати свої конфігураційні файли зі змінними оболонок, навіть зворотними цитатами (наприклад ls -1 ...
) та написати сценарій оболонки, який використовує AWK для виклику eval (1) та розширення всіх змінних у шаблоні, тим самим використовуючи точно такий же потужний аналізатор, в які вбудовані оболонки. Навіщо робити це складним, коли це може бути справді, дуже просто? Де ви будете зберігати значення конфігурації? Чому завгодно, як, наприклад, файли pkginfo (4), або база даних, як Oracle, або майже будь-де . Немає потреби в ультракомплексних рішеннях. У бібліотеці я згадую вище , може бути просто отримані з розділів Preinstall або послеустановочние в операційній системі пакетів, усуваючи тим самим дублювання і використовуючи центральну частину коду ...
Але перш за все я вважаю, що наведена цитата є прикладом наступного покоління системних адміністраторів, які потребують репетиторства не системними адміністраторами, а системними інженерами . Знайдіть собі сіру бороду і підпишіться як учень.