Conheça o PSSH e execute um único comando em vários servidores Linux usando o SSH

pssh-ssh-servidores-comando-vários-servidores-gerenciar

Para aqueles que gerenciam servidores usando SSH, saiba que é possível gerenciar vários servidores ao mesmo tempo. Já pensou em fazer aplicação de patches, executar comandos ou executar algum script personalizado em seus servidores Linux.

E não é só isso, com o PSSH você consegue compartilhar o Shell com alguém, sem perder tempo e sem precisar configurar um outro acesso SSH novamente. Veja como instalar o PSSH no Ubuntu, Debian, Fedora, Arch Linux ou derivados. Gerencie todos os seus servidores usando poder do SSH, veja também como usar o PSSH.

O PSSH foi desenvolvido em Ruby e JavaScript e o melhor, ele é distribuído sob código aberto. A porta que ele usa é a 8022 e ele gera um link que pode ser acessado via navegador, bom não é? E neste artigo você vai conhecer mais algumas possibilidades que você pode ter com o PSSH.

Como instalar o PSSH no Ubuntu, Debian, Fedora, Arch Linux, FreeBSD ou derivados

Para instalar o PSSH execute de acordo com a sua distribuição!

Para instalar o PSSH no Ubuntu/Debian e derivados, execute o seguinte:

sudo apt install pssh

Caso esteja usando uma versão antiga do Ubuntu ou Debian, onde o APT seja na versão antiga, execute o comando abaixo:

sudo apt-get install pssh

Para instalar o PSSH no FreeBSD ou derivados, execute o seguinte como ROOT:

cd /usr/ports/security/pssh/ && make install clean

ou então execute o comando abaixo:

pkg install pssh

Para instalar o PSSH no RHEL, CentOS, Fedora, execute o seguinte:

sudo dnf install pssh

Caso esteja usando alguma versão em seu servidor que seja um pouco antiga, use o yum para fazer a instalação:

sudo yum install pssh

Para instalar o PSSH no Arch Linux, execute o seguinte:

sudo pacman -S python-pip
pip install pssh

Como usar o PSSH? É bem simples!

Primeiro é preciso criar um arquivo com as informações dos seus servidores e os usuários, host e a porta, caso você precise desativar algum deles, basta comentar o começo da linha com o #. No entanto, se você não usa portas específicas não precisa citá-las no arquivo.

cat ~/.pssh_hosts_files

Exemplo de conteúdo do arquivo:

negromonte@asus2365

root@192.168.1.1

root@192.168.1.2

root@192.168.1.3

Agora execute o próximo comando para testar se tudo esta OK, vamos pedir para ver a data em cada servidor, para isso execute o seguinte:

pssh -i -h ~/.pssh_hosts_files date

Agora, execute o próximo comando pra ver o uptime de cada um:

pssh -i -h ~/.pssh_hosts_files uptime

Agora você pode otimizar alguns comandos, digamos que todos os seus servidores são baseadas no Red Hat ou Fedora, você pode executar o seguinte, use o sudo ou ROOT, você quem escolhe:

pssh -h ~/.pssh_hosts_files — sudo dnf update

Digamos que sejam Ubuntu ou Debian, então neste caso você deve executar o seguinte:

pssh -h ~/.pssh_hosts_files — sudo apt-get -y update
pssh -h ~/.pssh_hosts_files — sudo apt-get -y upgrade

Como copiar arquivos usando o PSSH em seus servidores? Fácil!

Vamos primeiro entender o comando:

pscp -h ~/.pssh_hosts_files conteúdo destino

Então agora vamos na prática!

Digamos que eu queira copiar a $HOME/sempreupdate.txt para o /tmp de todos os servidores, então vou executar o seguinte:

pscp -h ~/.pssh_hosts_files $HOME/sempreupdate.txt /tmp/

Como matar processos em todos os servidores? Mais fácil ainda!

A sintaxe é simples, veja a lógica para matar processos:

pnuke -h .pssh_hosts_files nome-do-processo

Vamos para dois exemplos, digamos que eu queria matar o Firefox e o Nginx, neste caso vou executar o seguinte:

pnuke -h ~/.pssh_hosts_files firefox
pnuke -h ~/.pssh_hosts_files nginx
Observe que em todos os comandos vamos usar o nosso arquivo criado inicialmente. Muitas possibilidades podem ser criadas com o PSSH, não há limites, use a criatividade e poupe tempo!
Acesse a versão completa
Sair da versão mobile