Как я перестал пользоваться консолью (почти)⁠⁠

Я достаточно давно, уже больше 18 лет (капец я уже старый :`( ), использую консоль. Пробовал разные оболочки: bash, sh, zsh, ksh, но остановился на тех, что стоят по умолчанию на системах. Пожалуй, это моя лень, перенастраивать оболочки и терминалы под себя — никогда не было моим любимым занятием. А ещё меня всегда бесило редактирование конфигов: ок, если открыл, нашел нужный кусок, поправил, закрыл, перезагрузил сервис, а вот если: открыл, нашел нужный кусок, поправил, закрыл, перезагрузил сервис, а оно не работает... и опять: открыл, нашел нужный кусок, поправил, закрыл, перезагрузил сервис и так пока не заработает, N-ое количество раз.

Да, для этого можно открыть несколько терминалов: редактировать в одном, перезапускать в другом. Но тут тоже есть свои минусы, один из них — захламляется терминал вкладками.

Как вы наверное уже поняли — я ленивый админ, который любит красивенькие (и не очень) GUI. Поэтому, начав плотно работать с HAProxy, мне быстро надоело постоянно править конфиг на нескольких серверах. И, не обнаружив на просторах интернета ничего подходящего, я решил написать свой (ага, очень ленивый — 5 лет уже закончить не могу).

Общаясь с одним из пользователей Roxy-WI, я спросил: «А зачем тебе оно вообще?”, в ответ получил хорошую фразу: »Чтобы в консоль не лазить”. И я задумался. Действительно, после создания пользователя для подключения сервера к Roxy-WI (или можно без этого шага, если root нам не страшен) больше нет необходимости заходить на сервер.

Смотрите сами.

Допустим, мы захотели развернуть новый HA кластер с HAProxy/Nginx/Apache на новых серверах, и нам для этого надо всего-лишь заполнить пару полей и выбрать пару галочек:

Как я перестал пользоваться консолью (почти)⁠⁠

И, через минуты полторы, будет поднят Keepalived с VIP адресом, который будет мониторить сервис HAProxy, затем будет установлен и сам HAProxy.

Ок, у нас есть HA кластер и он даже работает, но какой с него прок, если он пустой? Таки надо лезть в консоль? Конечно же нет! Дальше идем на страницу добавления секций и “накликиваем” то, что нам нужно:

Как я перестал пользоваться консолью (почти)⁠⁠

Можно посмотреть, что получилось в итоге, а можно даже сохранить этот кусок конфига в основной конфиг! Делаем reload или restart на странице с сервисами и всё.

И да, Roxy-WI не пропустит конфиг с ошибками и не перезапустит сервис. У нас есть настроенный и рабочий HAProxy:

Как я перестал пользоваться консолью (почти)⁠⁠

Ещё один приятный бонус от GUI — все видно в одном месте: состояние сервисов, их версию, адрес и кто из них master сейчас. А если нажать на сервис, то можно увидеть более подробную информацию:

Как я перестал пользоваться консолью (почти)⁠⁠

И конечно же редактирование конфигов присутствует. Это не замена полноценному IDE, но куда удобней vi:

Как я перестал пользоваться консолью (почти)⁠⁠

В 90% случаев, это избавит от открытия консоли, а для оставшихся 10 есть много удобных фич.

Но что делать, если, например, есть коллега, который не признает никакие GUI и надо отобрать у него доступ к серверу (это должно быть зачеркнуто) ? В Terraform подобные люди порождают кучу проблем с импортом стейтов или дублированием ресурсов, Roxy-WI избавлен от этой проблемы: конфиг берется напрямую с сервера, по этому риск случайно что-то перезаписать крайне мал.

“Но как же так? Но почему? А как?” — есть такие вопросы? С удовольствием отвечу на них, либо напишу ещё одну статью, если вопрос будет слишком большой для комментария. Вы, главное, расскажите мне свою ситуацию, а я всегда рад поболтать ;)

P. S. Конечно же, я продолжаю активно пользоваться консолью и большую часть работы делаю в ней. Я лишь хотел продемонстрировать, что есть и другие способы управлять частью инфраструктуры и не консолью единой. Уверен, какой-то части людей этот инструмент будет полезен.

66
5 комментариев

Да, можно генерить конфиг, устанваливать сервисы, моиниторить их и еще кучу всего

очень интересная штука, много чего интересного можно с ней придумать, да и в целом "поугорать" если делать нечего

1

Ничего не смыслю в администрировании и чем-то связанным с понятием "развёртывание", но всё равно интересно.

Как я понял, это панель с генераторами конфигов?

Мог бы эпично выложить этот пост 16 декабря, но уже 22 года =)

Эх! Поспешил!)