Ali운 ECS 서버 CentOS7.3 독립 실행형 Hadoop 환경 구축

5702 단어
1. 서버에서 Hadoop 계정을 만듭니다.
루트 사용자로 서버에 로그인하여 Hadoop이라는 새 사용자를 만들고 최고 권한을 부여합니다.
# useradd -m hadoop -s /bin/bash #  Hadoop
# passwd hadoop # hadoop , 

# visudo # hadoop 

visudo를 실행한 후 아래로 내려가서 root ALL=(ALL) ALL 줄을 찾은 다음 i를 누르면 편집 모드에 들어가 다음 코드를 추가합니다
hadoop  ALL=(ALL)       ALL  # hadoop 

추가 완료 후 shift + 사칭 wq 리턴을 누르면 종료합니다.
이로써hadoop 사용자가 추가되었습니다. suhadoop에서 비밀번호를 입력한 후hadoop 사용자로 전환합니다.
2.JDK를 설치합니다.
hadoop 사용자에 들어가서 rpm-qa | grep jdk를 입력하여 jdk를 직접 설치했는지 확인하십시오. 아리운은 일반적으로 1.7.0 버전을 가지고 있습니다. 없으면 수동으로 설치해야 합니다.
sudo yum install java-1.8.0-openjdk* -y # yum 1.8.0 openjdk

openjdk와 jdk의 차이
명령을 실행하면 자동으로 설치됩니다. 기본 설치 디렉터리는/usr/lib/jvm/java-1.8.0-openjdk이고 환경 변수를 추가합니다.
vim ~/.bashrc

맨 뒤에 줄 추가:
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk

편집이 추가된 후 저장을 종료합니다.
다음을 수행합니다.
source ~/.bashrc

환경 변수를 적용합니다.
이어서 우리는 자바-version 명령을 실행하여 성공 여부를 검사했다. 불쌍한 건물주는 r를 적게 쳐서 오후 내내 틀렸다.
$ java -version
openjdk version "1.8.0_201"
OpenJDK Runtime Environment (build 1.8.0_201-b09)
OpenJDK 64-Bit Server VM (build 25.201-b09, mixed mode)

버전 정보가 성공적으로 나왔습니다. 1.7 버전의 오류가 발생하면 시도해 보십시오.
java -V
java --version

둘 다 시도해 보세요. 어디서 본 1.7 버전인지 잊어버리면 때때로 -version 명령을 식별할 수 없습니다.그래서 건물주가 한때 jdk 버전을...
3. 서버에서 SSH 암호 없이 로그인하도록 구성합니다.
rpm -qa | grep ssh # ssh-clients ssh-server

openssh-clients-6.6.1p1-35.el7_3.x86_64

openssh-server-6.6.1p1-35.el7_3.x86_64

이 두 가지가 포함되어 있으면 설치 초 없이 yum 명령으로 설치해야 합니다.
sudo yum –y install openssh-clients
sudo yum –y install openssh-server

사용 가능 여부 테스트
ssh localhost 

첫 번째 테스트가 나옵니다.
The authenticity of host 'localhost (127.0.0.1)' can't be established.
ECDSA key fingerprint is 1b:3f:21:37:4d:66:93:77:66:02:55:f9:d2:1a:d0:d2.
Are you sure you want to continue connecting (yes/no)?

yes를 입력하고 알림에 따라hadoop 사용자의 로그인 비밀번호를 입력하면 본 컴퓨터에 로그인할 수 있습니다
다음 입력:
$ exit #   ssh localhost
$ cd ~/.ssh/ #  , ssh localhost
$ ssh-keygen -t rsa #  , 
$ cat id_rsa.pub >> authorized_keys #  
$ chmod 600 ./authorized_keys #  

4. 독립 실행형 hadoop의 설치 및 설정
건물주 이쪽은 선생님의 추천에 따라 Hadoop2.6.5를 사용합니다. 인출 코드: 18cg, 다운로드한 후 서버에 업로드합니다.
$ sudo tar -zxf ~/ /hadoop-2.6.5-tar.gz -C /usr/local #  
$ cd /usr/local/
$ sudo mv ./hadoop-2.6.5/ ./hadoop #  hadoop
$ sudo chown -R hadoop:hadoop ./hadoop #  

코드의 경로는 압축 패키지를 업로드하는 경로입니다. Hadoop이 압축을 풀면 사용할 수 있습니다.
$ cd /usr/local/hadoop2.6.5 # hadoop 
[hadoop@aliyunhost hadoop2.6.5]$ ./bin/hadoop version # hadoop 

성공하면hadoop 버전 정보가 표시됩니다.
하면, 만약, 만약...
[hadoop@aliyunhost hadoop]$ ./bin/hadoop: line xxx: /usr/lib/jvm/java-1.7.0-openjdk/bin/java: No such file or directory

환경 변수의 오류 때문에 건물주 쪽은 이전의 1.8.0 설치 후 환경 변수를 고치지 않아서 오류를 보고했습니다.
다음은 hadoop의 설정입니다.
[hadoop@aliyunhost hadoop]$ ./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-2.6.5.jar

wordcount,terasort,join,grep 등을 포함한 모든 예를 볼 수 있습니다.
Valid program names are:
  aggregatewordcount: An Aggregate based map/reduce program that counts the words in the input files.
  aggregatewordhist: An Aggregate based map/reduce program that computes the histogram of the words in the input files.
  bbp: A map/reduce program that uses Bailey-Borwein-Plouffe to compute exact digits of Pi.
  dbcount: An example job that count the pageview counts from a database.
  distbbp: A map/reduce program that uses a BBP-type formula to compute exact bits of Pi.
  grep: A map/reduce program that counts the matches of a regex in the input.
  join: A job that effects a join over sorted, equally partitioned datasets
  multifilewc: A job that counts words from several files.
  pentomino: A map/reduce tile laying program to find solutions to pentomino problems.
  pi: A map/reduce program that estimates Pi using a quasi-Monte Carlo method.
  randomtextwriter: A map/reduce program that writes 10GB of random textual data per node.
  randomwriter: A map/reduce program that writes 10GB of random data per node.
  secondarysort: An example defining a secondary sort to the reduce.
  sort: A map/reduce program that sorts the data written by the random writer.
  sudoku: A sudoku solver.
  teragen: Generate data for the terasort
  terasort: Run the terasort
  teravalidate: Checking results of terasort
  wordcount: A map/reduce program that counts the words in the input files.
  wordmean: A map/reduce program that counts the average length of the words in the input files.
  wordmedian: A map/reduce program that counts the median length of the words in the input files.
  wordstandarddeviation: A map/reduce program that counts the standard deviation of the length of the words in the input files.

Not a valid JAR: xxxx 오류가 발생할 수 있습니다. 이때 주로 다운로드해야 하는 Hadoop 버전이 실행 코드와 같은지, 이때 실행되는 Hadoopjar는 HDFS 경로가 아닌 로컬 경로입니다.
grep 예시 (찾기) 를 실행하여 input 폴더에 있는 모든 파일을 입력으로 하고, 정규 표현식 dfs[a-z.] +에 맞는 단어를 선별하여 나타나는 횟수를 통계하고, 마지막으로 출력 결과를 출력합니다.
[hadoop@aliyunhost hadoop]$ cd /usr/local/hadoop
[hadoop@aliyunhost hadoop]$ mkdir ./input
[hadoop@aliyunhost hadoop]$ cp ./etc/hadoop/*.xml ./input #  
[hadoop@aliyunhost hadoop]$ ./bin/hadoop jar ./share/hadoop/mapreduce/hadoomapreduce-examples-*.jar grep ./input ./output 'dfs[a-z.]+'
[hadoop@aliyunhost hadoop]$ cat ./output/* #  

좋은 웹페이지 즐겨찾기