Дайте ясно име на всеки сървър
Последователната схема за псевдоними пести време и намалява грешките. В ~/.ssh/config съхранявайте адреса, потребителя, порта и ключа на всеки сървър под едно име и включете в него ролята и средата, за да разпознавате продукционните сървъри от пръв поглед. Опциите, които не зададете за конкретен хост, се вземат от блока Host *.
Host prod-web-1
HostName 203.0.113.10
User admin
IdentityFile ~/.ssh/id_ed25519_prod
IdentitiesOnly yes
Host test-web-1
HostName 203.0.113.20
User adminИзбягвайте работа на грешния сървър
Когато работите на няколко сървъра, лесно можете да въведете команда в грешния прозорец. Показвайте името на хоста в командната подкана, използвайте различен цвят на подканата в продукционна среда и проверявайте къде се намирате преди всяко разрушително действие. Оставете най-опасните стъпки за момент, когато е отворен само един терминал.
hostname -f; whoami; pwdЗапазете изпълнението на дългите задачи
При прекъсване на връзката обикновено се прекратяват командната обвивка и изпълняваните в нея команди. Пускайте дългите задачи в tmux или screen на сървъра, за да продължат и да можете да се свържете отново с тях. Клиентският keepalive открива неработеща връзка по-рано, но сам по себе си не поддържа изпълнението на задачата.
tmux new -s upgrade
tmux attach -t upgradeЗнайте кои сървъри отговарят
Преди да започнете работа на няколко сървъра, проверете дали техните SSH портове отговарят. Затворен порт невинаги означава, че сървърът не работи: услугата може да е спряла или защитна стена да блокира вашата мрежа.
for host in prod-web-1 test-web-1; do
ssh -o ConnectTimeout=5 "$host" 'hostname; uptime' || echo "$host: no connection"
doneНяколко сървъра в CH-J Server Manager
Профилите на сървърите се съхраняват в локално шифровано хранилище и могат да бъдат отворени няколко SSH сесии едновременно. В Alpha 0.1.1 два терминала се разполагат един до друг или един над друг, на един или два сървъра, а скриването на терминал не прекратява сесията му. Модулите използват автоматично единствената връзка и питат, когато са отворени няколко, така че модул никога не преминава сам към друг сървър. Заключването на хранилището прекъсва SSH сесиите, затова първо завършете текущата работа или я оставете в tmux.
Достъпността от пръв поглед
В Alpha 0.1.1 мониторът за достъпност проверява запазените сървъри във фонов режим чрез TCP връзка към SSH порта, по подразбиране на всеки 12 секунди, без влизане в системата. Тогава състоянието офлайн означава, че SSH портът е недостъпен от вашата мрежа; самият сървър може все още да работи.