# CBS Server Guide ## What is the CBS? The Computational Brain Science Group Server (CBS) is a local server system physically located at the Robarts Research Institute, designed for researchers at Western University with computational neuroscience needs. The server provides virtual desktop infrastructure (VDI) using VMware technology to create virtual clones of Linux machines for each user session. It is intended for research use only and offers different account types to accommodate various computational requirements. The CBS system runs Ubuntu 22.04.5 LTS and provides access to a variety of pre-installed software packages through environment modules. Users access the system through virtual machines that can be customized based on their computational needs, from basic research tasks to high-performance computing. ## Get your account ### Account types CBS offers two account types for server usage, each designed to meet different computational needs: - **Standard user account (CBS Basic):** Free access to 4 cores and 16 GB of memory, ideal for regular computational tasks. - **Power User Account (CBS Heavy):** Access to 12 cores and 47 GB of memory for more demanding workloads (additional charges apply - see [fee schedule](#Fee-schedule) below) Choose the account type that best suits your workload. You can request to change your account type using the user [account changes](#Account-changes) form if your computational needs change over time. Don't hesitate to reach out to [support-cbs-server@uwo.ca](mailto:support-cbs-server@uwo.ca) if you need assistance determining which account type is right for your research. ### If you are user/student/postdoc (<u>not</u> a Principal Investigator (PI)) 1. All user accounts must be associated with a pre-existing PI account 2. You must use your valid uwo.ca email address when requesting an account 3. Check with your PI regarding power user accounts, as they incur additional charges 4. Fill out this form for non-PI user accounts: https://forms.office.com/r/mdmWQ6qpep ### If you are a Principal Investigator (PI) 1. You must use your uwo.ca email address when requesting an account 2. Fill out this form for PI accounts: https://forms.office.com/r/dztbCVfNxk 3. Consider requesting only a nominal amount of storage initially, as it's easier to increase storage allocations than to decrease them. 4. Review the fee schedule below before requesting resources. #### Fee schedule With current CFI and BrainsCAN support, the charges are: - _Storage_: $50/TB/year - _Power user accounts_: $1000/year for the first account, $500/year for each subsequent account >[!Note] >With the purchase of storage, any number of standard user accounts can be created at no additional cost. Billing is done on a fixed quarterly schedule. ### Account processing After submitting your form, the information is forwarded to [IT Helpdesk](https://servicedesk.schulich.uwo.ca/) for account setup. You will receive an email confirmation when your account is ready. New account requests are typically fulfilled within 1 business day, though delays may occur. You will use your existing Western University credentials to log in. ### Account changes Do you need to make changes to your existing account? Use whichever form is appropriate for your needs. - **PI account changes:** PIs needing to increase storage, create new project spaces, or update speedcode, please use this form: https://forms.office.com/r/Syb4tKN717 - **User account changes:** Users (both PI and non-PI) wishing to request access to additional datashares, change account type (Basic or Power), update contract end date, or request access to project spaces, please use this form: https://forms.office.com/r/sQepNZDNqS >[!Note] >Account change requests are processed by Robarts IT and may take 1-2 business days to complete. ## Login ### Accessing the Virtual Desktop Infrastructure (VDI) The CBS server uses VMware Virtual Desktop Infrastructure to provide virtual machines: 1. Navigate to: https://vdi.robarts.ca 2. Download and install the Omnissa Horizon Client (previously VMware Horizon Client): https://customerconnect.omnissa.com/downloads/info/slug/desktop_end_user_computing/omnissa_horizon_clients/8 3. Launch the Omnissa Horizon Client software and set up a new connection server 4. Use vdi.robarts.ca as the connection server address 5. Log in with your full UWO email address (e.g., *<usename>@uwo.ca*) and your UWO password 5. Use the same credentials to log into the Ubuntu virtual machine >[!Important] >If you were previously connected to vsecurity.robarts.ca, you must delete the old connection and add a new one pointing to vdi.robarts.ca. ### Managing your session - **Disconnecting:** If you need to keep your virtual machine running (e.g., active processes), quit the Omnissa Horizon application or select "Disconnect" from the Connection menu. Your session will remain active and you can reconnect later - **Screen locking:** If your screen locks due to inactivity, you can unlock it to continue your session and refresh your authentication ticket - **Shutting down:** If you have no active processes, be considerate of shared resources and shut down your virtual machine by selecting "Log Out" from your Ubuntu account menu or the Omnissa Horizon Connection menu > [!important] > Session behavior depends on how you exit: > - **Closing the Horizon client window:** This will terminate your VDI session > - **Disconnecting properly:** Your session continues running and can be resumed > - **Screen lock:** Session remains active and can be unlocked to continue ### Password management Use your existing Western University credentials to access the CBS server. Password changes are managed through Western University's standard password change procedures, not through the CBS server directly. ### Authentication tickets and session management The CBS server uses Kerberos authentication tickets from UWO that have specific lifespans: - **Ticket lifespan:** 10 hours with automatic renewal - **Maximum renewal period:** 7 days - **Automatic renewal:** Tickets are automatically renewed approximately every 7 hours - **Ticket reset:** New tickets are generated when you log in or unlock your console, resetting the 7-day renewal window > [!Important] > After 7 days of continuous use, you will need to log out and log back in (or unlock your screen if it's locked) to generate a new authentication ticket. This prevents loss of access to mounted storage during long-running sessions. ## Storage ### Storage locations There are two primary locations for storing files: 1. **PI datashare (`/cifs/<pi_last_name>`):** Main storage location for research data and files 2. **Home directory (`/home/UWO/<username>`):** For small files, configuration files, or Python environments ### Important storage guidelines: - Home directories should not exceed 20GB in size - All files stored outside of PI datashares or home directories will be deleted when the virtual machine shuts down - The system should only be used for research-related data and files, not as a primary backup - Access project data via `/cifs`, **not** `/srv` - `/cifs` folders are **automounted**, so they will not appear until accessed ### Monitoring storage usage - To check your home directory size: `du -h /home/UWO/<username>` - You can also use the command `gdu` to navigate/clean your home folder for unused files. ## Access shared data ### Accessing datashares Project datashares are automatically mounted and accessible at `/cifs/<pi_last_name>`. The folders are automounted, so they will not appear in directory listings until you access them directly. To access your PI's datashare: 1. Navigate directly to: `/cifs/<pi_last_name>` 2. The folder will be automatically mounted when accessed 3. Files remain accessible as long as your authentication ticket is valid ### Local mounting (accessing storage from your computer) You can mount your PI's datashare on your local machine when connected to Western networks (wired, uwosecure-v2 wifi, or eduroam). #### Mac OS: 1. Use 'Connect to Server...' under the 'Go' menu 2. Enter: `cifs://bmisrv.robarts.ca/<pi_last_name>_data$` or `smb://bmisrv.robarts.ca/<PI_Last_Name>_data$` 3. Log in with username: `<westernid>@uwo.ca` #### Windows: 1. Navigate to: `\\bmisrv.robarts.ca\<pi_last_name>_data$\` 2. Log in with username: `<westernid>@uwo.ca` #### Linux: 1. Install cifs-utils: `sudo apt install cifs-utils` 2. Create mount point: `sudo mkdir -p /cifs/<pi_last_name>` 3. Mount: `sudo mount -t cifs -o <username@uwo> //bmisrv.robarts.ca/<pi_last_name>_data$ /cifs/<pi_last_name>` > [!Note] > You'll need to repeat step 3 after rebooting, or add a line to your `/etc/fstab` file. **Off-campus access:** Requires Western VPN (Pulse Secure) or VDI access. ### External systems **Digital Alliance integration:** Use `setup_sshfs_alias` from your home directory and follow the prompts to mount Digital Alliance systems (like Graham) on the VDI. You must have an active Digital Alliance account. After setup, use `graham` to mount and `unmount_graham` to unmount. > [!Important] > **If you're using sshfs to mount Digital Alliance storage:** > Re-run the `setup_sshfs_alias` script to update your aliases after the system upgrade. > Mounting now runs in the foreground (to support Duo 2FA), so you must keep the terminal window open after running the mount alias (e.g., `graham`) ### Managing datashare access permissions Access to shared PI data (whether your own PI's data or collaborating with other PIs on projects) is managed by the IT Help Desk, not CBS support staff. CBS support staff do not have access to modify datashare permissions. **To request access to datashares:** - Submit a ticket in the Jira system: http://servicedesk.schulich.uwo.ca/ - Alternatively, contact support-cbs-server@uwo.ca and ask them to submit a ticket on your behalf - What to include in your request: - Your UWO username - The PI datashare you need access to (`/cifs/<pi_last_name>`) - Brief explanation of the collaboration or project need ## Available software ### Environment modules Most software is installed in `/srv/software` and managed through environment modules. Many software packages have been updated with the system upgrade.Basic module commands: List available modules: `module avail` Load a module: `module load software` Load specific version: `module load software/1.0.0` Show loaded modules: ‍‍`module list` Unload all modules: `module purge` Get help: `module`