Cluster ssh Tool on MacOS

By | 2023년 10월 05일

클러스터에 속해있는 여러대의 컴퓨터를 같은 상태로 설정하기위해 같은 작업을 반복해야 할 경우가 있다. 이같이 같은 작업을 반복해 진행하는 것이 지루하기도 하지만, 실수가 발생할 가능성도 높다.

여러개의 컴퓨터에 같은 명령을 전달해 수행토록하게 하는 기구로 cluster ssh 가 있다.
여기서는 macOS에서 cluster ssh를 설치하여 cluster에 속한 컴퓨터를 동시에 설정하는 방법에 대해 정리하였다.

1. 클러스터 ssh 설치

먼저 homebrew를 설치한다.

$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

그리고 csshx를 설치한다.

$ brew install csshx 

2. 사용 방법

여러대의 컴퓨터에 동시에 로그인 하고자 하면 다음의 명령을 실행한다.

$ ccshX ip ip ip ip 

또는

$ ccshX  id@ip  id@ip  id@ip  id@ip

제대로 실행이 되면 모니터에 여러개의 터미날 윈도우와 아래 쪽에 "Input to terminal: (Ctrl-A to enter control mode)" 표시가 되어있는 긴 붉은색 위도우가 나타나게 될 것이다.

전체 터미날에 같은 명령을 전달하려면 모니터 화면 아래에 있는 긴 위도우를 클릭하여 활성화 시키고 명령문을 입력한다.

개별 컴퓨터에만 명령을 입력하려면 원하는 컴퓨터 테미날을 클릭하고 명령어를 입력하면 된다.

3 문제해결

3.1 POSIX 에러

만약 csshx 명령을 실행하는 중에

Unimplemented: POSIX::tmpnam(): ... 

와 같은 에러가 발생하면 /usr/local/bin/csshX 내의

use POSIX   qw(tmpnam) 

use File::Temp qw/ :POSIX /;

로 수정하여 준다.

3.2 No master 에러

macOS 에서 ccshx를 실행할 때

No master at /usr/local/bin/csshX ...

에러가 발생하면

macOS Terminal.app 의 setting 에서

   Shells open with

를 Default login shell 로 설정해준다.

답글 남기기