일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- Python
- licence delete curl
- springboot
- query
- docker
- License
- aggs
- Kafka
- license delete
- MySQL
- high level client
- plugin
- zip 파일 암호화
- aggregation
- zip 암호화
- 파이썬
- Mac
- sort
- matplotlib
- flask
- analyzer test
- token filter test
- TensorFlow
- ELASTIC
- API
- 900gle
- Test
- 차트
- Java
- Elasticsearch
Archives
- Today
- Total
개발잡부
[hadoop] Hadoop 명령어 본문
반응형
HDFS 커맨드
사용자 커맨드, 운영자 커맨드, 디버그 커맨드로 구분
사용자 커맨드
hdfs, hadoop 쉘을 이용할 수 있습니다. 일부 커맨드는 hdfs 쉘을 이용해야 함
# dfs 커맨드는 둘다 동일한 결과를 출력
$ hdfs dfs -ls
$ hadoop fs -ls
# fsck 커맨드도 동일한 결과 출력
$ hdfs fsck /
$ hadoop fsck /
# fs.defaultFS 설정값 확인
$ hdfs getconf -confKey fs.defaultFS
hdfs://127.0.0.1:8020
# 명령어를 인식하지 못함
$ hadoop getconf
Error: Could not find or load main class getconf
사용자 커맨드 목록
커맨드 | 기능 |
classpath | Hadoop jar 파일에 필요한 클래스 패스 출력 |
dfs | 파일 시스템 쉘 명령어 |
fetchdt | 네임노드의 델리게이션 토큰 확인 |
fsck | 파일 시스템 상태 체크 |
getconf | 설정된 Config 정보 확인 |
groups | 사용자에 설정된 그룹 정보 확인 |
lsSnapshottableDir | 스냅샷이 가능한 디렉토리 목록 확인 |
jmxget | JMX 인포메이션 확인 |
oev | Offline Edits Viewr, Edits 파일의 상태 확인 |
oiv | Offline Image Viewr, 이미지 파일의 상태 확인(2.4 이상) |
oiv_legacy | oiv 2.4 미만의 상태 확인 |
snapshotDiff | HDFS 스냅샷의 상태 확인 |
version | 버전 확인 |
dfs 커맨드
dfs 커맨드는 파일시스템 쉘을 실행하는 명령어 입니다.
dfs는 hdfs dfs, hadoop fs, hadoop dfs 세가지 형태로 실행이 가능합니다.
$ hdfs dfs -ls
Found 17 items
drwxr-xr-x - hadoop hadoop 0 2018-11-30 06:15 datas
$ hadoop fs -ls
Found 17 items
drwxr-xr-x - hadoop hadoop 0 2018-11-30 06:15 datas
dfs 커맨드 명령어
커맨드 | 기능 |
cat | 파일의 내용을 확인 |
text | 텍스트 형식으로 파일을 읽음, 압축 파일도 텍스트 형식으로 확인 |
appendToFile | 지정한 파일에 내용을 추가(append) |
checksum | 파일의 체크섬 확인 |
chgrp | 파일의 그룹 변경 |
chmod | 파일의 모드 변경 |
chown | 파일의 소유권 변경 |
count | 지정한 경로의 디렉토리 개수, 파일개수, 파일 사이즈 확인 |
df | 파일시스템의 용량 확인(복제본을 포함한 용량) |
du | 지정한 경로의 용량 확인(단일 파일의 용량) |
dus | 지정한 경로의 하위 폴더를 포함한 용량 확인 |
expunge | 휴지통을 비움. 파일을 영구히 삭제. |
getfacl | 디렉토리, 파일의 ACL(Access Control List) 확인 |
setfacl | 디렉토리, 파일의 ACL(Access Control List) 설정 |
getfattr | 디렉토리, 파일의 추가적인 속성 확인 |
setfattr | 디렉토리, 파일의 추가적인 속성 설정 |
getmerge | 주어진 경로의 파일들을 로컬의 파일로 머지 |
find | 주어진 표현에 맞는 파일을 조회 |
ls | 디렉토리의 파일 조회 |
lsr | 디렉토리 하위의 파일을 포함하여 조회 |
mkdir | 디렉토리 생성 |
copyFromLocal | 로컬의 파일을 HDFS로 복사 |
copyToLocal | HDFS의 파일을 로컬로 복사 |
cp | 주어진 경로로 파일을 복사 |
moveFromLocal | 로컬의 파일을 HDFS로 이동 |
moveToLocal | HDFS의 파일을 로컬로 이동 |
mv | 주어진 경로의 파일을 이동, 파일이름 변경에도 이용 |
get | copyToLocal 명령과 비슷 |
put | copyFromLocal 명령과 비슷 |
createSnapshot | 스냅샷 생성 |
deleteSnapshot | 스냅샷 삭제 |
renameSnapshot | 스냅샷 이름 변경 |
rm | 파일 삭제 |
rmdir | 디렉토리 삭제 |
rmr | 주어진 경로의 하위 경로까지 삭제 |
setrep | 레플리케이션 팩터 설정 |
stat | 주어진 옵션에 따라 파일의 정보를 확인 |
tail | 파일의 마지막 1kbyte를 출력 |
test | 주어진 옵션에 따라 파일, 디렉토리의 존재 여부 확인 |
touchz | 0byte 파일 생성 |
truncate | 주어진 패턴에 따라 파일 삭제 |
usage | 주어진 명령어 사용법 확인 |
help | 명령어 사용법 확인 |
- df는 복제개수를 포함한 전체의 용량을 표현하고, du 단일 파일 또는 경로의 용량입니다. 1M파일의 용량을 du로 확인하면 1M으로 나오지만, df로 파일 시스템의 용량을 확인하면 복제개수가 3일때 3M으로 표현됩니다.
fsck 커맨드
fsck 커맨드는 HDFS 파일시스템의 상태를 체크하는 명령어
fsck 커맨드는 우선 를 지정해야 합니다. 파일 시스템의 상태를 체크할 경로를 지정하고 필요한 명령어를 입력하면 됩니다. fsck 커맨드로 파일 시스템의 상태를 확인하고, -delete 커맨드로 오류가 난 파일을 삭제할 수 있습니다.
$ hdfs fsck <path> [-list-corruptfileblocks
[-move | -delete | -openforwrite]
[-files [-blocks [-locations | -racks]]]]
[-includeSnapshots] [-storagepolicies] [-blockId <blk_Id>]
$ hdfs fsck /
$ hdfs fsck /user/hadoop/
$ hdfs fsck /user -list-corruptfileblocks
$ hdfs fsck /user -delete
$ hdfs fsck /user -files
$ hdfs fsck /user -files -blocks
$ hdfs fsck /
Status: HEALTHY
Total size: 7683823089 B
Total dirs: 3534
Total files: 14454
Total symlinks: 0
Total blocks (validated): 14334 (avg. block size 536055 B)
Minimally replicated blocks: 14334 (100.0 %)
Over-replicated blocks: 0 (0.0 %)
Under-replicated blocks: 14334 (100.0 %)
Mis-replicated blocks: 0 (0.0 %)
Default replication factor: 2
Average block replication: 1.0
Corrupt blocks: 0
Missing replicas: 31288 (68.58095 %)
Number of data-nodes: 1
Number of racks: 1
FSCK ended at Fri Dec 28 04:07:32 UTC 2018 in 172 milliseconds
fsck 커맨드 명령어
커맨드비고
path | 체크를 위한 경로 |
-list-corruptfileblocks | 커럽트 상태의 블록을 출력 |
-delete | 커럽트 파일 삭제 |
-move | 커럽트 블록을 /lost+found 폴더로 이동 |
-files | 체크한 파일 출력 |
-files -blocks | 블록 리포트 출력 |
-files -blocks -locations | 블록의 위치를 출력 |
-files -blocks -racks | 블록의 랙정보 출력 |
-files -blocks -replicaDetails | 복제 개수 정보 출력 |
-files -blocks -upgradedomains | 블록의 도메인을 갱신 |
-includeSnapshots | 스냅샷을 포함해서 체크 |
-openforwrite | 쓰기 작업을 위해 열린 파일 출력 |
-storagepolicies | 블록의 저장 정책 출력 |
-maintenance | 블록의 관리 정보 출력 |
-blockId | 블록 ID 출력 |
운영자 커맨드
운영자 커맨드도 hdfs, hadoop 쉘을 이용할 수 있습니다.
# 둘다 balancer를 실행
$ hdfs balancer
$ hadoop balancer
운영자 커맨드 목록
운영자 커맨드는 주로 실행, 설정 관련 명령어가 많습니다.
커맨드 | 기능 |
namenode | 네임노드 실행 |
datanode | 데이터 노드 실행 |
secondarynamenode | 세컨더리 네임노드 실행 |
balancer | HDFS 밸렁싱 처리 |
cacheadmin | 자주 읽는 데이터에 대한 캐쉬 처리 |
crypto | 암호화 처리 |
dfsadmin | HDFS 관리를 위한 Admin 유틸리티 명령 |
dfsrouter | HDFS 연합 라우팅 실행 |
dfsrouteradmin | 데이터 노드 라우팅 설정 |
haadmin | HA 실행 명령어(QJM 또는 NFS) |
journalnode | QJM을 이용한 HA, 저널노드용 명령어 |
mover | 데이터 마이그레이션용 유틸리티 명령어 |
nfs3 | NFS3 게이트웨이 명령어 |
portmap | NFS3 게이트웨이 포트맵 명령어 |
storagepolicies | HDFS 저장정책 설정 명령어 |
zkfc | 주키퍼 FailOver 컨트롤러 실행 |
반응형
'Data' 카테고리의 다른 글
[data] Parquet (파케이) (1) | 2022.12.13 |
---|---|
[hadoop] hadoop install for mac os (0) | 2022.08.03 |
[hadoop] hadoop 명령어 2 (0) | 2022.07.27 |
[hadoop] mac OS 하둡설치 (0) | 2022.07.27 |
Comments