Я достаточно давно, уже больше 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)
ivankudryavtsev
06.12.2022 11:52+2Я думаю, что это могла бы быть хорошая статья, если бы нормально написали "Зачем?". Сейчас вы не очень мотивацию доносите. Чем это лучше Ansible, к примеру? Кроме того, в консоли, в основном, всякий Ad hoc делается (вы с этого начали), а закончили тем, как легко поднять сервис с помощью некой тулзы. Ну заюзайте Ansible, Ansible Tower, Salt Stack, etc.
В общем, не вполне понятно о чем статья.
Aidaho12 Автор
06.12.2022 11:55-1Не все знают ansible, не все готовы покупать Tower. Но если не хочется/не умеешь работать с консолью, но хочется иметь HA кластер с HAProxy и/или Nginx, то можно использовать эту тулзу. Речь об этом
ivankudryavtsev
06.12.2022 12:27Точно об этом статья? Не увидел.
но хочется иметь HA кластер с HAProxy и/или Nginx, то можно использовать эту тулзу
Прочитайте свой заголовок еще раз.
SLASH_CyberPunk
06.12.2022 12:39Утрируя: не все знают баш, но haproxy через баш как-то надо ставить и разбираться, почему то или иное не работает.
oller
06.12.2022 21:08Получив деградацию мозгов, отсутствие профессионального роста, и главное, если что-то пойдёт не так, то обычным админом уже не обойтись...
KorP
06.12.2022 15:05+1очень ленивый - 5 лет уже закончить не могу
лень - двигатель прогресса
когда то давно, 12 лет назад, на хабре вышла статья о том, как качать торренты с лостфилма однострочником на баше
https://habr.com/ru/post/87042/
а я любил и люблю озвучку лоста и стал его активно использовать. потом список сериалов перестал влезать в 2 строки и я переписал его на чтение из файла. потом мне захотелось большего и качать так же удобно раздачи с сериалами с рутрекера...и понеслась...11 лет пилю :)Aidaho12 Автор
06.12.2022 15:20У меня примерно такая же история ) Было лень править конфиги на стейдже для программистов и тут понеслась https://habr.com/ru/post/419865/ )
vitaly_il1
06.12.2022 16:11Насколько понимаю это очень нишевая штука - она умеет управлять всего тремя сервисами.
vagon333
06.12.2022 19:37+1Пару лет назад была задача сконфигурировать HA Proxy (sorry если оффтопик).
Списался с Павлом, поставил, попробовал его надстройку.
Были вопросы к скорости, интуитивности и результату.
Остановился на PF Sense + HA Proxy:
- решает задачу более комплексно (лучше), чем отдельный HA Proxy
- широкая аудитория для прояснения вопросов
- более стандартный GUI (одинаковый для всех PFS плагинов)
- free
vviz
07.12.2022 09:34Это не замена полноценному IDE, но куда удобней vi
А в чем скрепность vi/nano/etc? Разве mcedit не покрывает их возможности в изменении текстовых файлов предоставляя юзерфрендли интерфейс?
Aidaho12 Автор
07.12.2022 10:58Хороший вопрос. я не использую mc, т.к. его надо устанавливать, для меня vi в некоторых моментах удобней, + просто привычка
13werwolf13
07.12.2022 14:06+1очень холиварная тема. лично для меня nano куда более юзерфрендли чем mcedit, а те кто привыкли к vi/vim/neovim за их пределами работают как контуженные черепашки и ругаются что всё неудобно и нелогично
vviz
07.12.2022 14:16Холиварная, если брать сферического коня в вакууме. Я же, как мне думается, предметно спросил - автор статьи выразил мысль, что есть нечто, которое "куда удобнее vi", т.е. при использовании vi он испытывает неудобства... И я с ним солидарен. Но когда под рукой есть хост с mc, то я, лично, не испытываю никаких неудобств. В этом суть вопроса.
Не раз попадались шпаргалки, в которых расказывается об установке достаточно сложной системы и тут же "откроем vi...". Если человек в состоянии настроить сложное, то докинуть mc вообще как два пальца об асфальт...
aik
Так переключайтесь между текстовыми консолями по Alt+Fx. И никаких новомодных вкладок не надо. :)
Я вообще не понимаю людей, которые противопоставляют консоль и GUI. Это просто инструменты. Гвозди удобнее забивать молотком, а шурупы закручивать отвёрткой. Да, конечно, если приспичит, можно забить шуруп молотком, а гвоздь — отвёрткой. Но это не повод всё делать молотком.
Aidaho12 Автор
Согласен, это просто более удобный молоток )