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

DevOps «наоборот», приглашение в проект Bell — action at a distance

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

Типичный DevOps обеспечивает движение кода от Dev по направлению к PROD, и с этим все хорошо. Ну, насколько это может быть хорошо в нашем IT мире. Jenkins, Terraform, Octopus и многое другое к вашим услугам. А вот с движением информации назад все куда сложнее.

Да, во многих компаниях есть процессы копирования баз из PROD в QA и DEV (с обрезанием секретной информации), однако в сложных случаях необходимо смотреть, что происходит именно на PROD. Хотя бы логи. И, если вы работаете в Enterprise, то все сложно или очень сложно - в зависимости от уровня паранои важности информации.

В худших случаях у разработчиков нет никакого доступа на PROD, и им рассказывают (lol), что там происходит. Как вариант, организуется митинг (с 20 приглашенными), где шарится экран, и программист говорит, какие кнопки нажимать, чтобы посмотреть логи. КПД таких митингов крайне мал.

В более цивилизованных местах некоторым девелоперам или DBA могут дать временный доступ на PROD с помощью различных систем. Как пример такой системы упомяну CA PAM, которую наблюдал в работе в некоторых отделах. Минусы таких систем (с Remote Desktop Access) в том, что они дают все или ничего - потенциально доступ к PROD позволяет все там порушить, хотя, как правило, для анализа проблемы достаточен read-only доступ. Даже для доступа к СУБД, где можно явно организовать read-only доступ, проблема существует:

Из-за того, что написано во второй строчке, у RDP/Citrix доступа к PROD часто выключен copy-paste, что превращает работу в кошмар (если надо, например, скопировать на PROD полезный скрипт - увы, copy-paste нельзя отключать только в одну сторону, только полностью!)

Миссией проекта является организация безопасного метода доступа к higher environments, гарантирующего легкость и интерактивность с полным аудитом всех операций. Проект называется Bell - Action at a distance, а бородатый мужик на лого - это Джон Белл, вы его знаете по концепции "квантовой спутанности".

Что сделано

Проект полностью функционален и используется там, где я работаю. Сайт проекта тут и в этой статье я не буду повторять то, что написано на сайте, лишь кратко пройду по содержанию.

Проект, разумеется, open source. Модули сейчас пишутся на PowerShell, а сам сервер работает под Windows, хотя прямых завязок на Windows и PowerShell нет (кроме hardcode *.ps1 в некоторых местах). Конечно, хочется чтобы это рaботало и под Linux, и здесь надежда на комьюнти.

Модули пишуться очень просто - как будто собираешь что-то из лего. Как тот же Jenkins, свежеустановленный сервер 'пуст' - если в Jenkins вы создаете свои Jobs, то тут вы пишете свои модули с нуля, либо берете готовые и подпиливаете их под свою специфику. Существуют готовые модули:

  • MSSQL - SQL server - статистика, метрики, логи

  • WMI - Показывает LUNs, свободное место, состояние сервисов

  • VMware - Инвентории и статистики с VMware серверов (читаются из Postgre)

  • FileBrowse - позволяет читать файлы log, txt, xml, config на Windows серверах

  • PerfMon - Читает статистики Perfmon на Windows серверах и строит графики

  • EventLog - Показывает Event Log

  • Postgres - Все для базы Postgres

  • MySQL - Все для MySQL

  • AWS - Показывает состояние EC2 и RDS инстансов и позволяет показывать файлы на S3 бакетах.

Что хочется сделать

Модули: один из авторов проекта, ваш покорный слуга, MSSQL DBA. Поэтому модули Postgres, MySQL и AWS были сделаны на отъе минималистично, для СУБД я просто пытался перенести то, что сделано в MS SQL (когда есть аналог). Безусловно, если вы специалист по Postgre, MySQL (и совместимым базам), AWS - у вас будет куча идей, что добавить. Также хочется добавить поддержку Oracle.

Сервер: Фронт написан на vue.js версии 2, бэк - Node.js. Возможно, имеет смысл кое что изменить в используемом стеке.

Linux: Да, и любой shell script вместо ps1.

UI: дальнейшее развитие

  • Zoom In/Out для Charts

  • Live Charts (смотришь на них, а статистика идет)

  • Actions (не read-only действия) - для них потребуется ввод данных в формы.

Ждем тех, кому интересна эта тема!

Контактуйте со мной или с моим коллегой @Writer4

Теги:
Хабы:
Всего голосов 9: ↑5 и ↓4+3
Комментарии12

Публикации

Истории

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

7 – 8 ноября
Конференция byteoilgas_conf 2024
МоскваОнлайн
7 – 8 ноября
Конференция «Матемаркетинг»
МоскваОнлайн
15 – 16 ноября
IT-конференция Merge Skolkovo
Москва
22 – 24 ноября
Хакатон «AgroCode Hack Genetics'24»
Онлайн
28 ноября
Конференция «TechRec: ITHR CAMPUS»
МоскваОнлайн
25 – 26 апреля
IT-конференция Merge Tatarstan 2025
Казань