Basic Setup
How to install and configure the HPC Dashboard for your SLURM cluster
Setting up the HPC Dashboard requires Node.js and access to a SLURM cluster with API capabilities. Follow these steps to get your dashboard up and running quickly.
Prerequisites
Before installation, ensure you have:
- Node.js (v20 or later)
- npm or Yarn
- PM2 (for production deployment)
- SLURM cluster with REST API enabled
- SLURM API user credentials
- SLURM API token
- Root permissions on the installation system
Quick Installation
Step 1: Clone the Repository
Begin by installing the dashboard. You will be required to select a branch. Normally the main branch is recommended.
npx create-slurm-dashboard slurm-node-dashboard
Once complete, change in to the directory.
cd slurm-node-dashboard
Step 2: Install Dependencies
Install all required dependencies:
npm install
Step 3: Configure Environment
setup your production environment by moving the .env.production to .env
mv .env.production .env
update the file for your environment
# GENERAL SETTINGS
NODE_ENV="production"
REACT_EDITOR="code"
# Cluster branding
COMPANY_NAME="Acme Corp"
CLUSTER_NAME="My Cluster"
CLUSTER_LOGO="/logo.png"
# Support URL (optional)
NEXT_PUBLIC_SUPPORT_URL="https://support.example.com"
# SLURM REST API CONNECTION
SLURM_PROTOCOL="http"
SLURM_SERVER="192.168.1.5"
SLURM_API_VERSION="v0.0.40"
SLURM_API_TOKEN=""
SLURM_API_ACCOUNT=""
# PROMETHEUS MONITORING (Optional)
PROMETHEUS_URL="http://prometheus:9090"
# AI ASSISTANT (Optional)
OPENAI_API_KEY=""
OPENAI_API_URL="https://api.openai.com/v1"
OPENAI_API_MODEL="gpt-4o-mini"
OPENAI_API_MODEL_SUGGESTION="gpt-4o-mini"
# ADMIN AUTHENTICATION
ADMIN_USERNAME="admin"
ADMIN_PASSWORD="password"
# FEATURE FLAGS / PLUGINS
NEXT_PUBLIC_MAINT_NOTIFICATIONS_ENABLED="true"
NEXT_PUBLIC_ENABLE_MODULES_PLUGIN="true"
NEXT_PUBLIC_ENABLE_HISTORY_PLUGIN="true"
NEXT_PUBLIC_ENABLE_JOB_METRICS_PLUGIN="false"
NEXT_PUBLIC_ENABLE_OPENAI_PLUGIN="false"
NEXT_PUBLIC_ENABLE_PROMETHEUS_PLUGIN="false"
NEXT_PUBLIC_ENABLE_INFLUXDB_PLUGIN="false"
# METRICS DATABASE (Required if Job Metrics plugin is enabled)
SLURM_JOB_METRICS_DATABASE_URL="postgresql://user:password@localhost:5432/slurm_metrics"
# Hierarchy labels
NEXT_PUBLIC_HIERARCHY_LEVEL1_LABEL="College"
NEXT_PUBLIC_HIERARCHY_LEVEL2_LABEL="Department"
Configuration Required:
Make sure to update the SLURM_SERVER, SLURM_API_TOKEN, and SLURM_API_ACCOUNT fields with your specific values.
Step 4: Start Development Server
Launch the development server to test your installation:
npm run dev
Visit http://localhost:3000 in your browser to view the dashboard.
What's Next?
After installation, you can:
- Configure advanced features like OpenAI integration or Prometheus metrics
- Set up data collection scripts for historical data
- Integrate with Open OnDemand
Documentation:
See the documentation on Advanced Configuration for more details on customizing your dashboard installation.