Dă fiecărui server un nume clar
Un alias consecvent economisește timp și reduce greșelile. În ~/.ssh/config, păstrează adresa, utilizatorul, portul și cheia fiecărui server sub un singur nume și include rolul și mediul în acel nume, astfel încât producția să fie evidentă dintr-o privire. Pentru opțiunile pe care nu le setezi pentru o anumită gazdă se aplică valorile din blocul 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 adminEvită serverul greșit
Când lucrezi pe mai multe servere, este ușor să introduci o comandă în fereastra greșită. Afișează numele gazdei în prompt, folosește o altă culoare pentru prompt în producție și verifică unde ești înainte de orice operație distructivă. Păstrează pașii cei mai periculoși pentru un moment în care este deschis un singur terminal.
hostname -f; whoami; pwdMenține în execuție sarcinile lungi
O conexiune întreruptă încheie în mod normal shell-ul și comenzile care rulează în el. Rulează sarcinile lungi în tmux sau screen pe server, astfel încât să continue și să te poți reconecta la ele. Mecanismul keepalive al clientului detectează mai repede o conexiune pierdută, dar nu menține singur sarcina în execuție.
tmux new -s upgrade
tmux attach -t upgradeAflă ce servere răspund
Înainte de a începe lucrul pe mai multe servere, verifică dacă porturile lor SSH răspund. Un port închis nu înseamnă întotdeauna că serverul este oprit: serviciul poate fi oprit sau un firewall îți poate bloca rețeaua.
for host in prod-web-1 test-web-1; do
ssh -o ConnectTimeout=5 "$host" 'hostname; uptime' || echo "$host: no connection"
doneMai multe servere în CH-J Server Manager
Profilurile serverelor sunt stocate într-un seif local criptat și pot fi deschise simultan mai multe sesiuni SSH. În Alpha 0.1.1, două terminale sunt afișate alăturat sau unul deasupra celuilalt, pe un server sau două, iar ascunderea unui terminal nu îi încheie sesiunea. Modulele folosesc automat conexiunea când este deschisă una singură și cer o alegere când sunt deschise mai multe, astfel încât un modul nu trece niciodată singur la alt server. Blocarea seifului deconectează sesiunile SSH, așa că termină mai întâi sarcinile în curs sau păstrează-le în tmux.
Disponibilitatea dintr-o privire
În Alpha 0.1.1, monitorul de disponibilitate verifică serverele salvate în fundal printr-o conexiune TCP la portul SSH, implicit la fiecare 12 secunde, fără autentificare. Offline înseamnă atunci că portul SSH nu poate fi accesat din rețeaua ta; serverul în sine poate funcționa în continuare.