(Optional) Enable Jupyter Operator Use in Cloud K8s Cluster

In the on-premises DGX BasePOD deployment guide, cm-jupyter-setup can be optionally configured and integrated into K8s. The same service, running from the head node, can be used to provide Jupyter access to the public cloud-based K8s cluster as well.

  1. Validate cm-jupyterhub is set up and running correctly.

    service cm-jupyterhub status
    
  2. Configure a user and provide access to the appropriate K8s cluster.

    cmsh -c "user; add userone; set password useronepwd; commit"
    
  3. When using K8s through Jupyter, users must be added separately using K8s with the following commands. Users must have permission to access the Jupyter kernel operator in both K8s clusters to use the kernel templates.

    1apt install cm-python39
    2cm-kubernetes-setup --add-user userone –-cluster aws-cloud --operators cm-jupyter-kernel-operator
    3cm-kubernetes-setup --add-user userone --cluster onprem --operators cm-jupyter-kernel-operator
    
  4. Sign in to the Jupyter web interface using the account configured with Jupyter kernel operator permissions.

    _images/jupyter-operator-01.png
  5. Navigate to the Bright tab, choose the Python+NGC on Kubernetes Operator kernel template, and then select Ok.

    _images/jupyter-operator-02.png
  6. Fill in the required fields on the resulting New kernel window and then select Create.

    _images/jupyter-operator-03.png

    In this example, the public cloud-based K8s deployment was targeted by adding the cluster name (aws-cloud) as a path extension to the K8s environment module, and it was specified that the container could use a single GPU.

  7. Select Python+NGC on Kubernetes in the Notebook section.

    _images/jupyter-operator-04.png
  8. Once the state of the operator becomes Idle, run nvidia-smi to confirm the notebook is running on a T4 GPU instance.

    _images/jupyter-operator-05.png