Skip to main content
NetApp artificial intelligence solutions
简体中文版经机器翻译而成,仅供参考。如与英语版出现任何冲突,应以英语版为准。

将NetApp DataOps 工具包与 JupyterHub 结合使用

"适用于 Kubernetes 的NetApp DataOps 工具包"可以与 JupyterHub 结合使用。通过将NetApp DataOps Toolkit 与 JupyterHub 结合使用,最终用户可以直接在 Jupyter Notebook 中创建用于工作区备份和/或数据集到模型可追溯性的卷快照。

初始设置

在将 DataOps Toolkit 与 JupyterHub 一起使用之前,您必须向 JupyterHub 分配给各个用户 Jupyter Notebook Server pod 的 Kubernetes 服务帐户授予适当的权限。 JupyterHub 使用由 `singleuser.serviceAccountName`JupyterHub Helm 图表配置文件中的变量。

为 DataOps Toolkit 创建集群角色

首先,创建一个名为“netapp-dataops”的集群角色,该角色具有创建卷快照所需的 Kubernetes API 权限。

$ 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,并且通过以下方式指定了“默认”服务帐户 `singleuser.serviceAccountName`变量,您需要将“netapp-dataops-snapshots”集群角色分配给“jupyterhub”命名空间中的“默认”服务帐户,如下例所示。

$ 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 Notebook 中创建卷快照,如下例所示。

该图显示输入/输出对话框或表示书面内容