2000 звезд на GitHub у нашего Open Source-инструмента shell-operator

Минута славы у нашего Open Source-инструмента shell-operator — он набрал 2000 звезд на GitHub. Благодарим сообщество за поддержку!

ee6a24337074774ba3dcd953af0309c0.png

Немного истории

Несколько лет назад, еще до появления K8s-платформы Deckhouse, нам понадобился инструмент, который бы помог упростить и ускорить автоматизацию небольших задач вроде тиражирования секретов для доступа к Docker Registry. Операторы под Kubernetes удобно писать на Go, но системные администраторы его обычно не знают — да и не должны. Бегать же по каждой мелочи в команду разработки долго и затратно. Зато администраторы точно знают Shell/Bash и почти точно — Python. 

Конечно, писать на Bash или Python какие-то автоматизации для K8s можно и без shell-operator, но такие решения получаются немного костыльными. shell-operator же позволяет подписаться на события от объектов Kubernetes, а когда получает их, автоматически запускает какую-то внешнюю программу (например, тот самый bash-скрипт) и передает в нее информацию о событии.

shell-operator и Deckhouse

Наши инженеры очень широко использовали shell-operator в своих ежедневных задачах. Более того, он стал «пластилином и веточками», из которых мы собрали прототип нашей будущей Kubernetes-платформы Deckhouse и проверили разные гипотезы относительно автоматизации работы с K8s. Со временем, конечно, все важные модули и операторы Deckhouse мы переписали на Go.

Инструмент получился классным, а мы всегда любили Open Source и старались максимально делиться наработками с сообществом. В итоге мы выложили shell-operator в открытый доступ — чтобы другие системные администраторы и инженеры тоже могли быстро писать операторы и сценарии для автоматизации привычным способом.

Больше о том, как устроен shell-operator и как с ним работать:

  1. «Представляем shell-operator: создавать операторы для Kubernetes стало ещё проще»

  2. «Go? Bash! Встречайте shell-operator»

P.S. Если вам понравился shell-operator, поставьте ему звездочку на GitHub

© Habrahabr.ru