Here are the steps to use NRP with your UCSD email.

Your email will be registered by us.

1. Installations

After you have been registered, do the following:

  1. Go to https://portal.nrp-nautilus.io/

  2. Click Login

  3. Change the Identity Provider (default is ORCID) to UCSD, and then click Log On

  4. Go to the Home Page and at the very bottom, accept the Use Policy

  5. Click Get Config and sign in with your UCSD email. A config file should be downloaded.

  6. Go to https://kubernetes.io/docs/tasks/tools/

    Depending on your OS, click one of these three links.

image.png

  1. For

    1. Windows users: Click on the Kubernetes release page

      image.png

      Scroll down to find this exact version and click on the kubectl.exe

      image.png

      It will download kubectl.exe to your computer.

    2. MacOS Users: Ask Girish for the step-by-step guide

    3. not too sure

  2. In your home directory, make a new directory and name it .kube . Put the config and kubectl.exe in that .kube directory.

2. Making .yaml files

  1. In the .kube directory, make a new file call it mypod.yaml file

  2. Copy-paste this code into mypod.yaml

    # mypod.yaml
    apiVersion: v1
    kind: Pod
    metadata:
      name: philip-pod     # change philip to your name
    spec:
      containers:
      - name: philip-pod   # also change to your name here
        image: tensorflow/tensorflow:latest-gpu
        volumeMounts:
        - name: signal-processing-volume
          mountPath: /mnt/
        command: ["sleep", "infinity"]
        resources:
          limits:
            memory: 4Gi
            cpu: 4000m
            nvidia.com/gpu: 1
          requests:
            memory: 3Gi
            cpu: 3000m
            nvidia.com/gpu: 1
      volumes:
        - name: signal-processing-volume
          persistentVolumeClaim:
            claimName: signal-processing-volume
    
  3. Make a new file myjob.yaml and put this code into it:

    # myjob.yaml
    apiVersion: batch/v1
    kind: Job
    metadata:
      name: philip-job     # change philip to your name
    spec:
      template:
        spec:
          containers:
          - name: philip-job    # also change to your name here
            image: tensorflow/tensorflow:latest-gpu
            volumeMounts:
              - name: signal-processing-volume
                mountPath: /mnt/
            resources:
              limits:
                memory: 16Gi
                cpu: 1280m
                nvidia.com/gpu: 1
              requests:
                memory: 16Gi
                cpu: 1280m
                nvidia.com/gpu: 1           
            command: ["echo", "Hello", "World!"]
            # We will figure out something in the future for what to put for command
          volumes:
            - name: signal-processing-volume
              persistentVolumeClaim:
                claimName: signal-processing-volume
          restartPolicy: Never
      backoffLimit: 5