개요
회사에서 AWS Sagemaker Studio를 Production Level로 셋팅할 일이 생겨서 작업 한 뒤 내용을 정리해둔다.
해당 문서는 회사에서 Sagemaker Studio 사용을 가이드하는 내용이다.
목차
- 접속방법
- 보안정책
- 형상관리 연동방법
- 노트북 공유
- S3 사용방법
- 실행 인스턴스 성능 변경
접속방법
- 접속주소 : https://AWS계정ID.signin.aws.amazon.com/console/
접속하면 관리 콘솔 화면을 볼 수 있다.
Services
클릭 후 Amazon SageMaker
를 클릭한다.
계정 사용 정책
- IAM계정명과 동일하게 맞추어서 발급했다.
- Studio용 Role과 사용자 Role을 동일하게 부여했다.
- 왼쪽 메뉴에서
Studio
를 클릭하면 SageMaker 도메인 메뉴가 나온다. - 이미 생성된 계정 중에 본인 계정의
앱시작
버튼을 누른다.
Studio 실행
이후 앱 시작
-> Studio
클릭 시 Sagemaker Studio를 시작한다.
- 스튜디오가 실행되면 노트북 실행이 정상동작하는지 확인해보자.
File
->New
->Notebook
을 클릭한다.
커스텀 도커이미지
- 사내 도커이미지를 1벌로 공통화 하여 가져가고자 한다.
- 노트북 실행 시 사용할 도커이미지 및 커널을 선택하라고 나온다.
- 이때 ECR로 미리 만들어둔 공통 도커이미지를 선택하면 된다.
(부가적으로는 ECR 이미지를 studio화면에서 attach 해야한다.)
보안정책
- Sagemaker Studio IDE는 본인만 사용할 수 있게 보안설정을 했다.
- 만약 협업 필요 시 노트북 공유(읽기전용)는 가능하다.
- 더불어 코드 저장소는 공동사용 영역이다.
형상관리 연동방법: Git Clone
Github이 아닌 AWS CodeCommit으로 연동을 했다. 차후 Github으로 변경 여지는 있다.
- 사용할 git repo 정보를 확인해보자.
-
Services
->CodeCommit
으로 접속한다.
-
원하는 repo에
HTTPS
아이콘을 클릭하면 git repo 주소를 복사 할 수 있다.
-
스튜디오 좌측에서 Git모양 아이콘을 클릭 후
Clone a Repository
를 선택한다.
-
위에서 획득한 HTTPS 주소를 입력하고
CLONE
한다.
-
클론이 완료되면
/
경로 아래에 클론된 디렉토리가 표시된다.
형상관리 연동방법: Git Commit & Push
-
아래의 신규파일을 Git Commit 후 Push 해보기로 하자.
-
아래 네모 영역에 마우스를 갖다대서
+
를 하면 stage영역으로 파일이 이동한다.
-
Stage 영역으로 옮겨진 2개의 파일을 확인 할 수 있다.
-
커밋메세지를 적고 커밋 버튼을 눌러보자.
-
정상적으로 커밋한 뒤 네모 아이콘을 눌러 원본 repo로 push한다.
-
정상적으로 git push가 완료됨을 알려준다.
-
이후 code commit repo에서도 원하는 파일이 정상 추가되었음을 확인 할 수 있다.
노트북 공유
필요시 읽기전용 으로 내 노트북을 동료에게 공유할 수 있다.
-
공유를 원하는 노트북에 들어가
Share
를 클릭한다.
-
필요에 따라
output
포함여부를 선택하고Create
를 누른다.
-
노트북 공유용 URL이 생성되었다. 이 링크를 공유하면 된다.
-
타 계정에서 노트북 공유 링크에 접속해보면 읽기 전용이라는 경고와 함께 노트북을 볼 수 있다.
- 필요시 노트북을 복사해서 내 스튜디오에서 돌려 볼 수 있다.
S3 사용방법
S3는 우선 단일 버킷에 대한 접근 권한만 부여하여 관리를 시작하고자 한다.
아래는 boto3를 이용한 코드 예제이다.
-
Import & List
-
Put & Get
-
Delete
실행 인스턴스 성능 변경
- 스튜디오 오른쪽 상단에 cpu 표시된 부분을 클릭하면 실행자원을 변경 할 수 있다.
- 필요시 GPU 모델링도 가능하다.
- 과금과 연결되므로 오남용은 주의하여야 한다.