Hyperchicken HPC cluster
  • Home

About

  • Cluster
    • Key Features
    • Cluster Components
    • Naming Themes
  • License
  • Contact
    • Email
    • Visiting address
    • Mail address

Requesting Accounts and Groups

  • Accounts, security and privacy
    • 1. Accounts, security and privacy.
      • Asymmetric key cryptography
      • Security & Privacy
    • 2. Generate a public/private key pair
    • 3. Request an account via email
  • Generate SSH key pair for Windows
    • 1. MobaXterm option
      • 1.1 Get MobaXterm - a terminal and key generator application
        • 1.2 Launch MobaXterm key pair generator
        • 1.3 Configure key pair generator
        • 1.4 Generate key pair
        • 1.5 Secure private key and save pair to disk
    • 2. Using Windows OpenSSH
      • 2.1 Creating a keypair with OpenSSH
    • 3. Request account and have the public key linked to your account
    • Start using servers/services
  • Generate SSH key pair for macOS & Linux
    • Generate a key pair with OpenSSH
      • Open a terminal/shell
      • Generate key pair
      • Select where to store the key pair
      • Secure the private key
    • Request account and have the public key linked to your account
    • Start using servers/services
  • Request a new group on the cluster
    • Minimal requirements
    • What's next?

Logins

  • Jumphosts, UIs and sessions
    • User Interface (UI) and Jumphost servers
    • Request an account
    • SSH client config and log in to UI via Jumphost
  • SSH config & login for Windows clients
    • 1. MobaXterm option
      • 1.1 Launch MobaXterm and create a new session
      • 1.2 Configure a new session
      • 1.3 Password (popup)
      • 1.4 Password again (prompt)
      • 1.5 Session established
    • 2. Using Windows OpenSSH
      • 2.1 Semi-automatic configuration with .bat script
      • 2.1 Manual configuration with
      • 2.3 Connecting to the system
      • 2.4 Port forwarding to the compute nodes
      • 2.5 Creating keypair
    • 3. Using WSL
      • 3.1 Install WSL
    • 4. Converting keypair from Putty .ppk to OpenSSH format
  • SSH config for macOS clients
    • 1. Configure your SSH client
      • Quick Install
      • Detailed Walkthrough
    • 2 Login
  • SSH config for Linux clients
    • 1. Create required directories and files if they do not exist yet
    • 2. Configure Certificate Authority's (CA) public key to verify the identity of cluster servers
    • 3. Add include directive to main SSH config file
    • 4. Create SSH config file with generic settings
    • 5. Create SSH config file for Hyperchicken
    • 6. Login
  • SSH login for macOS & Linux clients
    • Log in to Hyperchicken on the commandline in a Terminal
    • Frequent Asked Questions (FAQs) and trouble shooting
  • Customize your environment
    • Time Zone

Storage

  • Keep - What is stored where on Hyperchicken
    • Introduction
      • Top 4 of blunders, that will result in disaster rather sooner than later
    • Software
    • Centrally deployed reference data
    • Your personal home dir @ /home/${user}
    • Group dirs @ /groups/${group}/...
    • Quota
    • List of storage devices / mount points used on Hyperchicken
    • The life cycle of experimental data
  • Data transfers - How to move data to / from Hyperchicken
    • 1. Push to or pull from cluster UI via jumphost
      • Using rsync over SSH
    • 2. Push to or pull from another (SSH) server
      • Using rsync over SSH
        • Configure SSH agent forwarding
        • Transfer data with rsync
      • Using http(s)
  • Archive - Using a remote archive storage
    • 1. Overview
      • 1.1. Basic overview
      • 1.2. How it works
      • 1.3 How can group request an access to the archive
    • 2. Managing data
      • 2.1. Data states
    • 3. Workflow example
      • User
      • Bundling
      • Local checksum
      • Uploading
      • Remote checksum
      • Migrating
      • Status
      • Unmigrating
    • 4. Other command line options
    • 5. Best practices
    • 6. Performance
    • 7. Issues

Compute

  • Crunch - How to manage jobs on Hyperchicken
    • Getting an account and starting a session on a User Interface (UI) server
    • Data transfers and storage systems
    • Job types
    • 1. Batch jobs
      • Submitting batch jobs
      • The batch job's environment
      • Checking the status of running batch jobs
      • Checking the status of finished jobs
      • Deleting jobs
    • 2. Interactive jobs
    • Job priority and scheduling efficiency
      • Job priority
      • Backfill
      • Job preemption
    • Quality of Service
      • QoS levels
      • 1. QoS leftover
      • 2. QoS regular
      • 3. QoS priority
      • 4. QoS panic mode
      • 5. QoS interactive
      • 6. QoS ds
      • QoS sub-levels
      • Requesting QoS
      • QoS level and sub-level details
    • Nodes and Partitions
    • Storage
      • Shared storage
      • Local scratch space on a cluster node
    • Debugging and Frequent Asked Questions (FAQs)
      • Q: How do I know what environment is available to my job on an execution host?
      • Q: I don't get any output; What is wrong?
      • Q: How can I profile my jobs?
        • Tools for monitoring jobs
      • Q: Why are my Java jobs misbehaving and using more cores than specified?
      • Q: Why are my Java jobs complaining there is ''no space left on device'' when there is plenty of space
      • Q: Why does Git fail with "The requested URL returned error: 403"
      • Q: Why do I get "sbatch: error: Batch job submission failed: Invalid account or account/partition combination specified"
      • Q: Why are my jobs not starting with state pending (PD) and reason QOSMax[some_resource]!PerUser or QOSGrp[some_resource]Limit?

Technical Specifications

  • Details on the Hyperchicken HPC environment
    • Software
    • Virtual Servers
    • Shared Storage
    • Resources available to Slurm jobs
      • cpu_vm partition
      • user_interface partition

Software

  • Using and installing software
    • Introduction
    • 1. Packages from the Linux distro / Operating System (OS)
    • 2. Modules installed with EasyBuild by admins
      • Example for the Genome Analysis Toolkit (GATK).
      • Missing software
      • Instructions for deploy admins
    • 3. Modules installed with EasyBuild by regular users in their own environment
    • 4. Other package managers / deployment procedures
      • Conda, Miniconda and Bioconda
      • Containers
    • 5. Language specific installation options for extra/custom packages
  • R packages
    • Create location for custom R packages and prepend that to the search path for R packages
      • 1. Create a ${HOME}/.Renviron file
      • 2. Add ${R_LIBS} to your ${HOME}/.Renviron file
        • Note ${R_LIBS} versus ${R_LIBS_USER}
        • Note % expansions do not work in ${R_LIBS}
        • Note about version numbers in the path
      • 3. Make sure the custom path added to ${R_LIBS} exists
    • Install custom R packages
      • A. Install R package from the Comprehensive R Archive Network (CRAN) repository
      • B. Install R package from the BioConductor repository
      • C. Install R package from an archive file without (CRAN/BioConductor) repository
      • D. Install R package from a GitHub repository
  • RStudio
    • Introduction
    • How to NOT use RStudio
    • How to use RStudio
      • 1. Install software on your own computer
      • 2. Login on Hyperchicken
      • 3. Create a screen or tmux session on Hyperchicken
      • 4. Create an interactive Slurm session on Hyperchicken
      • 5. Load and start R in your interactive Slurm session on Hyperchicken
      • 6. Start a remoteR server session in your R session on Hyperchicken
      • 7. Create an SSH tunnel on your own computer
        • For Windows clients
        • For Linux & macOS clients
      • 8. Install remoteR in RStudio on your own computer
      • 9. Using the remote R session in RStudio on your own computer
        • Creating plots
      • 10. Cleaning up
  • Jupyter notebooks
    • Introduction
    • How to use JupyterLab
      • 0. Install software on your own computer
      • 1. Login on Hyperchicken
      • 2. Create a screen or tmux session on Hyperchicken
      • 3. Create an interactive Slurm session on Hyperchicken
      • 4. Load and start Jupyter in your interactive Slurm session on Hyperchicken
      • 5. Create an SSH tunnel on your own computer
        • For Windows clients
        • For Linux & macOS clients
      • 6. Using the Jupyter session in a web browser on your own computer
      • 7. Cleaning up
  • Apptainer (Singularity)
    • Table of contents
    • About Apptainer
      • In short
      • Containers and apptainer
    • List of commonly used commands
    • Building Apptainer images
      • Building without elevated permissions
    • Sandbox
      • Example with Ubuntu 18.04
      • Converting sandbox directory to sif file
    • Building image as a regular user
    • Making an image from the definition file with elevated permissions
    • Definition file
      • Header
      • Sections
    • Important
    • Cache and tmp folders
      • ${APPTAINER_CACHEDIR}
      • ${APPTAINER_TMPDIR}
      • Automatically configure ${APPTAINER_CACHEDIR} and ${APPTAINER_TMPDIR} for each login
    • Running Apptainer on Windows or Mac
    • Using images from the Docker repository
    • Using storage from the host system inside containers
      • Default host folders mounted inside containers running on Hyperchicken
      • Isolated containers
      • Mounting host folders inside containers
    • Other considerations
      • Architecture considerations
      • Licence considerations
    • Environment variables
    • Debug information
    • Additional examples
      • Alpine - as regular user build static file via sandbox directory
      • Simple CentOS 7 example via sandbox
  • Nextflow
    • Nextflow introduction
      • How to use and install Nextflow
      • Changing the default writing location for $NXF_HOME
      • Running local within an interactive session or single slurm job
      • How to run Nextflow in an interactive session
    • How to wrap Nextflow submission to a single Slurm job
    • How to paralize your work using Slurm
    • Debugging & Logging
      • Logging
      • Execution Report
      • Timeline Graph
  • Python (Virtual Environment)
    • Caution
    • Introduction
    • Creating new Python virtual environment
    • To use the existing environment
    • To install packages inside the Python environment

Group Specific Documentation

  • Solve-RD - How to find and work with Solve-RD data
Hyperchicken HPC cluster
  • Group Specific Documentation
  • Solve-RD - How to find and work with Solve-RD data

Previous

Built with MkDocs using a theme provided by Read the Docs.
« Previous