-
[Hadoop] HADOOP_USER_NAME 환경변수 알아보기Hadoop 2024. 2. 21. 07:30728x90반응형
- 목차
들어가며.
로컬 환경의 터미널에서 원격의 Hadoop 시스템에게 명령을 요청하는 경우가 종종 생기곤 합니다.
이때에 hdfs dfs 커맨드를 사용하게 되는데 별다른 조치없이 hdfs 커맨드를 사용하게 되면,
실제 로컬 머신의 Active User 가 hdfs File System 의 사용자로 설정됩니다.
이를 방지하는 방법에 대해서 알아보도록 하겠습니다.
간단히 Hadoop 실행하기.
아래의 링크는 docker-compose 를 통해서 간단히 Hadoop Cluster 를 생성하는 내용의 페이지입니다.
https://westlife0615.tistory.com/20
저는 아래의 이미지처럼 docker-compose 로 하둡 클러스터를 세팅한 이후에 실습을 진행하였습니다.
로컬 환경에서 hdfs dfs 명령어 수행하기.
먼저 기본 사용자의 이름이 root 인 환경에서 테스트를 진행합니다.
아래 예시처럼 whoami 라는 리눅스 명령어를 통해서 현재의 활성화된 사용자를 확인할 수 있습니다.
whoami
root
이 상태에서 datanode 라는 Namespace 를 하나 생성해보도록 하겠습니다.
hdfs dfs -mkdir hdfs://namenode:9000/datanode
그 이후에 Root Namespace 를 조회하게 되면,
아래 결과처럼 root 라는 사용자가 생성한 datanode 라는 Namespace 를 확인할 수 있습니다.
hdfs dfs -ls hdfs://namenode:9000/
drwxr-xr-x - root supergroup 0 2023-11-04 11:34 hdfs://namenode:9000/datanode
로컬 환경의 사용자에 영향을 받지 않고,
특정 사용자명을 사용하고 싶은 경우에 HADOOP_USER_NAME 환경 변수를 사용할 수 있습니다.
아래와 같이 HADOOP_USER_NAME 을 andy 로 설정한 이후에 hdfs dfs mkdir 명령어를 수행합니다.
export HADOOP_USER_NAME=andy; hdfs dfs -mkdir hdfs://namenode:9000/andy;
hdfs dfs -ls hdfs://namenode:9000/
drwxr-xr-x - andy supergroup 0 2023-11-04 20:43 hdfs://localhost:9000/andy
반응형'Hadoop' 카테고리의 다른 글
[Hadoop] yarn-site.xml 알아보기 (0) 2024.03.03 [YARN] ApplicationMaster 알아보기 (0) 2024.02.28 [Hadoop] MapReduce Combiner 알아보기 (0) 2024.02.11 [Hadoop] MapReduce Configuration 알아보기 (0) 2024.02.03 [Hadoop] Secondary NameNode 알아보기 (0) 2024.01.30