IDEA 를 이용 하여 Hadoop 개발 환경 을 구축 하 는 작업 절차(Window 10 의 경우)

Hadoop 설치
설치 패키지 다운로드
홈 페이지 에 들 어가 hadop 설치 패키지 다운로드(바 이 너 리 파일)http://hadoop.apache.org/releases.html


2.10.1 버 전 을 다운로드 합 니 다.더 높 은 버 전 을 다운로드 하려 면 먼저 Maven 창고 에 가서 해당 버 전이 있 는 지 확인 하 십시오.
압축 해제 파일
다운로드 한.gz파일 은 직접 압축 을 풀 수 있다.

winRAR 과 Bandizip 는 모두 압축 을 푸 는 데 사용 할 수 있 지만,반드시 관리자 신분 으로 압축 해제 소프트웨어 를 열 어야 합 니 다.그렇지 않 으 면 압축 해제 오류 가 발생 할 수 있 습 니 다.
환경 변수 설정
JAVA 설정HOME 와 HADOOPHOME
우 리 는 환경 변수 에 각각 JAVA 를 설정 합 니 다.HOME 와 HADOOPHOME

그리고 Path 에 JAVA 와 hadop 의 바 이 너 리 폴 더,bin 폴 더 를 추가 합 니 다.

환경 변수 설정 검증
cmd 를 열 고 다음 명령 을 입력 하 십시오.이러한 출력 설명 설정 환경 변수 가 성공 적 으로 나 타 났 습 니 다.
C:\Users\lenovo>hadoop -version

HDFS 설정
이전에 압축 을 풀 었 던 hadop 폴 더 에 와 서 etc/hadop 폴 더 를 엽 니 다.

지금 우리 의 임 무 는 바로 이 파일 들 중의 코드 를 수정 하 는 것 입 니 다.반드시 수정 해 야 합 니 다.그렇지 않 으 면 hadop 을 실행 할 수 없습니다!!
hadop-env.cmd 수정
configuration 을 다음 으로 변경 합 니 다.

<configuration>
   <property>
     <name>fs.defaultFS</name>
     <value>hdfs://0.0.0.0:9000</value>
   </property>
</configuration>
hdfs-site.xml 수정
configuration 처 를 다음 과 같이 변경 합 니 다.file:///E:/DevTols/hadoop-2.10.1/namespace_logs file:///E:/DevTols/hadoop-2.10.1/data이 두 폴 더 는 반드시 존재 하 는 폴 더 가 필요 합 니 다.hadop 폴 더 아래 에 두 개의 폴 더 를 마음대로 만 든 다음 에 아래 두 폴 더 의 절대 경 로 를 폴 더 로 바 꿀 수 있 습 니 다.여기 저도 두 개의 새 폴 더 를 만 들 었 습 니 다.hadop 의 다운로드 폴 더 자체 가 없습니다.

configuration 태그 와 내용 을 변경 합 니 다.

<configuration>
   <property>
     <name>dfs.replication</name>
     <value>1</value>
   </property>
   <property>
     <name>dfs.name.dir</name>
     <value>file:///E:/DevTols/hadoop-2.10.1/namespace_logs</value>
   </property>
   <property>
     <name>dfs.data.dir</name>
     <value>file:///E:/DevTols/hadoop-2.10.1/data</value>
   </property>
</configuration>
mapred-site.xml 수정
아래%USERNAME%를 windows 사용자 이름 으로 바 꿉 니 다.
사용자 이름 은 win 키 로 볼 수 있 습 니 다.

<configuration>
   <property>
      <name>mapreduce.job.user.name</name>
      <value>%USERNAME%</value>
    </property>
   <property>
      <name>mapreduce.framework.name</name>
      <value>yarn</value>
    </property>
  <property>
     <name>yarn.apps.stagingDir</name>
     <value>/user/%USERNAME%/staging</value>
   </property>
  <property>
     <name>mapreduce.jobtracker.address</name>
     <value>local</value>
   </property>
</configuration>
상기 코드 는 두 군데%USERNAME%교체 해 야 합 니 다.빠 뜨리 지 마 세 요!!
yarn-site.xml 수정

<configuration>
   <property>
     <name>yarn.server.resourcemanager.address</name>
     <value>0.0.0.0:8020</value>
   </property>
  <property>
     <name>yarn.server.resourcemanager.application.expiry.interval</name>
     <value>60000</value>
   </property>
  <property>
     <name>yarn.server.nodemanager.address</name>
     <value>0.0.0.0:45454</value>
   </property>
  <property>
     <name>yarn.nodemanager.aux-services</name>
     <value>mapreduce_shuffle</value>
   </property>
  <property>
     <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
     <value>org.apache.hadoop.mapred.ShuffleHandler</value>
   </property>
  <property>
     <name>yarn.server.nodemanager.remote-app-log-dir</name>
     <value>/app-logs</value>
   </property>
  <property>
     <name>yarn.nodemanager.log-dirs</name>
     <value>/dep/logs/userlogs</value>
   </property>
  <property>
     <name>yarn.server.mapreduce-appmanager.attempt-listener.bindAddress</name>
     <value>0.0.0.0</value>
   </property>
  <property>
     <name>yarn.server.mapreduce-appmanager.client-service.bindAddress</name>
     <value>0.0.0.0</value>
   </property>
  <property>
     <name>yarn.log-aggregation-enable</name>
     <value>true</value>
   </property>
  <property>
     <name>yarn.log-aggregation.retain-seconds</name>
     <value>-1</value>
   </property>
  <property>
     <name>yarn.application.classpath</name>
     <value>%HADOOP_CONF_DIR%,%HADOOP_COMMON_HOME%/share/hadoop/common/*,%HADOOP_COMMON_HOME%/share/hadoop/common/lib/*,%HADOOP_HDFS_HOME%/share/hadoop/hdfs/*,%HADOOP_HDFS_HOME%/share/hadoop/hdfs/lib/*,%HADOOP_MAPRED_HOME%/share/hadoop/mapreduce/*,%HADOOP_MAPRED_HOME%/share/hadoop/mapreduce/lib/*,%HADOOP_YARN_HOME%/share/hadoop/yarn/*,%HADOOP_YARN_HOME%/share/hadoop/yarn/lib/*</value>
   </property>
</configuration>
환경 변수 초기 화
windows 의 cmd 에 cmd 명령 을 입력 하여 환경 변 수 를 초기 화 합 니 다.

%HADOOP_HOME%\etc\hadoop\hadoop-env.cmd
포맷 파일 시스템
이 명령 은 전체 hadop 의 설정 환경 과 그 후의 사용 에서 반드시 한 번 만 사용 해 야 합 니 다!
다음 명령 을 cmd 에 입력 하여 포맷 합 니 다:

hadoop namenode -format
다음 과 같은 힌트 가 있 으 면 포맷 에 성공 했다 는 것 을 설명 하 는 명령 이 많이 나 옵 니 다.
INFO common.Storage: Storage directory E:\DevTols\hadoop-2.10.1amespace_logs has been successfully formatted.
hadop 파일 에 winutills 파일 주입
windows 에서 클 러 스 터 를 열 려 면 일정한 bug 가 있 을 수 있 기 때문에 우 리 는 사이트 에 갑 니 다.https://github.com/steveloughran/winutils
해당 버 전의 winutils.exe 파일 을 다운로드 합 니 다.이 Github 창 고 를 열 면 다음 과 같 습 니 다.

hadop 2.8.3/bin 을 열 고 winutils.exe 파일 을 선택 하여 다운로드 한 다음 다운로드 한 이 파일 을 로 컬 hadop/bin 파일 에 넣 습 니 다.그렇지 않 으 면 위 분포 식 클 러 스 터 를 잠시 열 면 hadop 이 자동 으로 닫 힙 니 다.이 두 파일 이 없 으 면.

hadop 파일 에 hadop.dll 파일 추가
hadop.dll 파일 은 클 러 스 터 를 시작 할 때 필수 적 입 니 다.설치 과정 에서/bin 디 렉 터 리 에 이 파일(예 를 들 어 블 로 거)이 없 는 것 을 슬 프 게 발견 하면 인터넷 에서 독학 으로 다운로드 해 야 합 니 다.
홈 페이지 에 들어가다https://github.com/4ttty/winutils,
화살표 가 가리 키 는 절차 에 따라 hadop.dll 파일 을 다운로드 합 니 다.



다운로드 완료 후 파일 을/bin 디 렉 터 리 에 추가 합 니 다.

hadop 군집 열기
cmd 에 입력

%HADOOP_HOME%/sbin/start-all.cmd
이렇게 하면 검은색 창 이 많이 튀 어 나 옵 니 다.다음 과 같 습 니 다.

그리고 JPS 도 구 를 사용 하여 현재 열 린 node 가 어떤 것 이 있 는 지 볼 수 있 습 니 다.namenode,datanode 가 나타 나 면 클 러 스 터 가 기본적으로 성공 한 다 는 것 을 설명 합 니 다.다음 과 같다.

로 컬 브 라 우 저 를 열 어 검증 합 니 다.
우 리 는 브 라 우 저 에 localhost:50070 을 입력 합 니 다.이러한 웹 페이지 를 열 수 있다 면 hadop 이 성공 적 으로 열 렸 음 을 설명 합 니 다.

IDEA 설정
천신만고 끝 에 우 리 는 드디어 Hadoop 을 설 치 했 습 니 다.다음은 IDEA 에서 Maven 으로 hadop 을 설정 합 니 다.
MAVEN 프로젝트 프로젝트 생 성
IDEA 를 열 면 안에 있 는 인자 와 프로젝트 이름 을 마음대로 쓰 고 프로젝트 가 완 료 될 때 까지 기다 리 면 됩 니 다.그리고 pom.xml 파일 을 편집 합 니 다.

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.atguigu</groupId>
    <artifactId>hdfs1205</artifactId>
    <version>1.0-SNAPSHOT</version>

    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
    </properties>
    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>RELEASE</version>
        </dependency>
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-core</artifactId>
            <version>2.8.2</version>
        </dependency>
        <dependency>
            <groupId>org.apache.hadoop</groupId>
            <artifactId>hadoop-common</artifactId>
            <version>2.10.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.hadoop</groupId>
            <artifactId>hadoop-client</artifactId>
            <version>2.10.1</version>
        </dependency>
        <dependency>
            <groupId>org.apache.hadoop</groupId>
            <artifactId>hadoop-hdfs</artifactId>
            <version>2.10.1</version>
        </dependency>
    </dependencies>

</project>
오른쪽 아래 auto-import 를 누 르 면 jar 패 키 지 를 자동 으로 설치 합 니 다.완성 후 왼쪽 External Libraries 에서 jar 가방 을 여러 개 추가 한 것 을 볼 수 있 습 니 다.다음 그림 입 니 다.

이 는 우리 가 Maven 창 고 를 가 져 오 는 데 성공 했다 는 뜻 이다.
log4j.properties 프로필 작성
src/main/resources 디 렉 터 리 에 log4j.properties 파일 을 만 들 고 다음 코드 를 작성 합 니 다.

log4j.rootLogger=debug, stdout, R

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout

# Pattern to output the caller's file name and line number.
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] (%F:%L) - %m%n

log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=example.log

log4j.appender.R.MaxFileSize=100KB
# Keep one backup file
log4j.appender.R.MaxBackupIndex=5

log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%p %t %c - %m%n
자바 파일 작성
드디어 마지막 단계 입 니 다.자바 파일 을 작성 하고 실행 합 니 다.
먼저 hadop 가짜 분포 식 군집 을 잊 지 마 세 요!!
cmd 에서 작성%HADOOP_HOME%/sbin/start-all.cmd

import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.fs.FileStatus;
import org.apache.hadoop.fs.FileSystem;
import org.apache.hadoop.fs.Path;

import java.net.URI;

public class Test {
    public static void main(String[] args) throws Exception {
        FileSystem fs = FileSystem.get(new URI("hdfs://127.0.0.1:9000"), new Configuration());

        FileStatus[] files = fs.listStatus(new Path("/"));
        for (FileStatus f : files) {
            System.out.println(f);
        }
        System.out.println("Compile Over");
    }
}
이 코드 의 의 미 는 hadop 파일 시스템(HDFS)의 루트 아래 모든 파일 의 상 태 를 옮 겨 다 니 며 출력 하 는 것 입 니 다.

완료 후 cmd 입력%HADOOP_HOME%/sbin/start-all.cmd에서 의사 클 러 스 터 닫 기
편 의 를 위해 설정%HADOOP_HOME%/sbin/start-all.cmd%HADOOP_HOME%/sbin/start-all.cmd의 환경 변 수 는 여기 서 더 이상 군말 하지 않 고 독자 에 게 발휘 하도록 남 겨 준다.
여기까지 Window 10 에서 IDEA 를 이용 하여 개발 환경 을 구축 하면 완성,꽃 뿌 려!!!
Window 10 에서 IDEA 를 사용 하여 Hadoop 개발 환경 을 구축 하 는 것 에 관 한 이 글 은 여기까지 소개 되 었 습 니 다.더 많은 관련 IDEA 가 Hadoop 개발 환경 을 구축 하 는 내용 은 예전 의 글 을 검색 하거나 아래 의 관련 글 을 계속 조회 하 시기 바 랍 니 다.앞으로 많은 응원 부탁드립니다!

좋은 웹페이지 즐겨찾기