-
hadoop hdfs 데이터를 오브젝트스토리지로 마이그레이션 하기NAVER Cloud 2021. 2. 3. 18:42
on-premise hadoop 을 사용하다가 클라우드서비스를 이용하려고 할 때 hdfs 데이터 마이그레이션이 필요하다.
클라우드 서비스에서 제공하는 hadoop을 이용할 경우 데이터 저장소로 오브젝트스토리지를 많이들 사용하기 때문에 hdfs 데이터를 오브젝트 스토리지로 마이그레이션하는 방법을 테스트 해보았다.
1. hadoop hdfs로 마운트 된 /user/log 하위에 test, train_triplets.txt 라는 파일을 네이버클라우드 오브젝트스토리지의 user-data/hdfs 하위 버킷으로 마이그레이션하려고 한다. (test2 파일은 테스트 이후에 생성한 것이므로 무시)
2. distcp 수행
네이버클라우드의 오브젝트스토리지는 AWS S3 API 와 호환되기 때문에 S3 에서 사용할 수 있는 3rd party 도구들을 동일하게 사용할 수 있다. ( 참고 : https://docs.cloudera.com/HDPDocuments/HDP3/HDP-3.1.5/bk_cloud-data-access/content/s3-third-party.html)
sudo hadoop distcp -D fs.s3a.access.key={$Ncloud_Accesskey}\ -D fs.s3a.secret.key={$Ncloud_Secretkey}\ -D fs.s3a.bucket.endpoint=https://kr.object.ncloudstorage.com \ hdfs://{$namenode_host:9000}:{$port}/{$path}/ s3a://{$Ncloud_ObjectStorage_Bucket}
실제 커맨드 수행 예제를 보면 다음과 같다.
sudo hadoop distcp -D fs.s3a.access.key=42On5jYuTuDSzyGkxxIB\ -D fs.s3a.secret.key=fywnxV1oMuvfSgQWzRoSUY4lxxqNGmdI8ZWJoOml\ -D fs.s3a.bucket.endpoint=https://kr.object.ncloudstorage.com hdfs://m-001-hdptest-66v-hd:8020/user/log/ s3a://user-bucket/hdfs/
네이버클라우드에서 사용하는 Access/Secret Key는 아래 링크 참고
https://www.ncloud.com/mypage/manage/authkey
3. 오브젝트스토리지에 data migration이 잘되었는지 확인
user-data/hdfs 버킷에 test, train_triplets.txt 파일이 모두 잘 있는지 확인한다.
반응형'NAVER Cloud' 카테고리의 다른 글
Kubernetes 에서 Cert-manager로 letsencrypt 인증서 발급/설정 (0) 2021.07.22 클라우드에서 redis로 tomcat session 관리 구성 (0) 2021.07.19 네이버클라우드에서 서버 중지/기동 스케줄링 설정-CLI (0) 2021.02.01 Cloud Function deployment package in Python (0) 2020.10.12 Root Domain 에 CNAME 설정 후 non-www -> www redirect (0) 2020.06.16