PSSH - Executar comandos em vários servidores Linux Remote usando um terminal único

PSSH - Executar comandos em vários servidores Linux Remote usando um terminal único

Sem dúvida, isso OpenSsh é uma das ferramentas mais usadas e poderosas disponíveis para o Linux, que permite que você se conecte com segurança a sistemas Linux remotos por meio de um shell e você transfira arquivos com segurança para e de sistemas remotos.

PSSH - Executar comandos em vários servidores Linux

Mas as maiores desvantagens de OpenSsh é isso, você não pode executar o mesmo comando em vários hosts de uma só vez, não é desenvolvido para executar essas tarefas. É aqui que SSH paralelo ou PSSH A ferramenta é útil, é um aplicativo baseado em Python, que permite executar comandos em vários hosts em paralelo ao mesmo tempo.

Não perca: Execute os comandos em vários servidores Linux usando a ferramenta DSH

PSSH A ferramenta inclui versões paralelas do OpenSSH e ferramentas relacionadas, como:

  1. PSSH - é um programa para executar o SSH em paralelo em vários hosts remotos.
  2. PSCP - é um programa para copiar arquivos em paralelo a vários hosts.
    1. PSCP - copiar/transferir arquivos dois ou mais servidores Linux remotos
  3. Prsync - é um programa para copiar com eficiência arquivos para vários hosts em paralelo.
  4. pnuke - mata processos em vários hosts remotos em paralelo.
  5. Pslurp - Copia arquivos de vários hosts remotos para um host central em paralelo.

Essas ferramentas são boas para administradores de sistema que se encontram trabalhando com grandes coleções de nós em uma rede.

Instale PSSH ou SSH paralelo no Linux

Neste guia, examinaremos as etapas para instalar a versão mais recente do PSSH (i.e. versão 2.3.1) programar em Fedora distribuições baseadas em CENTOS/Chapéu vermelho e Debian derivados como Ubuntu/hortelã usando pip comando.

O pip O comando é um pequeno programa (substituição de easy_install script) para instalar e gerenciar o índice de pacotes de software python.

Em distribuições baseadas em Fedora

Sobre CENTOS/RHEL Distribuições, você precisa primeiro instalar o PIP (i.e. pacote python-pip) sob seu sistema, a fim de instalar o programa PSSH.

# yum install python-pip 

Sobre Fedora 21+, Você precisa executar o comando dnf em vez de yum (DNF substituiu Yum).

# dnf install python-pip 

Depois de instalar a ferramenta PIP, você pode instalar o pacote PSSH com a ajuda do comando pip, como mostrado.

# pip install PSSH 
Saída de amostra
/usr/lib/python2.6/packages sites/pip/_vendor/requests/packages/urllib3/util/ssl_.PY: 90: InsecurePlatformWarning: Um verdadeiro objeto SSLContext não está disponível. Isso impede que o urllib3 configure o SSL adequadamente e pode fazer com que certas conexões SSL falhem. Para mais informações, consulte https: // urllib3.ReadThEdocs.org/en/mais recente/segurança.html#insecureplatformwarning. Insegureplataformwarning você está usando o PIP versão 7.1.0, no entanto, versão 7.1.2 está disponível. Você deve considerar a atualização através do comando 'pip install -upgrade pip'. Coleta de PSSH/usr/lib/python2.6/packages sites/pip/_vendor/requests/packages/urllib3/util/ssl_.PY: 90: InsecurePlatformWarning: Um verdadeiro objeto SSLContext não está disponível. Isso impede que o urllib3 configure o SSL adequadamente e pode fazer com que certas conexões SSL falhem. Para mais informações, consulte https: // urllib3.ReadThEdocs.org/en/mais recente/segurança.html#insecureplatformwarning. Download inseguroPlatformWarning PSSH-2.3.1.alcatrão.GZ Instalação de pacotes coletados: Configuração de execução do PSSH.Instalação do PY para PSSH instalado com sucesso PSSH-2.3.1 

Em derivados debianos

Nas distribuições baseadas em Debian, leva um minuto para instalar o PSSH usando o comando pip.

$ sudo apt-get install python-pip $ sudo pip install pssh 
Saída de amostra
Download/descompactando PSSH baixando PSSH-2.3.1.alcatrão.GZ Running Setup.py (caminho:/tmp/pip_build_root/pssh/configuração.py) EGV_INFO PARA PACOTO PSSH INSTALAÇÃO PACAGES COLECTADOS: Configuração de execução do PSSH.Instalação PY para Modo de mudança de PSSH de Build/Scripts-2.7/PSSH de 644 para 755 Modo de mudança de construção/scripts-2.7/PNUKE de 644 para 755 MODO DE COMBUIÇÃO/SCRIPTS-2.7/prsync de 644 para 755 Modo de mudança de construção/scripts-2.7/pslurp de 644 para 755 Modo de mudança de construção/scripts-2.7/PSCP de 644 para 755 Modo de mudança de construção/scripts-2.7/PSSH-ASKPASS de 644 a 755 Modo de mudança de/usr/local/bin/PSCP para 755 Modo de mudança de/usr/local/bin/pssh-askpass para 755 Modo de mudança de/usr/local/bin/pssh para 755 Modo de alteração de/usr/local/bin/prsync para 755 Modo de mudança de/usr/local/bin/pnuke para 755 Modo de mudança de/usr/local/bin/pslurp para 755 instalado com sucesso PSSH Limpando… 

Como você pode ver na saída acima, a versão mais recente do PSSH já está instalada no sistema.

Como eu uso o PSSH?

Ao usar PSSH Você precisa criar um arquivo host com o número de hosts, juntamente com o endereço IP e o número da porta que você precisa conectar aos sistemas remotos usando PSSH.

As linhas no arquivo host estão na forma a seguir e também podem incluir linhas e comentários em branco.

Arquivo de hosts do PSSH
192.168.0.10:22 192.168.0.11:22 
Executando o comando único em vários servidores usando PSSH

Você pode executar qualquer comando único em hosts Linux diferentes ou múltiplos em uma rede executando um PSSH comando. Existem muitas opções para usar com PSSH como descrito abaixo:

Veremos algumas maneiras de executar comandos em vários hosts usando PSSH com opções diferentes.

  1. Para ler o arquivo hosts, inclua o -h host_file-name ou -hosts host_file_name opção.
  2. Para incluir um nome de usuário padrão em todos os hosts que não definem um usuário específico, use o -eu Nome de usuário ou -nome de usuário do usuário opção.
  3. Você também pode exibir saída padrão e erro padrão à medida que cada host completa. Usando o -eu ou -em linha opção.
  4. Você pode querer fazer as conexões -t number_of_seconds opção.
  5. Para salvar a saída padrão em um determinado diretório, você pode usar o -o /diretório /caminho opção.
  6. Para pedir uma senha e enviar para SSH, use o -A opção.

Vamos ver poucos exemplos e uso dos comandos PSSH:

1. Executar eco “olá tecmint” No terminal dos múltiplos hosts Linux pelo usuário root e solicitar a senha do usuário root, execute este comando abaixo.

Importante: Lembre -se de que todos os hosts devem ser incluídos no arquivo host.

# PSSH -H PSSH -HOSTS -L ROOT -A ECHO "HELO TECMINT" AVISO: Não digite sua senha se mais alguém tiver privilégios de superusuário ou acesso à sua conta. Senha: [1] 15:54:55 [Sucesso] 192.168.0.10:22 [2] 15:54:56 [Sucesso] 192.168.0.11:22 

Observação: No comando acima “PSSH-HOSTS”É um arquivo com lista de servidores Linux remotos e número da porta SSH que você deseja executar comandos.

2. Para descobrir o uso do espaço em disco em vários servidores Linux em sua rede, você pode executar um único comando como segue.

# PSSH -H PSSH -HOSTS -L ROOT -A -I "DF -HT" AVISO: Não digite sua senha se mais alguém tiver privilégios de superusuário ou acesso à sua conta. Senha: [1] 16:04:18 [Sucesso] 192.168.0.10:22 Tipo de tipo de sistema de arquivos usado use use% use% montado /dev /sda3 ext4 38g 4.3g 32g 12% /tmpfs tmpfs 499m 0 499m 0% /dev /shm /dev /sda1 ext4 190m 25m 156m 14% /bota [2] 16:04:18 [Sucesso] 192.168.0.11:22 Tamanho do sistema de arquivos do sistema usado Use Use% Montado ON/dev/mapper/CENTOS-ROOT XFS 30G 9.8g 20G 34% /devtmpfs devtmpfs 488m 0 488m 0% /dev tmpfs tmpfs 497m 148k 497m 1% /dev /shm tmpfs tmpfs 497m 7.0m 490m 2% /execução tmpfs tmpfs 497m 0 497m 0% /sys /fs /cgroup /dev /sda1 xfs 497m 166m 332m 34% /inicialização 

3. Se você deseja saber o tempo de atividade de vários servidores Linux de uma só vez, você pode executar o seguinte comando.

# PSSH -H PSSH -HOSTS -L ROOT -A -I "UPTIME" AVISO: Não digite sua senha se mais alguém tiver privilégios de superusuário ou acesso à sua conta. Senha: [1] 16:09:03 [Sucesso] 192.168.0.10:22 16:09:01 UP 1:00, 2 Usuários, Média de Carregar: 0.07, 0.02, 0.00 [2] 16:09:03 [Sucesso] 192.168.0.11:22 06:39:03 UP 1:00, 2 Usuários, Carregar Média: 0.00, 0.06, 0.09 

Você pode visualizar a página de entrada manual para o PSSH comando para obter muitas outras opções para descobrir mais maneiras de usar o PSSH.

# PSSH -Help 
comandos e usos PSSH

Resumo

SSH paralelo ou PSSH é uma boa ferramenta a ser usada para executar comandos em um ambiente onde um Administrador do sistema tem que trabalhar com muitos servidores em uma rede. Isso facilitará que os comandos sejam executados remotamente em diferentes hosts em uma rede.

Espero que você ache este guia útil e em qualquer informação adicional sobre PSSH ou erros ao instalá -lo ou usá -lo, fique à vontade para postar um comentário.