Skip to content

A Kubernetes-based GPU cluster setup designed for JupyterHub, enabling efficient, secure multi-user GPU sharing. This project simplifies GPU resource management, allowing researchers and data scientists to leverage shared infrastructure for intensive computational tasks. Ideal for teams needing scalable GPU access with high performance and security

Notifications You must be signed in to change notification settings

CRLannister/Multi-Tenant-GPU-Cluster

Repository files navigation

Multi-Tenant GPU Cluster

This project, Multi-Tenant GPU Cluster, provides a detailed guide on setting up a Kubernetes-based GPU cluster with JupyterHub, aimed at facilitating efficient resource sharing across multiple users.

Key Features

  • Kubernetes Cluster Setup: Step-by-step setup of Kubernetes on multi-GPU servers.
  • JupyterHub Integration: Configures JupyterHub to enable multi-user access with dedicated resource allocation for each user.
  • GPU Resource Management: Uses Kubernetes and Helm configurations to ensure effective multi-tenant utilization of GPUs.
  • Networking & Security: Ensures network configurations and secure access via Kubernetes Dashboard and JupyterHub authentication.

Getting Started

  • Prerequisites: Linux system (Ubuntu 20.04+), Docker, kubectl, kubeadm, and Helm installations.
  • Deployment Steps: Follow the guide to initialize the Kubernetes cluster, install network plugins, and deploy JupyterHub.

Troubleshooting & Maintenance

  • Includes solutions for common deployment issues, such as pod scheduling and networking, with commands to diagnose and resolve them.

Access and Management

  • Kubernetes Dashboard: Access via port-forwarding for cluster management.
  • JupyterHub: Configure and launch JupyterHub instances with specified resource limits for each user.

For full details on each step, refer to the documentation. This setup is tailored to efficiently manage and scale GPU resources for multi-user environments, supporting research, data processing, and other intensive computational tasks.

About

A Kubernetes-based GPU cluster setup designed for JupyterHub, enabling efficient, secure multi-user GPU sharing. This project simplifies GPU resource management, allowing researchers and data scientists to leverage shared infrastructure for intensive computational tasks. Ideal for teams needing scalable GPU access with high performance and security

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published