본문 바로가기

Tech/Linux

리눅스 서버관리 - Parallel SSH - SSH 를 이용해서 여러대 리눅스 머신으로 명령어 보내기

네이버 공유하기
728x90

리눅스 서버 관리 - Parallel SSH - SSH 를 이용해서 여러대 리눅스 머신으로 명령어 보내기


중앙 서버에서 여러대의 리눅스 서버로 명령어를 보내도록 만들어서 편하게 관리할 수 있습니다.


먼저 Parallel SSH 를 설치합니다. 유저 user 는 루트 root 로 설치합니다.

# Debian 또는 Ubuntu
apt install python-pip python-setuptools
pip install parallel-ssh
apt install pssh

# 레드헷 RHEL, CentOS
yum install python-pip python-setuptools
pip install parallel-ssh
yum install pssh



아래와 같이 3대의 서버가 있다고 한다면,

1번 서버 : 192.168.1.100 : 중앙서버 : 이 서버에만 로그인을 해서 명령을 실행합니다.

2번 서버 : 192.168.1.101 : 호스트1 : 원격 명령이 실행될 서버1

3번 서버 : 192.168.1.102 : 호스트2 : 원격 명령이 실행될 서버2


1번 서버 : 중앙서버에서 SSH 퍼블릭 키를 만듭니다.


marasong@vm-marasong:~$ ssh-keygen -t rsa

Generating public/private rsa key pair.

Enter file in which to save the key (/home/marasong/.ssh/id_rsa): [엔터]

Enter passphrase (empty for no passphrase): [엔터]

Enter same passphrase again: [엔터]

Your identification has been saved in /home/marasong/.ssh/id_rsa.

Your public key has been saved in /home/marasong/.ssh/id_rsa.pub.

The key fingerprint is:


생성된 퍼블릭 키값을 호스트1, 2 두 서버에 복사합니다.

cat ~/.ssh/id_rsa.pub 


이런 형태로 나오는데,

2번 서버 : 192.168.1.101 / 3번 서버 : 192.168.1.102 : ~/.ssh/authorized_keys 파일에 저 내용을 복사합니다.


2번, 3번 서버에 .ssh 디렉토리가 없다면 디렉토리를 만들고 퍼미션을 수정합니다.

mkdir .ssh

chmod 700 .ssh

chmod 640 .ssh/authorized_keys


이제 1번 서버에서 2번, 3번 서버로 ssh 로그인을 해봅니다. 암호 없이 로그인이 가능해야 합니다.

ssh userID@192.168.1.101 -p 22

ssh userID@192.168.1.102 -p 22



2번, 3번 서버 정보를 hosts.test 파일로 저장합니다.


userID@192.168.1.101:22

userID@192.168.1.102:22


이제 아래와 같은 방법으로 여러 서버로 명령을 내릴 수 있습니다.


/usr/bin/parallel-ssh -i -h hosts.test "ls -al"




이걸 아래처럼 배시 스크립트로 만들어두면 편하게 이용할 수 있습니다.


#!/bin/bash


cmd_text=${1}


if [ -z "${cmd_text}" ]

then

        # 입력 파라미터 값이 없을때 기본값 정의

        cmd_text="ls"

fi


/usr/bin/parallel-ssh -i -h /home/ubuntu/hosts.test "${cmd_text}"



참고 : https://www.tecmint.com/




반응형

'Tech > Linux' 카테고리의 다른 글

크론탭 crontab 정리  (0) 2019.04.05
Bash - if 구문  (0) 2018.10.18
CentOS 센트OS - 파라미터 최적화 스크립트  (0) 2018.07.30
AWS 리눅스 SSH 접속 계정 정리  (0) 2018.07.10
우분투 - 마리아디비 MariaDB 설치  (0) 2018.07.03
네이버 공유하기


* 쿠팡 파트너스 활동을 통해 일정액의 수수료를 제공받을 수 있습니다.