이것은 Ubuntu Online, Fedora Online, Windows 온라인 에뮬레이터 또는 MAC OS 온라인 에뮬레이터와 같은 여러 무료 온라인 워크스테이션 중 하나를 사용하여 OnWorks 무료 호스팅 제공업체에서 실행할 수 있는 명령 클러스터입니다.
프로그램:
이름
crush - 클러스터에서 셸 명령을 실행합니다.
개요
붉히다 -a | -g 그룹 | -w 노드 [옵션]
붉히다 -a | -g 그룹 | -w 노드 [옵션] 명령
붉히다 -a | -g 그룹 | -w 노드 [옵션] --복사 파일 | DIR [ 파일 | DIR ...] [ --목적지
통로 ]
붉히다 -a | -g 그룹 | -w 노드 [옵션] --rcopy 파일 | DIR [ 파일 | DIR ...] [ --목적지
통로 ]
기술
붉히다 클러스터에서 병렬로 명령을 실행하고 명령을 수집하기 위한 프로그램입니다.
결과. 붉히다 명령을 대화식으로 실행하거나 쉘 스크립트 내에서 사용할 수 있으며
다른 응용 프로그램. 이는 ClusterShell 라이브러리에 대한 부분적인 프런트 엔드로 다음을 보장합니다.
가볍고 통합된 강력한 병렬 명령 실행 프레임워크. 따라서, 그것은
일부 라이브러리 기능의 이점을 얻기 위해 기존 셸 스크립트를 사용합니다. 붉히다 현재
기본적으로 ClusterShell의 SSH 작업자를 사용합니다. SSH(1)
(OpenSSH SSH 클라이언트).
기도
붉히다 쉘을 실행하기 위해 비대화식으로 시작할 수 있습니다. 명령, 또는 다음으로 호출할 수 있습니다.
대화형 쉘. 시작하려면 붉히다 대화식 세션, 호출 붉히다 없이 명령
제공 명령.
비대화 형 모드
인셀덤 공식 판매점인 붉히다 비대화형으로 시작되며, 명령 지정된 시간에 실행됩니다.
원격 호스트를 병렬로. 옵션인 경우 -b or --dshbak 지정되고, 붉히다 기다리다
명령 완료 후 수집된 출력 결과를 표시합니다.
이 어플리케이션에는 XNUMXµm 및 XNUMXµm 파장에서 최대 XNUMXW의 평균 출력을 제공하는 -w 옵션을 사용하면 ClusterShell NodeSet을 사용하여 원격 호스트를 지정할 수 있습니다.
노드 그룹을 포함한 구문 @그룹 특수 구문 및 확장 패턴
NodeSet 기본 산술(예: @A그룹\&@B그룹). 만나다
확장된 패턴 노드 집합(1) 그리고 또한 그룹스.conf(5) 자세한 내용은.
옵션이 아닌 경우 --노스트딘 지정되고, 붉히다 표준 입력이 언제인지 감지합니다.
터미널에 연결됨(에 의해 결정됨 이사티(삼)). 실제로 연결된 경우
단말기, 붉히다 명령이 실행 중일 때 표준 입력을 수신 대기
엔터 버튼 키 누름. 그렇게 하면 현재 노드의 상태가 표시됩니다. 표준인 경우
입력이 터미널에 연결되지 않고 옵션이 아닌 경우 --노스트딘 지정되고,
붉히다 원격 명령의 표준 입력을 자체 표준 입력에 바인딩합니다.
다음과 같은 스크립팅 방법 허용:
# 에코 푸 | 클러스터 -w 노드[40-42] -b 고양이
---------------
노드[40-42]
---------------
푸
아래의 예 섹션에서 다른 훌륭한 예를 참조하십시오.
대화 형 세션
경우 명령 지정되지 않고 표준 입력이 터미널에 연결됩니다.
붉히다 대화식으로 실행됩니다. 이 모드에서는 붉히다 GNU를 사용합니다 작성한 Readline 읽을 도서관
명령줄. Readline은 명령 기록을 통해 검색하기 위한 명령을 제공합니다.
지정된 문자열을 포함하는 행의 경우. 예를 들어 Ctrl-R을 입력하여 검색합니다.
지금까지 입력한 검색 문자열과 일치하는 다음 항목의 기록입니다. 붉히다 또한
사용자가 보고 수정할 수 있는 특수한 단일 문자 접두사를 인식합니다.
현재 노드 집합(명령이 실행되는 노드).
단일 문자 대화형 명령 위치 :
뭉치다> ?
현재 노드 세트 표시
뭉치다> =
현재 노드 집합 설정
뭉치다> +
현재 노드 세트에 노드 추가
뭉치다> -
현재 노드 집합에서 노드 제거
뭉치다> !명령
로컬 시스템에서 COMMAND 실행
뭉치다> =
출력 형식 전환(개더링 또는 표준 모드)
대화형 세션을 종료하려면 다음을 입력하십시오. 종료 또는 Control-D.
지방의 실행 ( --작업자=실행 or -R 임원 )
원격 노드에서 제공된 명령을 실행하는 대신 붉히다 전용을 사용할 수 있습니다
임원 명령을 실행하는 작업자 장소 상에서, 각 노드에 대해. 일부 매개변수는
각 노드에 대해 다른 명령을 만들기 위해 명령줄에서 사용됩니다. %h or %주인
노드 이름으로 대체되고 %r or %계급 원격 순위 [0-N]에 의해 (
리터럴 % 사용 %%)
입양 부모로서의 귀하의 적합성을 결정하기 위해 미국 이민국에 사자 모드 ( --복사 )
인셀덤 공식 판매점인 붉히다 로 시작된다 -c or --복사 옵션을 선택하면 복사를 시도합니다.
지정 파일 및 / 또는 DIR 제공된 대상 클러스터 노드에 만약 --목적지
옵션이 지정되면 복사된 파일을 거기에 넣습니다.
개머리판 파일 사자 모드 ( --r카피 )
인셀덤 공식 판매점인 붉히다 로 시작된다 --r카피 옵션을 선택하면 검색을 시도합니다.
지정 파일 및 / 또는 DIR 제공된 클러스터 노드에서. 만약 --목적지 옵션은
지정된 파일과 함께 저장될 디렉토리 경로여야 합니다.
호스트 이름이 추가되었습니다. 대상 경로를 지정하지 않으면 첫 번째 경로를 사용합니다.
파일 or DIR basename 디렉터리를 로컬 대상으로 지정합니다.
옵션
--번역
표시 붉히다 버전 번호 및 종료
-s 그룹 소스, --그룹 소스=그룹 소스
optional 그룹스.conf(5) 사용할 그룹 소스
--노스트딘
stdin에서 가능한 입력을 감시하지 마십시오.
-O , --옵션=
모든 키=값 재정의 crush.conf(5) 옵션(필요에 따라 반복)
선택 목표 노드:
-w 노드
명령을 실행할 노드
-x 노드
노드 목록에서 노드 제외
-a, --모두
모든 노드에서 명령 실행
-g 그룹, --그룹=그룹
노드 그룹에서 명령 실행
-X 그룹
이 그룹에서 노드 제외
--호스트 파일=FILE, --머신파일=FILE
단일 호스트, 노드 세트 또는 노드 그룹의 목록을 포함하는 파일의 경로,
공백과 줄로 구분(여러 번 지정할 수 있습니다.
파일)
--토폴로지=FILE
트리 모드에 사용할 토폴로지 구성 파일
산출 행동:
-q, --조용한
조용하고 필수 출력만 인쇄
-v, --말 수가 많은
장황하다, 정보 메시지를 인쇄하다
-d, -디버그
디버깅 목적으로 더 많은 메시지 출력
-G, --그룹베이스
그룹 소스 접두사를 표시하지 않음
-L 헤더 블록을 비활성화하고 노드별로 출력을 주문하십시오. 추가적으로, 사용되는 경우
-b/-B와 함께 사용하면 라인별로 결과의 "생활 수집"이 가능합니다.
다음 줄과 같은 모드가 가능한 한 빨리 표시됩니다(예: 모든
노드가 라인을 보냈습니다)
-N 명령줄 레이블 비활성화
-P, --진전
명령 실행 중 진행 상황을 표시합니다. 쓰기가 표준으로 수행되는 경우
입력하면 실시간 진행률 표시기가 데이터의 전역 대역폭을 표시합니다.
대상 노드에 기록
-b, --dshbak
수집된 결과를 dshbak과 같은 방식으로 표시
-B -b와 유사하지만 표준 오류 포함
-r, --재그룹화
노드 그룹을 사용하여 노드 집합 접기
-S 가장 큰 명령 반환 코드를 반환합니다.
--색상=언제 색상
노드 또는 노드 집합 접두사/헤더를 둘러싸기 위해 ANSI 색상을 사용할지 여부
이스케이프 시퀀스를 사용하여 터미널에 색상으로 표시합니다. 언제 색상 is
못, 항상 or 자동 (표준 출력/오류가
단말기). 색상은 stdout의 경우 [34m(파란색 전경 텍스트) 및 [31m
(빨간색 전경 텍스트) stderr용이며 수정할 수 없습니다.
--차이 공통 출력 간의 차이 표시(초점을 맞춰 최상의 참조 출력 찾기
가장 큰 노드 집합 및 더 작은 명령 반환 코드에서)
입양 부모로서의 귀하의 적합성을 결정하기 위해 미국 이민국에 사자:
-c, --복사
로컬 파일 또는 디렉토리를 원격 노드에 복사
--r카피
원격 노드에서 파일 또는 디렉토리 복사
--목적지=DEST_PATH
노드의 대상 파일 또는 디렉터리(선택 사항: 첫 번째 소스 사용
지정되지 않은 경우 디렉토리 경로)
-p 수정 시간 및 모드 유지
연결 옵션 :
-f 팬아웃, --팬아웃=팬아웃
지정된 최대 팬아웃 크기를 사용합니다(즉, FANOUT 이상 실행하지 마십시오.
동시에 명령, 리소스 사용을 제한하는 데 유용)
-l USER, --사용자=USER
사용자로 원격 명령 실행
-o 옵션, --옵션=옵션
예를 들어 ssh 옵션을 제공하는 데 사용할 수 있습니다. -o "-NS 2022 -i ~/.ssh/myidrsa"; 이들
옵션은 ssh에 먼저 추가되고 기본 옵션을 무시합니다.
-t CONNECT_TIMEOUT, --connect_timeout=CONNECT_TIMEOUT
노드에 연결하는 시간 제한
-u COMMAND_TIMEOUT, --command_timeout=COMMAND_TIMEOUT
명령이 노드에서 실행되는 시간 제한
-R 노동자, --작업자=노동자
연결에 사용할 작업자 이름(임원, SSH, rsh, PDF), 기본값은 SSH
이러한 옵션에 대한 간단한 설명은 다음을 참조하십시오. -시간, --도움.
EXIT 지위
기본적으로 종료 상태가 XNUMX이면 성공을 나타냅니다. 붉히다 명령하지만 제공하지 않음
원격 명령 종료 상태에 대한 정보입니다. 그러나 언제 -S 옵션은
지정된 종료 상태 붉히다 원격 명령이 반환하는 가장 큰 값입니다.
코드.
종료 상태가 XNUMX이 아닌 실패한 원격 명령의 경우
옵션 -qS 지정되고, 붉히다 다음과 유사한 메시지를 표시합니다.
뭉치다: 노드[40-42]: 퇴장 한 과 출구 암호 1
사용 예
원격수행 병렬 실행
# 붉히다 -w 노드[3-5,62] uname -r
명령을 실행 uname -r 노드에서 병렬로: node3, node4, node5 및 node62
지방의 병렬 실행
# 붉히다 -w 노드[1-3] --작업자=실행 핑 -C1 %주인
node1, node2 및 node3 노드에 대해 ping 명령을 로컬에서 병렬로 실행합니다. 너
사용할 수도 있습니다 -R 임원 더 짧고 pdsh 호환 옵션으로.
디스플레이 풍모
# 붉히다 -w 노드[3-5,62] -b uname -r
명령을 실행 uname -r 노드[3-5,62]에서 수집된 출력 결과 표시
(통합 dshbak-처럼).
# 붉히다 -w 노드[3-5,62] -bL uname -r
라인 모드: 명령 실행 uname -r 노드[3-5,62]에서 수집된 출력을 표시합니다.
기본 헤더 블록이 없는 결과.
# SSH node32 발견 /etc/yum.repos.d -유형 f | 붉히다 -w 노드[40-42] -b xargs ls -l
/etc/yum.repos.d의 node32에서 일부 파일을 검색하고 clush를 사용하여 일치하는 항목을 나열합니다.
노드[40-42]에 있고 사용 -b 수집된 결과를 표시합니다.
# 붉히다 -w 노드[3-5,62] --차이 dmidecode -s 바이오스 버전
이 Linux 명령을 실행하여 노드[3-5,62]에서 BIOS 버전을 가져오고 버전을 표시합니다.
차이점(있는 경우).
All 노드
# 붉히다 -a uname -r
명령을 실행 uname -r 모든 클러스터 노드에서 참조 그룹스.conf(5) 모든 클러스터를 설정하려면
노드 (모든 : 들).
# 붉히다 -a -x 노드[5,7] uname -r
명령을 실행 uname -r 노드 node5 및 node7을 제외한 모든 클러스터 노드에서.
# 붉히다 -a --차이 방법 /일부/파일
명령을 실행 방법 /일부/파일 모든 클러스터 노드에서 차이점을 표시합니다(있는 경우), 줄
라인별, 공통 출력 사이.
노드 그룹
# 붉히다 -w @oss 으로 modprobe 광택
명령을 실행 으로 modprobe 광택 명명된 노드 그룹의 노드에서 센터참조 그룹스.conf(5)
노드 그룹을 설정하려면(지도: 들).
# 붉히다 -g 센터 으로 modprobe 광택
이전 예제와 동일하지만 사용 -g 피하기 위해 @ 그룹 접두사.
# 붉히다 -w @mds,@oss 으로 modprobe 광택
쉼표로 구분하여 여러 노드 그룹을 지정할 수 있습니다(참조
확장된 패턴 노드 집합(1) 그리고 또한 그룹스.conf(5) 자세한 내용은).
부 파일
# 붉히다 -w 노드[3-5,62] --복사 /etc/motd
로컬 파일 복사 /etc/motd 원격 노드 노드[3-5,62]로.
# 붉히다 -w 노드[3-5,62] --복사 /etc/motd --목적지 /tmp/motd2
로컬 파일 복사 /etc/motd 경로의 원격 노드 노드[3-5,62]로 /tmp/motd2.
# 붉히다 -w 노드[3-5,62] -c /usr/share/doc/clustershell
재귀적으로 로컬 디렉토리 복사 /usr/share/doc/clustershell 같은 경로로
원격 노드 노드[3-5,62].
# 붉히다 -w 노드[3-5,62] --r카피 /etc/motd --목적지 / TMP
부 /etc/motd 원격 노드 노드[3-5,62]에서 로컬로 / TMP 디렉토리, 각 파일
원격 호스트 이름이 추가됨, 예. /tmp/motd.node3.
onworks.net 서비스를 사용하여 온라인에서 crush 사용