HDFS 운영 중 다음과 같은 오류가 발생하였습니다. 23/12/18 15:22:43 INFO hdfs.DataStreamer: Exception in createBlockOutputStream java.io.IOException: Got error, status=ERROR, status message , ack with firstBadLink as 192.168.0.103:50010 at org.apache.hadoop.hdfs.protocol.datatransfer.DataTransferProtoUtil.checkBlockOpStatus(DataTransferProtoUtil.java:118) at org.apache.hadoop.hdfs.DataStreamer.createBlockOutputStre..
데이터 노드 실행 중 다음과 같은 오류가 발생하는 경우 데이터 노드의 네트워크 토폴로지 설정이 네임노드에 갱신되지 않아서 발생 하였습니다. core-site.xml 의 설정이 네트워크 토폴로지 설정을 이용하도록 변경된 상태에서 네임노드를 재부팅하지 않고, 운영하다가 데이터 노드를 재부팅 하니 다음과 같은 오류가 발생하였습니다. 2023-06-09 00:24:48,434 WARN org.apache.hadoop.hdfs.server.datanode.DataNode (BP-717439599-10.0.0.1-1679643941117 heartbeating to user-host.com/10.0.0.1:8020): RemoteException in register org.apache.hadoop.ipc.Remo..
yarn 에 s3를 연결하여 작업을 처리할 때 모든 작업을 다 했는데도 다음과 같은 오류가 발생하면서 연결이 되지 않는 다면 리소스 매니저, 노드 매니저를 재부팅해야 할 필요가 있습니다. Failing this attempt.Diagnostics: [2022-11-25 19:18:38.425]java.io.InterruptedIOException: doesBucketExist on peb-test-bucket: com.amazonaws.AmazonClientException: No AWS Credentials provided by BasicAWSCredentialsProvider EnvironmentVariableCredentialsProvider InstanceProfileCredentialsProvi..

하둡 2.10.0 버전에서 데이터 노드를 재시작할 때 다음과 같은 오류가 발생하였습니다. 여러 대의 노드에서 동일한 작업을 진행하였는데 하나의 노드에서만 이런 문제가 발생하였습니다. 2022-07-05 15:15:19,119 INFO org.apache.hadoop.hdfs.server.datanode.fsdataset.impl.FsDatasetImpl (Thread-83): Caught exception while adding replicas from /hadoop/hdfs/data/current. Will throw later. java.io.IOException: Failed to start sub tasks to add replica in replica map :java.lang.Arithmeti..
HDFS에서 관리자용 명령어인 dfsadmin 관련 명령을 실행할 때 다음과 같은 오류가 발생하면서 실행이 되지 않을 때가 있습니다. 이럴때는 두 가지 해결방법이 있습니다. $ hdfs dfsadmin -report Configured Capacity: 194882378752 (181.50 GB) Present Capacity: 194848824320 (181.47 GB) DFS Remaining: 192335490048 (179.13 GB) DFS Used: 2513334272 (2.34 GB) DFS Used%: 1.29% Under replicated blocks: 0 Blocks with corrupt replicas: 0 Missing blocks: 0 Missing blocks (with re..

하둡 네임노드는 HDFS의 최신 데이터(fsimage)를 메모리에 보관하고 있습니다. 그리고 설정에 따라, 6시간에 1번, 100만 트랜잭션 당 1번씩 fsimage 를 파일로 보관합니다. 또한 중간 데이터인 edits 를 추가로 보관합니다. fsimage 저장 주기는 6시간에 1번 or 100만 트랜잭션당 1번 HDFS 파일 구조 파일 저장 구조는 위와 같습니다. VERSION: 현재 실행 중인 HDFS의 ID, 타입 등 정보 edits_0000xxx-0000xxx: 트랜잭션 정보. edits_트랜잭션시작번호-트랜잭션종료번호 까지의 정보를 저장 eidts_inprogress_000xx: 최신 트랜잭션 정보. 압축되지 않은 정보 fsimage_000xxx: 000xxx 까지 트랜잭션 정보가 처리된 fsi..
HA 구성 된 HDFS에 webhdfs 로 요청을 보냈을 때 스탠바이(standby) 상태의 노드가 이런 응답을 보낼 때가 있습니다. HA 구성된 HDFS는 두 개의 HDFS가 각 active, standby 상태로 운영됩니다. 그런데 standby 상태의 노드에 조회 요청을 하면 오류가 발생합니다. # 상태 확인 $ hdfs haadmin -getAllServiceState host1:8020 active host2:8020 standby # 데이터 조회 오류 $ curl --negotiate -u: -sS -L -X GET -k "https://host2:50470/webhdfs/v1/?op=GETFILESTATUS&user.name=hdfs" {"RemoteException":{"exception"..
HDFS는 REST API를 이용하여 파일을 조회하고, 생성, 수정, 삭제하는 기능을 제공합니다. 이 기능을 이용하여 원격지에서 HDFS의 내용에 접근하는 것이 가능합니다. REST API 설정 REST API를 사용하기 위해서는 hdfs-site.xml에 다음의 설정이 되어 있어야 합니다. -- webhdfs 사용여부 설정 dfs.webhdfs.enabled=true; -- webhdfs 포트 설정 dfs.namenode.http-address=0.0.0.0:50070; REST API 사용 방법 위에서 설정한 http 포트로 curl 명령을 이용하여 ls명령을 날리는 예제는 다음과 같습니다. -- /user/hadoop 위치를 조회 $ curl -s http://$(hostname -f):50070/..
HDFS를 포맷하는 방법에 대해서 알아보겠습니다. HDFS를 포맷하면 데이터가 모두 사라집니다. 반드시 백업을 해두고 진행하는 것이 좋습니다. 작업 순서 작업 순서는 AWS EMR의 HDFS를 기준으로 작성되었습니다. 각 제조사의 하둡마다 순서가 바뀔수 있지만 전체적인 맥락은 변경되지 않습니다. 서버 종료 네임노드, 데이타노드 종료를 종료합니다. 모든 노드의 네임노드 프로세스와 데이타노드 프로세스를 종료합니다. 네임노드 포맷 포맷 hdfs namenode -format 명령으로 네임노드를 포맷합니다. 네임노드를 포맷하면 dfs.namenode.name.dir경로의 fsimage와 edits 파일이 초기화 됩니다. 네임노드를 포맷하면 클러스터 ID가 신규로 생성됩니다. 이 정보는 dfs.namednoe.n..
HDFS는 각 데이터 노드의 저장장치의 특성에 맞게 데이터를 저장하는 특성을 제공한다고 합니다. Heterogeneous Storage (HDFS-2832)의 내용을 참고 하면 될 것 같습니다. 네이버의 PINPOINT, eBay등에서 이 작업을 적용하여 비용에 이득을 얻었다고 합니다. 아래 문서에 상세한 결과가 나와 있으므로 참고 바랍니다. $ hdfs storagepolicies -listPolicies Block Storage Policies: BlockStoragePolicy{COLD:2, storageTypes=[ARCHIVE], creationFallbacks=[], replicationFallbacks=[]} BlockStoragePolicy{WARM:5, storageTypes=[DISK,..
증상 EMR을 이용하여 데이터 처리 중 갑자기 각 데이터 노드의 Non DFS Used 용량이 늘어나서 실제 데이터를 저장할 용량이 부족해졌습니다. # hdfs dfsadmin -report로 확인 Decommission Status : Normal Configured Capacity: 165810782208 (154.42 GB) DFS Used: 32090261515 (29.89 GB) Non DFS Used: 45128228853 (42.03 GB) # Non DFS Used 용량의 증가 DFS Remaining: 88592291840 (82.51 GB) DFS Used%: 19.35% DFS Remaining%: 53.43%원인 데이터 노드를 확인하니 /mnt/yarn 아래 partion*.tmp,..
- Total
- Today
- Yesterday
- 오류
- Tez
- build
- 하둡
- SQL
- emr
- 알고리즘
- HDFS
- error
- SPARK
- HIVE
- S3
- 파이썬
- 백준
- 다이나믹
- nodejs
- hbase
- 하이브
- ubuntu
- mysql
- oozie
- bash
- AWS
- 정올
- airflow
- java
- Python
- yarn
- Linux
- Hadoop
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |