Skip to main content
NetApp Solutions
본 한국어 번역은 사용자 편의를 위해 제공되는 기계 번역입니다. 영어 버전과 한국어 버전이 서로 어긋나는 경우에는 언제나 영어 버전이 우선합니다.

JupyterHub와 함께 NetApp DataOps 툴킷을 사용할 수 있습니다

기여자

"Kubernetes용 NetApp DataOps 툴킷" JupyterHub 와 함께 사용할 수 있습니다. 최종 사용자는 NetApp DataOps Toolkit을 JupyterHub와 함께 사용하여 Jupyter Notebook 내에서 직접 작업 공간 백업 및/또는 데이터 세트-모델 추적 기능을 위한 볼륨 스냅샷을 생성할 수 있습니다.

초기 설정

DataOps Toolkit을 JupyterHub와 함께 사용하려면 먼저 JupyterHub가 개별 사용자 Jupyter Notebook Server Pod에 할당하는 Kubernetes 서비스 계정에 적절한 권한을 부여해야 합니다. JupyterHub는 JupyterHub Helm 차트 구성 파일의 변수에 의해 지정된 서비스 계정을 singleuser.serviceAccountName 사용합니다.

DataOps 툴킷에 대한 클러스터 역할 생성

먼저, 볼륨 스냅샷을 생성하는 데 필요한 Kubernetes API 권한이 있는 'netapp-dataops'라는 클러스터 역할을 생성합니다.

$ vi clusterrole-netapp-dataops-snapshots.yaml
---
kind: ClusterRole
apiVersion: rbac.authorization.k8s.io/v1
metadata:
  name: netapp-dataops-snapshots
rules:
- apiGroups: [""]
  resources: ["persistentvolumeclaims", "persistentvolumeclaims/status", "services"]
  verbs: ["get", "list"]
- apiGroups: ["snapshot.storage.k8s.io"]
  resources: ["volumesnapshots", "volumesnapshots/status", "volumesnapshotcontents", "volumesnapshotcontents/status"]
  verbs: ["get", "list", "create"]

$ kubectl create -f clusterrole-netapp-dataops-snapshots.yaml
clusterrole.rbac.authorization.k8s.io/netapp-dataops-snapshots created

노트북 서버 서비스 계정에 클러스터 역할을 할당합니다

'netapp-dataops-snapshots' 클러스터 역할을 해당 네임스페이스의 적절한 서비스 계정에 할당하는 역할 바인딩을 생성합니다. 예를 들어 'jupyterhub' 네임스페이스에 JupyterHub를 설치하고 변수를 통해 'default' 서비스 계정을 지정한 경우 singleuser.serviceAccountName 다음 예와 같이 'jupyterhub' 네임스페이스의 'default' 서비스 계정에 'netapp-dataops-snapshots' 클러스터 역할을 할당합니다.

$ vi rolebinding-jupyterhub-netapp-dataops-snapshots.yaml
---
kind: RoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
  name: jupyterhub-netapp-dataops-snapshots
  namespace: jupyterhub # Replace with you JupyterHub namespace
subjects:
- kind: ServiceAccount
  name: default # Replace with your JupyterHub singleuser.serviceAccountName
  namespace: jupyterhub # Replace with you JupyterHub namespace
roleRef:
  kind: ClusterRole
  name: netapp-dataops-snapshots
  apiGroup: rbac.authorization.k8s.io

$ kubectl create -f ./rolebinding-jupyterhub-netapp-dataops-snapshots.yaml
rolebinding.rbac.authorization.k8s.io/jupyterhub-netapp-dataops-snapshots created

Jupyter Notebook 내에서 볼륨 스냅샷을 생성합니다

이제 JupyterHub 사용자는 NetApp DataOps Toolkit을 사용하여 다음 예에 표시된 대로 Jupyter 노트북 내에서 직접 볼륨 스냅샷을 생성할 수 있습니다.

입력/출력 대화 상자 또는 작성된 내용을 표시하는 그림