How-to guides
사용자는 Samsung Cloud Platform Console을 통해 AI&MLOps Platform의 필수 정보를 입력하고, 상세 옵션을 선택하여 해당 서비스를 생성할 수 있습니다.
AI&MLOps Platform을 생성하려면 다음 절차를 따르세요.
- 모든 서비스 > AI/ML > AI&MLOps Platform 메뉴를 클릭하세요. AI&MLOps Platform의 Service Home 페이지로 이동합니다.
- Service Home 페이지에서 AI&MLOps Platform 생성 버튼을 클릭하세요. AI&MLOps Platform 생성 페이지로 이동합니다.
- AI&MLOps Platform 생성의 서비스 유형 선택 페이지에서 서비스 생성에 필요한 정보들을 입력하고, 상세 옵션을 선택하세요.
- 서비스 유형 및 버전 선택 영역에서 서비스 유형을 선택하세요.
| 구분 | 필수 여부 | 상세 설명 |
|---|
| 서비스 유형 | 필수 | 사용자가 선택하는 서비스 유형 |
| 서비스 유형 버전 | 필수 | 선택한 서비스의 버전 선택 |
표. AI&MLOps Platform 서비스 유형 및 버전 선택 항목
- 클러스터 배포 영역 구분 영역에서 서비스 생성에 필요한 옵션을 선택하세요.
| 구분 | 필수 여부 | 상세 설명 |
|---|
| 클러스터 배포 영역 | 필수 | - Kubernetes Engine에서 배포: 기존에 생성한 Kubernetes Engine을 선택
- 새 클러스터에 배포: AI&MLOps Platform 생성 시에 Kubernetes Engine을 함께 생성
|
표. AI&MLOps Platform 서비스 클러스터 배포 영역 구분 항목
참고
해당 클러스터 배포 설정에 따라 다음 서비스 정보 입력 페이지의 설정 요소들이 달라집니다.
- AI&MLOps Platform 생성의 서비스 정보 입력 페이지에서 서비스 생성에 필요한 정보들을 입력하고, 상세 옵션을 선택하세요.
- 클러스터 배포 영역을 선택할 수 있습니다.
- 설치에 필요한 Kubernetes 클러스터 사양은 설치에 필요한 Kubernetes 클러스터 사양 가이드를 참고하세요.
- AI&MLOps Platform 생성의 생성 정보 확인 페이지에서 생성한 상세 정보와 예상 청구 금액을 확인하고, 완료 버튼을 클릭하세요.
- 생성이 완료되면, AI&MLOps Platform 서비스 목록 페이지에서 생성한 자원을 확인하세요.
AI&MLOps Platform 서비스는 전체 자원 목록과 상세 정보를 확인하고 수정할 수 있습니다. AI&MLOps Platform 서비스 상세 페이지에서는 상세 정보, 태그, 작업 이력 탭으로 구성되어 있습니다.
AI&MLOps Platform 서비스의 상세 정보를 확인하려면 다음 절차를 따르세요.
- 모든 서비스 > AI/ML > AI&MLOps Platform 서비스 메뉴를 클릭하세요. AI&MLOps Platform 서비스의 Service Home 페이지로 이동합니다.
- Service Home 페이지에서 AI&MLOps Platform 메뉴를 클릭하세요. AI&MLOps Platform 서비스 목록 페이지로 이동합니다.
- AI&MLOps Platform 서비스 목록 페이지에서 상세 정보를 확인할 자원을 클릭하세요. AI&MLOps Platform 서비스 상세 페이지로 이동합니다.
- AI&MLOps Platform 서비스 상세 페이지에는 상태 정보 및 부가 기능 정보가 표시되며, 상세 정보, 태그, 작업 이력 탭으로 구성됩니다.
상세 정보
AI&MLOps Platform 서비스 목록 페이지에서 선택한 자원의 상세 정보를 확인하고, 필요한 경우 정보를 수정할 수 있습니다.
| 구분 | 상세 설명 |
|---|
| 서비스 | 서비스명 |
| 자원 유형 | 자원 유형 |
| SRN | Samsung Cloud Platform에서의 고유 자원 ID |
| 자원명 | 자원 이름- AI&MLOps Platform 서비스에서는 클러스터명을 의미
|
| 자원 ID | 서비스에서의 고유 자원 ID |
| 생성자 | 서비스를 생성한 사용자 |
| 생성 일시 | 서비스를 생성한 일시 |
| 수정자 | 서비스 정보를 수정한 사용자 |
| 수정 일시 | 서비스 정보를 수정한 일시 |
| 대시보드상태 | 대시보드 상태값 |
| 서비스명 | 서비스 이름 |
| Admin Email Address | 관리자 이메일 주소 |
| 이미지명 | 서비스 이미지 이름 |
| 버전 | 이미지 버전 |
| 서비스 유형 | 베포된 서비스 유형 |
표. AI&MLOps Platform 서비스 상세 정보 항목
태그
AI&MLOps Platform 서비스 목록 페이지에서 선택한 자원의 태그 정보를 확인하고, 추가하거나 변경 또는 삭제할 수 있습니다.
| 구분 | 상세 설명 |
|---|
| 태그 목록 | 태그 목록- 태그 입력 시 기존에 생성된 Key와 Value 목록을 검색하여 선택
|
표. 클러스터 태그 탭 항목
작업 이력
AI&MLOps Platform 서비스 목록 페이지에서 선택한 자원의 작업 이력을 확인할 수 있습니다.
| 구분 | 상세 설명 |
|---|
| 작업 이력 목록 | 자원 변경 이력- 작업 내역, 작업 일시, 자원 유형, 자원명, 작업 결과, 작업자 정보 확인이 가능
- 작업 이력 목록 리스트에서 해당하는 자원을 클릭하세요. 작업 이력 상세 팝업창이 열립니다.
|
표. AI&MLOps Platform 서비스 작업 이력 탭 상세 정보 항목
AI&MLOps Platform 대시보드에 접속하려면 하시 사전작업이 선행되어야 합니다.
사전작업
해당 AI&MLOps Platform 접속하기 위해서 사전에 Security Group과 Firewall(방화벽 사용 시)에 관련 포트와 접속이 필요한 IP를 설정해야 합니다.
Kubeflow Mini: 31390 포트 (Security Group의 인바운드 룰, VPC 방화벽)
클러스터 Worker Node에 접근하려면 Security Group과 Firewall (VPC 방화벽 사용 시)에 22 포트의 인바운드 룰을 설정해야 합니다.
대시보드 접속하기
AI&MLOps Platform 서비스에 접속하려면 다음 절차를 따르세요.
- 모든 서비스 > AI/ML > AI&MLOps Platform 서비스 메뉴를 클릭하세요. AI&MLOps Platform 서비스의 Service Home 페이지로 이동합니다.
- Service Home 페이지에서 AI&MLOps Platform 서비스 메뉴를 클릭하세요. AI&MLOps Platform 서비스 목록 페이지로 이동합니다.
- AI&MLOps Platform 서비스 목록 페이지에서 상세 정보를 확인할 자원을 클릭하세요. AI&MLOps Platform 상세 페이지로 이동합니다.
- AI&MLOps Platform 상세 페이지에서 접속 가이드 버튼을 클릭하세요. 접속 가이드 팝업창이 열립니다.
- 접속 가이드 팝업창에서 대시보드의 URL 링크 를 클릭하세요. 해당 대시보드 페이지로 이동합니다.
주의
Public Subnet 사용 및 공인 IP 할당 시 외부 해킹, 악성코드 감염 등의 보안 공격에 노출될 수 있습니다.
사용하지 않는 해당 서비스를 해지하여 운영 비용을 절감할 수 있습니다. 단, 서비스를 해지하면 운영 중인 서비스가 즉시 중단될 수 있으므로 서비스 중단 시 발생하는 영향을 충분히 고려한 후 해지 작업을 진행해야 합니다.
주의
서비스 해지 후에는 데이터를 복구할 수 없으므로 주의해주세요.
AI&MLOps Platform을 해지하려면 다음 절차를 따르세요.
- 모든 서비스 > AI/ML > AI&MLOps Platform 서비스 메뉴를 클릭하세요. AI&MLOps Platform 서비스의 Service Home 페이지로 이동합니다.
- Service Home 페이지에서 AI&MLOps Platform 서비스 메뉴를 클릭하세요. AI&MLOps Platform 서비스 목록 페이지로 이동합니다.
- AI&MLOps Platform 서비스 목록 페이지에서 상세 정보를 확인할 자원을 클릭하세요. AI&MLOps Platform 상세 페이지로 이동합니다.
- AI&MLOps Platform 상세 페이지에서 서비스 해지 버튼을 클릭하세요. 서비스 해지 팝업창이 열립니다.
- 확인을 위해 서비스명을 입력한 후 확인을 클릭하세요.
- 해지가 완료되면, AI&MLOps Platform 서비스 목록 페이지에서 자원이 해지되었는지 확인하세요.
1 - 클러스터 배포
클러스터 배포 영역
Samsung Cloud Platform에서 AI&MLOps Platform 생성의 서비스 유형 선택에서 2가지의 클라우드 배포 영역을 제공하고 있습니다.
공통
클러스터 배포 작업을 진행하기 전에 꼭 설치에 필요한 Kubernetes 클러스터 사양을 확인하세요.
- 클러스터 배포 영역의 선택에 상관없이 사전에 Kubernetes 클러스터 사양을 확인해야 합니다.
- 상세한 사양 정보는 클러스터 사양 가이드를 참고하세요.
클러스터 배포 영역의 선택에 따라 AI&MLOps Platform 생성의 서비스 정보 입력 페이지의 설치 내용이 달라집니다.
SCP Kubernetes Engine에서 배포
- 모든 서비스 > AI/ML > AI&MLOps Platform 메뉴를 클릭하세요. AI&MLOps Platform의 Service Home 페이지로 이동합니다.
- Service Home 페이지에서 AI&MLOps Platform 생성 버튼을 클릭하세요. AI&MLOps Platform 생성 페이지로 이동합니다.
- AI&MLOps Platform 생성의 서비스 유형 선택 페이지에서 서비스 생성에 필요한 정보들을 입력하고, 상세 옵션을 선택하세요.
클러스터 배포
SCP Kubernetes Engine에서 배포 옵션을 선택하세요.
- AI&MLOps Platform 생성의 서비스 정보 입력 페이지에서 서비스 생성에 필요한 정보들을 입력하고, 상세 옵션을 선택하세요.
- 서비스 정보 입력 영역에서 서비스 생성에 필요한 정보들을 입력하거나 조회하세요.
| 구분 | 필수 여부 | 상세 설명 |
|---|
| 서비스명 | 필수 | AI&MLOps Platform 이름 입력- AI&MLOps Platform 이름은 프로젝트 내에서 중복하여 사용 불가
|
| Storage Class | 필수 | Storage Class는 자동으로 등록 |
| 설치 노드 정보 | 조회 | 선택한 Kubernetes Engine의 노드 정보를 확인 |
| Admin Email Address | 필수 | 로그인 시 사용할 관리자(Admin)의 이메일 주소 입력 |
| 비밀번호 | 필수 | 로그인 시 사용할 비밀번호를 입력 |
| 비밀번호 확인 | 필수 | 비밀번호 오류를 방지하기 위해 비밀번호 재입력 |
표. AI&MLOps Platform 서비스 정보 입력 항목
- 추가 정보 입력 영역에서 서비스 생성에 필요한 정보들을 입력하거나 선택하세요.
| 구분 | 필수 여부 | 상세 설명 |
|---|
| 태그 | 선택 | AI&MLOps Platform에 추가할 태그 선택- 태그 추가를 클릭하면 태그를 생성하여 추가하거나 기존 태그를 추가
- 추가한 신규 태그는 서비스 생성 완료 후 적용
|
표. AI&MLOps Platform 서비스 추가 정보 입력 항목
새 클러스터에 배포
- 모든 서비스 > AI/ML > AI&MLOps Platform 메뉴를 클릭하세요. AI&MLOps Platform의 Service Home 페이지로 이동합니다.
- Service Home 페이지에서 AI&MLOps Platform 생성 버튼을 클릭하세요. AI&MLOps Platform 생성 페이지로 이동합니다.
- AI&MLOps Platform 생성의 서비스 유형 선택 페이지에서 서비스 생성에 필요한 정보들을 입력하고, 상세 옵션을 선택하세요.
클러스터 배포
새 클러스터에 배포 옵션을 선택하세요.
- AI&MLOps Platform 생성의 서비스 정보 입력 페이지에서 서비스 생성에 필요한 정보들을 입력하고, 상세 옵션을 선택하세요.
서비스 정보 입력 영역에서 서비스 생성에 필요한 정보들을 입력하거나 조회하세요.
| 구분 | 필수 여부 | 상세 설명 |
|---|
| 서비스명 | 필수 | AI&MLOps Platform 이름 입력- AI&MLOps Platform 이름은 프로젝트 내에서 중복하여 사용 불가
|
| Storage Class | 필수 | Storage Class는 자동으로 등록 |
| 설치 노드 정보 | 조회 | 선택한 Kubernetes Engine의 노드 정보를 확인 |
| Admin Email Address | 필수 | 로그인 시 사용할 관리자(Admin)의 이메일 주소를 입력 |
| 비밀번호 | 필수 | 로그인 시 사용할 비밀번호를 입력 |
| 비밀번호 확인 | 필수 | 비밀번호 오류를 방지하기 위해 비밀번호 재입력 |
표. AI&MLOps Platform 서비스 정보 입력 항목
Kubernetes Engine 정보입력 영역에서 필요한 정보를 입력 또는 선택하세요.
| 구분 | 필수 여부 | 상세 설명 |
|---|
| 클러스터명 | 필수 | 클러스터 이름- 영문으로 시작하며 영문, 숫자, 특수문자(
-) 사용
|
| 제어 영역 설정 > Kubernetes 버전 | 필수 | Kubernetes 버전 선택 |
| 제어 영역 설정 > 제어 영역 로깅 | 선택 | 제어 영역 로깅 사용 여부 선택- 클러스터 제어 영역의 Audit/Event 로그를 Cloud Monitoring의 로그 분석에서 확인 가능
- Account 내 전체 서비스 대상으로 1GB의 로그 저장은 무료로 제공되며, 1GB가 넘을 경우 순차적으로 삭제됨
|
| 네트워크 설정 | 필수 | 노드 풀의 네트워크 연결 설정- Subnet: 선택한 VPC의 서브넷 중 사용할 일반 Subnet을 선택
- Security Group: 검색 버튼을 클릭한 후 Security Group 선택 팝업창에서 Security Group을 선택
- Load Balancer: Kubernetes Service 객체에서
type:LoadBalancer 기능 제공
|
| File Storage 설정 | 필수 | 클러스터에서 사용할 파일 스토리지 볼륨을 선택- 기본 볼륨(NFS): 검색 버튼을 통해 File Storage를 선택
- 기본 Volume 파일 스토리지는 NFS 형식만 제공
|
표. Kubernetes Engine 서비스 정보 입력 항목
노드 풀 정보 입력 영역에서 필요한 정보를 입력 또는 선택하세요.
| 구분 | 필수 여부 | 상세 설명 |
|---|
| 노드 풀 구성 | 필수 | 노드 풀 정보를 선택- * 표시된 항목은 필수 입력 항목이므로 반드시 입력
- AI&MLOps Platform의 경우 사용에 따라 이미지 용량이 지속적으로 늘어날 수 있으므로 Block Storage를 최소 200GB 이상으로 설정 시 원활한 시스템 구성이 가능
|
표. AI&MLOps Platform 서비스 정보 입력 항목
참고
- Windows OS의 노드 풀은 클러스터에서 추가 스토리지(CIFS) 볼륨이 사용 중인 경우에만 생성할 수 있습니다.
- 노드 풀 Block Storage의 볼륨 암호화는 최초 생성 시에만 설정할 수 있습니다.
- 암호화를 설정하면 일부 기능의 성능 저하가 발생할 수 있습니다.
- 노드 풀 자동 확장 또는 축소 기능을 사용으로 선택한 경우에만 노드 수, 최소 노드 수, 최대 노드 수 를 입력할 수 있습니다.
추가 정보 입력 영역에서 필요한 정보를 입력 또는 선택하세요.
| 구분 | 필수 여부 | 상세 설명 |
|---|
| 태그 | 선택 | AI&MLOps Platform에 추가할 태그 선택- 태그 추가를 클릭하면 태그를 생성하여 추가하거나 기존 태그를 추가
- 추가한 신규 태그는 서비스 생성 완료 후 적용
|
표. AI&MLOps Platform 서비스 정보 입력 항목
클러스터 사양
AI&MLOps Platform을 이용하려면 AI&MLOps Platform을 설치할 Kubernetes Engine이 필요합니다. 기존에 생성한 Kubernetes Engine을 선택하거나, AI&MLOps Platform 생성 시 함께 Kubernetes Engine을 생성할 수 있습니다.
설치에 필요한 Kubernetes 클러스터의 사양은 다음과 같습니다.
안내
Kubernetes 클러스터 당 1대의 AI&MLOps Platform만 설치할 수 있으며, 다른 용도로 사용 중인 클러스터에는 AI&MLOps Platform을 설치할 수 없습니다.
2 - Kubeflow 사용 가이드
아래에서는 Kubeflow를 생성한 후, Kubeflow의 사용 방법에 대해 가이드합니다.
Kubeflow 사용자 추가
아래에서는 Kubeflow를 생성한 이후의 Kubeflow의 사용 방법에 대해 가이드합니다.
Kubeflow는 설치 초기 화면에서 입력한 Admin User 1명의 계정만 생성되어있습니다.
Kubeflow Dashboard 이용 시, 초기 사용자 이외에 사용자를 추가하기 위해서는 Dex(Kubeflow의 인증 연계 컴포넌트)의 설정을 변경해야 합니다.
- Dex는 auth 네임스페이스(namespace)에 배포되며, 환경설정은 dex 라는 이름의 configmap 으로 저장되어 있습니다.
참고
kubeflow는 사용자별로 namespace가 분리되어 있습니다
다음은 Dex 환경 설정의 예시입니다.
apiVersion: v1
kind: ConfigMap
metadata:
name: dex
namespace: auth
data:
config.yaml: |
issuer: http://dex.auth.svc.cluster.local:5556/dex
storage:
type: kubernetes
config:
inCluster: true
web:
http: 0.0.0.0:5556
logger:
level: "debug"
format: text
oauth2:
skipApprovalScreen: true
enablePasswordDB: true
staticPasswords:
- email: admin@kubeflow.org
hash: $2y$10$Yb9WVbn8pzVSM6fBgKdFae1Bh6Z.XTihi7bNu3sB6/h5bt1JuUOgq
username: admin
userID: 9cb67307-fd6d-4441-9b59-52acd78f4c9e
staticClients:
- id: kubeflow-oidc-authservice
redirectURIs: ["/login/oidc"]
name: 'Dex Login Application'
secret: pUBnBOY80SnXgjibTYM9ZWNzY2xreNGQok
apiVersion: v1
kind: ConfigMap
metadata:
name: dex
namespace: auth
data:
config.yaml: |
issuer: http://dex.auth.svc.cluster.local:5556/dex
storage:
type: kubernetes
config:
inCluster: true
web:
http: 0.0.0.0:5556
logger:
level: "debug"
format: text
oauth2:
skipApprovalScreen: true
enablePasswordDB: true
staticPasswords:
- email: admin@kubeflow.org
hash: $2y$10$Yb9WVbn8pzVSM6fBgKdFae1Bh6Z.XTihi7bNu3sB6/h5bt1JuUOgq
username: admin
userID: 9cb67307-fd6d-4441-9b59-52acd78f4c9e
staticClients:
- id: kubeflow-oidc-authservice
redirectURIs: ["/login/oidc"]
name: 'Dex Login Application'
secret: pUBnBOY80SnXgjibTYM9ZWNzY2xreNGQok
코드 블럭. Dex 환경 설정 예시환경 설정에서 enablePasswordDB 값이 true인 경우, Dex는 서비스 기동 시 configmap 에서 staticPasswords 에 정의된 사용자 목록을 내부 저장소에 저장합니다. 따라서 staticPasswords에 email, hash, username, userID 로 구성된 신규 사용자 값을 추가하게 되면 초기 사용자 이외에도 사용자를 자유롭게 추가하여 Kubeflow 서비스 이용이 가능합니다.
사용자를 추가하기 위한 속성값은 다음과 같이 정의할 수 있습니다.
| 파라미터 | 설명 |
|---|
| email | 일반적인 E-mail 형식의 값 |
| hash | Bcrypt 알고리즘으로 암호화 된 사용자 암호 값이며 Bcrypt 알고리즘으로 생성된 Hash 값을 직접 입력 |
| username | 사용자 이름- kubernetes namespace 명명 규칙을 따름
- 63자 제한, 소문자 숫자 및
- 문자만 사용 가능
|
| userID | 유일하게 식별될 수 있는 ID 값- 초기 사용자의 userID는 uuidgen 커맨드를 이용하여 생성됨
|
표. 사용자를 추가하기 위한 속성값
kubectl을 사용할 수 있는 노드에서 다음 명령어를 이용해 dex configmap의 수정 화면으로 진입합니다.
kubectl edit configmap dex -n auth
kubectl edit configmap dex -n auth
코드 블럭. kubectl - dex configmap 수정staticPasswords:
- email: admin@kubeflow.org
hash: $2y$10$Yb9WVbn8pzVSM6fBgKdFae1Bh6Z.XTihi7bNu3sB6/h5bt1JuUOgq
username: admin
userID: 9cb67307-fd6d-4441-9b59-52acd78f4c9e
- email: sds@samsung.com
hash: $2y$12$0g5.y86jnrt0v6In5NRCZ.YVuvrAUQ6j/RJYO3rV.kNulaDALOKfq
username: sds
userID: 8961d517-3498-4148-90c9-7e442ee91154
staticPasswords:
- email: admin@kubeflow.org
hash: $2y$10$Yb9WVbn8pzVSM6fBgKdFae1Bh6Z.XTihi7bNu3sB6/h5bt1JuUOgq
username: admin
userID: 9cb67307-fd6d-4441-9b59-52acd78f4c9e
- email: sds@samsung.com
hash: $2y$12$0g5.y86jnrt0v6In5NRCZ.YVuvrAUQ6j/RJYO3rV.kNulaDALOKfq
username: sds
userID: 8961d517-3498-4148-90c9-7e442ee91154
코드 블럭. dex configmap 수정configmap의 staticPasswords 값은 Dex 서비스가 기동되는 시점에 반영되기 때문에 Dex 서비스를 다음 명령어로 재기동합니다.
kubectl rollout restart deployment dex -n auth
kubectl rollout restart deployment dex -n auth
코드 블럭. kubectl - dex 재기동신규 사용자 정보를 이용해 로그인을 시도합니다
정상적으로 로그인 되어 새로운 Namespace(profile)을 생성하는 화면으로 전환되는것을 확인합니다.
위 내용은 Kubeflow 공식 사이트를 참고하여 작성하였습니다. 자세한 내용은 Kubeflow Profiles 참고하세요.
Kubeflow Jupyter Notebook의 Custom Image 활용방법
Kubeflow의 Notebook Life Cycle을 관리하는 Kubeflow Notebook Controller에서 Custom Image를 사용하기 위해서는 몇 가지 요구사항을 만족해야 합니다.
Kubeflow는 Notebook 이미지가 실행되면 Jupyter가 자동으로 시작되는 것으로 인식합니다. 그래서 컨테이너 이미지에 Jupyter를 시작하는 기본 명령을 설정해야 합니다.
다음은 Dockerfile에 포함해야 하는 내용의 예시입니다.
ENV NB_PREFIX /
CMD ["sh","-c", "jupyter notebook --notebook-dir=/home/${NB_USER} --ip=0.0.0.0 --no-browser --allow-root --port=8888 --NotebookApp.token='' --NotebookApp.password='' --NotebookApp.allow_origin='*' --NotebookApp.base_url=${NB_PREFIX}"]
ENV NB_PREFIX /
CMD ["sh","-c", "jupyter notebook --notebook-dir=/home/${NB_USER} --ip=0.0.0.0 --no-browser --allow-root --port=8888 --NotebookApp.token='' --NotebookApp.password='' --NotebookApp.allow_origin='*' --NotebookApp.base_url=${NB_PREFIX}"]
코드 블럭. Dockfile 예시위 항목을 설명하면 아래와 같습니다.
| 파라미터 | 설명 |
|---|
--notebook-dir=/home/jovyan | 작업 디렉토리 설정- /home/jovyan 디렉토리는 Kubernetes persistent volume(PV)에 Mount 됨
|
--ip=0.0.0.0 | Jupyter Notebook이 모든 IP에서 수신하도록 허용 |
--allow-root | Jupyter Notebook을 사용자가 root로 실행하도록 허용 |
--port=8888 | Port 설정 |
--NotebookApp.token=’’ –NotebookApp.password=’’ | Jupyter 인증 비활성화- Kubeflow는 istio가 인증을 담당하기 때문에 Jupyter가 제공하는 인증 기능은 비활성화
- 해당 설정을 사용하여 Jupyter Notebook Server에 비밀번호 없이 액세스 가능
|
--NotebookApp.allow_origin=’*’ | Allow origin |
--NotebookApp.base_url=NB_PREFIX | Base URL 설정 |
표. Dockerfile에 포함해야하는 설정
Custom Image 생성은 tesorflow notebook image를 생성하는 Dockerfile을 참고하여 생성할 수 있습니다.
참고
Custom Image는 Docker Hub와 같은 Public Registry 또는 Private Registry에 저장되어 Kubeflow에서 push/pull이 가능하여야 합니다.
Notebook Servers 페이지에서 +NEW SERVER 버튼을 클릭하세요.
일단 Custom Image를 생성했다면 kubeflow Notebook Server 화면에서 Custom Image를 체크하고, Custom Image의 주소 를 입력하여 새로운 Notebook Server를 생성합니다.
안내
위 내용은 Kubeflow 공식 사이트를 참고하여 작성하였습니다.