CH-J Server Managerspráva serverov nad SSH
Menu
Všetky návody a články →

Ako spravovať viacero SSH serverov naraz

Udržujte si prehľad o viacerých serveroch pomocou SSH aliasov a terminálov vedľa seba a predíďte spusteniu príkazu na nesprávnom serveri.

Dajte každému serveru jasný názov

Jednotné aliasy šetria čas a znižujú počet chýb. V ~/.ssh/config uložte adresu, používateľa, port a kľúč každého servera pod jedným názvom a zahrňte doň úlohu aj prostredie, aby bola produkcia zrejmá na prvý pohľad. Voľby, ktoré pre konkrétneho hostiteľa nenastavíte, sa preberú z bloku 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

Vyhnite sa nesprávnemu serveru

Pri práci na viacerých serveroch ľahko zadáte príkaz do nesprávneho okna. Zobrazujte názov hostiteľa v príkazovej výzve, na produkcii použite inú farbu výzvy a pred každou deštruktívnou operáciou overte, kde ste. Najnebezpečnejšie kroky si nechajte na chvíľu, keď je otvorený iba jeden terminál.

hostname -f; whoami; pwd

Zachovajte dlho bežiace úlohy

Prerušenie pripojenia zvyčajne ukončí shell aj príkazy, ktoré v ňom bežia. Dlhé úlohy spúšťajte na serveri v tmux alebo screen, aby pokračovali a mohli ste sa k nim znovu pripojiť. Klientsky keepalive skôr odhalí nefunkčné pripojenie, ale sám nezabezpečí pokračovanie úlohy.

tmux new -s upgrade
tmux attach -t upgrade

Zistite, ktoré servery odpovedajú

Pred začatím práce na viacerých serveroch overte, či ich SSH porty odpovedajú. Zatvorený port nie vždy znamená výpadok servera: služba mohla byť zastavená alebo firewall môže blokovať vašu sieť.

for host in prod-web-1 test-web-1; do
    ssh -o ConnectTimeout=5 "$host" 'hostname; uptime' || echo "$host: no connection"
done

Viacero serverov v CH-J Server Manager

Profily serverov sa ukladajú v lokálnom šifrovanom trezore a naraz môže byť otvorených viacero SSH relácií. V Alpha 0.1.1 môžu byť dva terminály vedľa seba alebo nad sebou, na jednom či dvoch serveroch, a skrytie terminálu neukončí jeho reláciu. Moduly automaticky použijú jediné otvorené pripojenie a pri viacerých sa opýtajú, takže modul nikdy sám neprejde na iný server. Uzamknutie trezora odpojí SSH relácie, preto najprv dokončite bežiacu prácu alebo ju ponechajte v tmux.

Dostupnosť na prvý pohľad

V Alpha 0.1.1 monitor dostupnosti na pozadí kontroluje uložené servery pripojením TCP na SSH port, predvolene každých 12 sekúnd, bez prihlásenia. Stav offline teda znamená, že SSH port nie je dostupný z vašej siete; samotný server môže stále bežať.

Podrobná dokumentácia

OpenSSH: ssh_config →

Biometrické odomknutie a bezpečnosť →