6 하둡 작동 모드 (완전 분산 형) (A)

참고 : 완전히 분산의 사용 모두에서 실제 생산 및 개발에

 

1 단계 구축

1) 준비 3 클라이언트 (방화벽, 고정 IP, 호스트 이름을 끄)

2) 설치 JDK

3) 구성 환경 변수

4) 설치 하둡

5) 설정 환경 변수

6) 클러스터 구성

시작 7) 단일 지점

8) 구성 SSH

9) 재편성과 클러스터를 테스트

 

2, SCP (대응 보안) 보안 복사

1, SCP 정의 :

SCP 데이터 서버와 서버 사이에서 실행될 수있다 사본. (Server1에서 Server2)

 

2, 기본 문법

SCP -r pdir / pdir / pdir / FNAME 사용자 @ hadoopuser @ hadoopuser @ hadoophost : pdir / pdir / pdir / FNAME
명령을 반복적으로 대상 사용자 @ 호스트의 파일 경로 / 이름 복사 : 대상 경로를 / 이름

 

도 3의 경우 실제 동작

hadoop1에서의 / 옵션 /를 hadoop1는 hadoop2 아래의 모듈 디렉토리에 복사합니다.

[루트 @의 hadoop1 /] $ scp를 -r / 옵션 / 모듈 루트 @의 hadoop1 : / 옵션 / 모듈

 

 

hadoop3에서 hadoop3에 hadoop1 서버 / 모듈 디렉토리에 복사의 소프트웨어 / 옵션에서.

[루트 @의 hadoop3 수신 거부] $ scp를 -r 루트 @의 hadoop1 : / 옵션 / 모듈 · 루트 @의 hadoop3 : / 옵션 / 모듈

 

 

소프트웨어 디렉토리 hadoop4을 복사 / 모듈 / opt에 hadoop3의 hadoop1에서 작동.

[루트 @의 hadoop3 수신 거부] $ scp를의 -r 루트 @의 hadoop1 : / 옵션 / 모듈 루트 @의 hadoop4 : / 옵션 / 모듈

 

, hadoop102, hadoop103을 잊지 마십시오는 / opt / 모듈 디렉토리를 복사 hadoop104에있는 모든 파일을 수정 참고 :

소유자 및 소유자 그룹. sudo는 대한 Chown 루트 : 루트 -R / 옵션 / 모듈

 

Hadoop1은 / etc에 / 프로필 hadoop2 파일은 / 프로필을 / etc로 복사됩니다.

[루트 @의 hadoop1 ~] $ scp를은 / etc / 프로필 루트 @의 hadoop2 :은 / etc / 프로필

 

참고 : 소스의 / etc / 프로파일에 구성 파일을 복사하는 것을 잊지 마십시오.

 

3 rsync를 원격 동기화 도구

rsync를 주로 백업과 미러링에 사용됩니다. 속도를 가지고, 동일한 장점의 내용을 복사 방지하고 심볼릭 링크를 지원합니다.

 

rsync를하고 SCP의 차이는 :
, scp를보다 빠르게 파일을 복사 rsync를 사용하는 경우에만 rsync는 않는 업데이트를 할 수있는 차이 파일을 .
SCP는 과거에 모든 파일을 복사하는 것입니다

 

기본 구문
pdir / pdir / pdir / FNAME : rsync를 -rvl pdir / pdir / pdir / FNAME 사용자 @ hadoopuser @ hadoopuser @ hadoophost
파일 경로 명령 옵션 매개 변수를 복사 할 / 대상 사용자 @ 호스트의 이름 : 대상 경로 / 이름

 

옵션 매개 변수 설명

 

케이스 실제 작업
루트 사용자 hadoop2 동기화 서버 시스템을 / opt / 소프트웨어 hadoop1 디렉토리 아래에 / 옵션 / 디렉토리

[루트 @의 hadoop1 수신 거부] $ rsync를 -rvl / 옵션 / 소프트웨어 / 루트 @의 hadoop2 : / 옵션 / 소프트웨어

 

 

 

4, xsync 클러스터 배포 스크립트

요구 사항 : 자전거는 모든 노드에 대해 동일한 디렉토리에 파일을 복사

요구 사항 분석 :
(A)에 rsync를 원본 명령 :
  rsync를 -rvl / 옵션 / Module1의 hadoop103 루트 @ : / 옵션 /

(B) 예상 스크립트
  파일 이름은 당신이 xsync를 동기화 할

(C) 참고 :이 스크립트의 / usr / local / bin 디렉토리가 저장되고, 다른 사용자가 직접 시스템 어디서나 실행할 수 있습니다.

 

스크립트 달성하기 위해
다음과 같이 파일을 읽고, (a)는 / usr / local / bin 디렉토리에, 그리고 bin 디렉토리에있는 파일을 만들 xsync :

[루트 @의 hadoop2 빈] $ 터치 xsync 
[루트 @의 hadoop2 함] $ VI xsync

파일에 다음과 같은 코드를 작성

#! / 빈 / 배쉬 
# . 1 파라미터없이 입력 변수의 개수를 취득하고, 출구
Pcount $ # =

IF ((Pcount의 == 0 )) 상기 다음
아니오 인수 반향되지
출구;
Fi를

# 2는 파일 이름을 취득을
P1 = $ 1 FNAME = '베이스 이름
$ p1` 에코 FNAME = $의 FNAME

# 3 절대 경로 상위 디렉토리를 인수
pdir ='CD -P $ (대한 dirname $의 P1) pwd`에
에코 = $ pdir pdir

# 4 현재 사용자 이름 얻기 위해
사용자 =` whoami`

# 5 개. 주기
위한 ((호스트 = 3. 숙주 < . 5 숙주 ++))
에코 ------------------- 하둡 $ 호스트 ------ --------
     rsync를 -rvl $ pdir / $ FNAME $ 사용자 @ 하둡 $ 호스트 : $ pdir
완료

 

(B) 스크립트를 수정은 xsync 실행 권한을 가지고

[루트 @의 hadoop2 빈] $ chmod를 777 xsync

 

(C)는 스크립트 형태를 호출 xsync 파일 이름을

[루트 @의 hadoop2 함] xsync / usr / 지방 / 빈 $

 

참고 : 글로벌 사용을 달성 할 수없는 여전히 / 홈 / 사용자 / bin 디렉토리를 넣어 xsync 경우

xsync은 / usr / local / bin 디렉토리로 이동할 수 있습니다.

 

추천

출처www.cnblogs.com/Mrchengs/p/11223499.html