Pull to refresh

Цветовое кодирование серверов

Reading time2 min
Views17K
Когда серверов мало — они очень личные. Это ТОТ сервер. А это совсем другой сервер. Подобное отношение может быть только к уникальным серверам со специфичной конфигурацией и ролю (ролями). В условиях массового использования серверов никакой личной составляющей выделить не получается, потому что если у серверов одинаковая конфигурация, то различать их очень сложно. Особо это заметно в условиях кластеров, СХД, access-level коммутаторов и хостов виртуализации.

Ситуация ещё больше осложняется после того, как появляются тестовые конфигурации, похожие на рабочие. Операции, которые заурядны для тестов могут иметь фатальные последствия для продакта (установка пакетов, перезагрузка, пересоздание объектов адресации и т.д.).

Понятно, что «нужно головой думать». Но лучше всегда лишний раз предостеречься. И самым простым решением является использование цветового кодирования.

All Hail Britania!


linux/bsd


Очевидным местом цветового кодирования является PS1 (запрос на ввод команды).

Например, в облаке у меня PS1 на сервере автоматически меняет цвет в зависимости от того, входит ли хост в product-пул или нет — в .bash_profile прописана проверка типа пула и если пул имеет атрибут product, то выставляет цвет красный, а если testing, то зелёный. При этом новые пулы, которые никуда не включены, очевидным образом имеют «серый» цвет. Туда же (в PS1 кодируется номер пула и признак того, что хост является мастером пула). Это помимо самого hostname, которое тоже имеет в себе глубокое значение. Я как-то давно об этом уже писал.

Вот пример цветного command promt'а. Обратите внимание на дополнительные квадратные скобки вокруг ESC-кодов, если их не поставить, то у баша слетает позиционирование текста (в частности, ломаются вывод history и кнопки Home/End). цитата из .bashrc:
pr="\[\e[1;31m\]"
end="\[\e[0m\]"
export PS1="$pr\\h \\W\\$ $end"

Это даёт жирный красный цвет в command-prompt'е. Другие цвета описаны в man console_codes (pr — esc-код для включения цвета, end — для выключения).

Существенным вопросом является использование «своих» цветов бэкграунда окна. В принципе, xterm поддерживает изменение свойств «глобальное» (например, изменением палитры) — локально бы я не советовал выходить куда-то за пределы командной строки. Довольно часто приложения посылают команды сброса цветовых режимов, и это будет приводить к неприятным разрывам в цвете бэкграунда.

Windows


Да, я немного винды администрировал. Вот воспоминания из кошмарного прошлого: самым простым способом цветового кодирования для сервера является цвет оформления. Так как он виден на экране практически всегда., то «тон» элементов оформления автоматически говорит вам на каком вы сервере. На картинке, например, видны exchange (песочный), сервер с mssql (фиолетовый) и терминальный сервер (зелёный). А на заднем плане — типичная консолька с шеллом на linux-сервер.
Tags:
Hubs:
+53
Comments41

Articles