Минута славы у нашего Open Source-инструмента shell-operator — он набрал 2000 звезд на GitHub. Благодарим сообщество за поддержку!
Немного истории
Несколько лет назад, еще до появления 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 и как с ним работать:
P.S. Если вам понравился shell-operator, поставьте ему звездочку на GitHub?