미식가의 개발 일기

GCP 환경에서 생성한 Jupyter에서 Cloud Storage 사용하기 본문

Settings

GCP 환경에서 생성한 Jupyter에서 Cloud Storage 사용하기

대체불가 핫걸 2024. 12. 15. 20:58

<GCP 환경에서 GPU가 설치된 Jupyter 실행을 위한 가상 머신 설정은 이 포스팅을 참고하시면 됩니다.>

 

GCP로 GPU 사용하기

GCP란?Google Cloud Platform의 약자로 Google이 제공하는 클라우드 컴퓨팅 서비스입니다.여러가지 서비스를 제공하지만 그중에서도 GPU를 사용하는 방법을 포스팅하려 합니다. 0. GCP 로그인처음 가입하

irreplaceablehotgirl.tistory.com

 

Jupyter Notebook 실행

  • 방화벽 설정

- Jupyter Notebook을 사용하려면 8888 포트를 사용해야 하므로 방화벽 설정이 필수입니다.

- 방화벽 → 방화벽 규칙 추가를 클릭하여 새로운 규칙을 생성합니다.

0.0.0.0/0 (외부 IP에서의 접근을 허용), TCP 8888로 설정

 

  • Jupyter Notebook 설치 후 실행
pip install notebook
jupyter lab --ip=0.0.0.0 --port=8888 --no-browser


→ 위의 명령어 실행 후 `http://<VM_외부IP>:8888` 주소로 접속하여 주어진 토큰을 입력하면 Jupyter Notebook 사용 가능

(jupyter notebook으로 접속할 경우 파일을 생성할 때 forbidden error가 발생 lab으로 접속하여 해결)

 

 

GCP Storage 사용하기 

1) Cloud Storage 생성 

  • Cloud Storage → 버킷 → 버킷 Create

 

  • 해당 버킷을 클릭하여 폴더 생성 또는 파일 업로드 

 

2) Cloud Storage 클라이언트 설치

  • 작업하고자 하는 가상 머신으로 이동하여 SSH 버튼을 눌러 GCP 콘솔을 열어 라이브러리 설치
pip install google-cloud-storage

 

 

3) Cloud Storage 인증 

  • IAM 및 관리자 → 서비스 계정 → 서비스 계정 만들기
계정 이름과 이 서비스 계정에 프로젝트에 대한 액세스 권한 부여에 '저장소 관리자'를 추가하고 생성

 

  • 생성된 스토리지 →  키 만들기 → json

 

4) Cloud Storage와 Jupyter 연결

  • 위에서 다운로드 한 json 파일을 Jupyter에 업로드 한 후 키 설정 
from google.cloud import storage

# Storage 키 설정
os.environ['GOOGLE_APPLICATION_CREDENTIALS'] = 'key.json'

 

5) Jupyter에서 Cloud Storage 데이터 읽기

# GCS 클라이언트 초기화
client = storage.Client()

# 버킷 선택
bucket_name = 'menudata-bucket'
bucket = client.bucket(bucket_name)

# Blob(파일) 선택
blob = bucket.blob('data/info.json')

# Blob 데이터를 메모리로 읽기
data = blob.download_as_text()

# 데이터를 pandas json으로 읽기
df = pd.read_json(data)

# 결과 출력
print(df.head())

 

반응형