Я достаточно давно, уже больше 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. Конечно же, я продолжаю активно пользоваться консолью и большую часть работы делаю в ней. Я лишь хотел продемонстрировать, что есть и другие способы управлять частью инфраструктуры и не консолью единой. Уверен, какой-то части людей этот инструмент будет полезен.

Комментарии (19)


  1. aik
    06.12.2022 11:46
    +3

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

    Так переключайтесь между текстовыми консолями по Alt+Fx. И никаких новомодных вкладок не надо. :)

    Я вообще не понимаю людей, которые противопоставляют консоль и GUI. Это просто инструменты. Гвозди удобнее забивать молотком, а шурупы закручивать отвёрткой. Да, конечно, если приспичит, можно забить шуруп молотком, а гвоздь — отвёрткой. Но это не повод всё делать молотком.


    1. Aidaho12 Автор
      06.12.2022 11:48

      Согласен, это просто более удобный молоток )


  1. ivankudryavtsev
    06.12.2022 11:52
    +2

    Я думаю, что это могла бы быть хорошая статья, если бы нормально написали "Зачем?". Сейчас вы не очень мотивацию доносите. Чем это лучше Ansible, к примеру? Кроме того, в консоли, в основном, всякий Ad hoc делается (вы с этого начали), а закончили тем, как легко поднять сервис с помощью некой тулзы. Ну заюзайте Ansible, Ansible Tower, Salt Stack, etc.

    В общем, не вполне понятно о чем статья.


    1. Aidaho12 Автор
      06.12.2022 11:55
      -1

      Не все знают ansible, не все готовы покупать Tower. Но если не хочется/не умеешь работать с консолью, но хочется иметь HA кластер с HAProxy и/или Nginx, то можно использовать эту тулзу. Речь об этом


      1. ivankudryavtsev
        06.12.2022 12:27

        Точно об этом статья? Не увидел.

        но хочется иметь HA кластер с HAProxy и/или Nginx, то можно использовать эту тулзу

        Прочитайте свой заголовок еще раз.


      1. SLASH_CyberPunk
        06.12.2022 12:39

        Утрируя: не все знают баш, но haproxy через баш как-то надо ставить и разбираться, почему то или иное не работает.


      1. oller
        06.12.2022 21:08

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


  1. Kundello
    06.12.2022 13:36

    А разве в бесплатной версии roxy не порезан функционал до невозможности?


    1. Aidaho12 Автор
      06.12.2022 13:37

      Да, в бесплатной версии функционал урезан, но установить HAProxy, редактировать конфиг и использовать визард на нем можно


  1. KorP
    06.12.2022 15:05
    +1

    очень ленивый - 5 лет уже закончить не могу

    лень - двигатель прогресса

    когда то давно, 12 лет назад, на хабре вышла статья о том, как качать торренты с лостфилма однострочником на баше
    https://habr.com/ru/post/87042/
    а я любил и люблю озвучку лоста и стал его активно использовать. потом список сериалов перестал влезать в 2 строки и я переписал его на чтение из файла. потом мне захотелось большего и качать так же удобно раздачи с сериалами с рутрекера...и понеслась...11 лет пилю :)


    1. Aidaho12 Автор
      06.12.2022 15:20

      У меня примерно такая же история ) Было лень править конфиги на стейдже для программистов и тут понеслась https://habr.com/ru/post/419865/ )


  1. vitaly_il1
    06.12.2022 16:11

    Насколько понимаю это очень нишевая штука - она умеет управлять всего тремя сервисами.


    1. Aidaho12 Автор
      06.12.2022 16:38

      4-мя! еще Keepalived :)


  1. vagon333
    06.12.2022 19:37
    +1

    Пару лет назад была задача сконфигурировать HA Proxy (sorry если оффтопик).
    Списался с Павлом, поставил, попробовал его надстройку.
    Были вопросы к скорости, интуитивности и результату.
    Остановился на PF Sense + HA Proxy:
    - решает задачу более комплексно (лучше), чем отдельный HA Proxy
    - широкая аудитория для прояснения вопросов
    - более стандартный GUI (одинаковый для всех PFS плагинов)
    - free


    1. Aidaho12 Автор
      06.12.2022 19:55

      Попробуйте сейчас, много что изменилось за эти пару лет :)


  1. vviz
    07.12.2022 09:34

    Это не замена полноценному IDE, но куда удобней vi

    А в чем скрепность vi/nano/etc? Разве mcedit не покрывает их возможности в изменении текстовых файлов предоставляя юзерфрендли интерфейс?


    1. Aidaho12 Автор
      07.12.2022 10:58

      Хороший вопрос. я не использую mc, т.к. его надо устанавливать, для меня vi в некоторых моментах удобней, + просто привычка


    1. 13werwolf13
      07.12.2022 14:06
      +1

      очень холиварная тема. лично для меня nano куда более юзерфрендли чем mcedit, а те кто привыкли к vi/vim/neovim за их пределами работают как контуженные черепашки и ругаются что всё неудобно и нелогично


  1. vviz
    07.12.2022 14:16

    Холиварная, если брать сферического коня в вакууме. Я же, как мне думается, предметно спросил - автор статьи выразил мысль, что есть нечто, которое "куда удобнее vi", т.е. при использовании vi он испытывает неудобства... И я с ним солидарен. Но когда под рукой есть хост с mc, то я, лично, не испытываю никаких неудобств. В этом суть вопроса.
    Не раз попадались шпаргалки, в которых расказывается об установке достаточно сложной системы и тут же "откроем vi...". Если человек в состоянии настроить сложное, то докинуть mc вообще как два пальца об асфальт...