NHN Cloud

NHN Cloud의 Object Storage 서비스 with S3 Client ( CLI Client )이용하기 ( feat. Service Gateway )

앙뚱이 2023. 6. 16. 11:12

안녕하세요.

 

NHN 클라우드의 Object Storage 서비스를 S3 Client로 조회하거나 업/다운로드를 해보려고 합니다.

 

뭐가 필요하지... 일단 object storage를 한번 생성해볼게요. 졸렵네요.. 저 아래 강아지처럼

1. Object Storage 서비스 생성

  • 그냥 Object storage 서비스 활성화 후에 컨테이너 생성 클릭하면 되네요
  • 다른 옵션 설정 없이 Public으로 한번 만들어보겠습니다.

 

2. Object Storage로 S3로 접근하기 위한 Configure

NHN Cloud Portal Guide

흠 일단 위 그림으로 보았을 때

필요사항

- 리눅스 서버에 파이썬 ( nhn cloud vm 이미지에는 기본적으로 pip2.6이 설치되어 있음 )

- Access Key

- Secret Access key

 

정도가 필요해보이네요

 

3. S3 자격증명을 위한 Access / Secret Key 생성

  • 아래 그림에서 S3 API 자격 증명 -> S3 API 자격 증명 등록 -> Access Key /  Secret Key 복사하여 메모장에 적습니다. 창을 그냥 닫으면 Secret Key는 다시 확인할 수 없다네요

 

4. S3 Cli Client 설치

  • 파이썬이 내장되어 있나봐요. 그래서 바로 클라이언트를 설치해주었습니다.
    • 명령어 : pip install awscli

 

5. S3 CLI Client 환경 설정

  • 명령어 : aws configure
    • 치니까 에러가 났다.... 아래 그림에서 보면 에러 내용은 뭐 모듈이 없는 것 같다 대충 GPT에 물어보니 파이썬3를 사용하라고 한다.

  • 명령어 : yum -y install python36
    • 위 명령어를 쳐서 파이썬 3.6으로 설치해주도록 하자
pip3 install awscli
aws configure
  • 위와 같이 명령어를 쓰고 접근키, 시크릿키를 넣어주도록 하자. 
  • Region도 반드시 입력해줘야되는데  KR1=판교, KR2=평촌이다.
  • 이렇게 되면 이제 모든 설정은 끝났다.

 

 

6.  S3 CLI 명령어 사용해보기

 

파일을 한번 버킷에 업로드 해보자

## 오브젝 목록 조회
aws --endpoint--url=https://kr1-api-object-storage.nhncloudservice.com s3 ls

## 오브젝 데이터 내용 조회
aws --endpoint--url=https://kr1-api-object-storage.nhncloudservice.com s3 ls s3://honaldo

## 오브젝 파일 업로드
aws --endpoint-url=https://kr1-api-object-storage.nhncloudservice.com s3 cp melong.txt s3://honaldo

------------ 결과물 ---------------

 

7.  Public이 아닌 Private하게 접근하려면?

  • Service Gateway를 사용한다. -> Network -> Service Gateway 클릭 -> 서비스 게이트웨이 생성 -> 다음 아래와 같이 Config를 설정하여 생성한다.

 

8.  Private하게 접근하기 위한 서버 내부 설정

명령어 : vi /etc//hosts

사설 IP api-storage.cloud.toast.com.  <<<<< 추가

그러면 위 그림과 같이 private하게도 이용이 가능하다.

 

7. 결론

  • S3 CLI Client 이용하여 NHN 클라우드 오브젝 스토리지 이용이 가능하다.
  • 발견된 이슈
    • 아래 그림과 같이 오브젝 목록을 조회하는 명령어를 쳤을 때 대문자나 특수문자가 섞인 오브젝 스토리지는 인식을 못하는 것 같다... honaldo만 나옴...

 

 

7. 결론