Firewalled Environment Storage Overview: Difference between revisions

From UCSC Genomics Institute Computing Infrastructure Information

 
(31 intermediate revisions by the same user not shown)
Line 10: Line 10:
! /private/home
! /private/home
! /private/groups
! /private/groups
! /private/warm-archive
|-
|-
| style="font-weight:bold; text-align:left;" | Default Soft Quota
| style="font-weight:bold; text-align:left;" | Default Quota
| 30 GB
| 100 GB
| 15 TB
| 15 TB
|-
| 50 TB
| style="font-weight:bold; text-align:left;" | Default Hard Quota
| 31 GB
| 16 TB
|-
|-
| style="font-weight:bold; text-align:left;" | Total Capacity
| style="font-weight:bold; text-align:left;" | Total Capacity
| 19 TB
| 19 TB
| 500 TB
| 1.7 PB
| 4.6 PB
|- style="text-align:left;"
|- style="text-align:left;"
| style="font-weight:bold;" | Access Speed
| style="font-weight:bold;" | Access Speed
| Slow - Moderate (Spinning Disk)
| Very Fast (NVMe Flash Media)
| Very Fast (NVMe Flash Media)
| Very Fast (NVMe Flash Media, Distributed Filesystem)
| Slower (Spinning Disks)
|- style="text-align:left;"
|- style="text-align:left;"
| style="font-weight:bold;" | Intended Use
| style="font-weight:bold;" | Intended Use
| This space should be used for login scripts, small bits of code or software repos, etc.  No large data should be stored here.
| This space should be used for login scripts, small bits of code or software repos, etc.  No large data should be stored here.
| This space should be used for large computational/shared data, large software installations and the like.
| This space should be used for large computational/shared (hot) data, large software installations and the like.
| Archival Use Only.  Not meant for active cluster computation.  Warm/Cold data only.
|}
|}


'''Home Directories (/private/home/username)'''
'''Home Directories (/private/home/username)'''


Your home directory will be located as "/private/home/username" and has a 30GB soft quota and a 31GB hard quota.  Your home directory is meant for small scripts and login data, or a git repo.  Please do not try to store large data there or computer on large jobs using data in your home directory.
Your home directory will be located as "/private/home/username" and has a 100GB quota.  Your home directory is meant for small scripts and login data, or a git repo.  Please do not try to store large data there or computer on large jobs using data in your home directory.


'''Groups Directories (/private/group/groupname'''
'''Groups Directories (/private/groups/labname)'''


The group storage directories are created per PI, and each group directory has a default 15TB soft quota and 16TB hard quota.  For example, if David Haussler is the PI that you report to directly, then the directory would exist as /private/groups/hausslerlab.  Request access to that group directory and you will then be able to write to it.  Each of those group directories are shared by the lab it belongs to, so you must be wary of everyone's data usage and share the 15TB available per group accordingly.
The group storage directories are created per PI, and each group directory has a default 15TB hard quota.  For example, if David Haussler is the PI that you report to directly, then the directory would exist as /private/groups/hausslerlab.  Request access to that group directory and you will then be able to write to it.  Each of those group directories are shared by the lab it belongs to, so you must be wary of everyone's data usage and share the 15TB available per group accordingly.


On the compute servers you can check your group's current quota usage by using the '/usr/bin/viewquota' command. You can only check the quota of a group you are part of (you would be a member of the UNIX group of the same name). If you wanted to check the quota usage of /private/groups/hausslerlab for example, you would do:
The groups storage directories have a file in the root of them that contains current quota usage info. These files (.quota_info) are updated once an hour. For example:


  $ viewquota hausslerlab
  cat /private/groups/corbettlab/.quota_info
==================================================
  CephFS Storage Quota Report: corbettlab
==================================================
Filesystem Tier: CephFS
Space Used:      72T
Total Quota:    92T
Available:      21T
   
   
  Project quota on /export (/dev/mapper/export)
  Last Updated:    2026-05-30 09:22:31 PDT
  Project ID   Used   Soft  Hard Warn/Grace 
==================================================
  ---------- ---------------------------------
 
  hausslerlab  1.8T    15T    16T 00 [------]
Every lab directory has a '''.quota_info''' file in its root.
 
'''Archive Directories (/private/warm-archive/labname)'''
 
The archive storage directories are created per PI '''by request''', and each group directory has a default 50TB hard quota.  For example, if David Haussler is the PI that you report to directly, then the directory would exist as /private/warm-archive/hausslerlab.
 
The archive storage directories have a file in the root of them that contains current quota usage info.  These files (.quota_info) are updated once an hour.  For example:
 
cat /private/warm-archive/corbettlab/.quota_info
==================================================
  ZFS Storage Quota Report: corbettlab
==================================================
  Project ID:    105
Space Used:    148G
Total Quota:    50T
Available:      50T
  Last Updated:  2026-05-30 08:45:57 PDT
==================================================
 
Every lab directory has a '''.quota_info''' file in its root.
 
== Storage Quota Alerting ==
 
If you and/or folks in your lab would like an automated alert when the '''/private/groups/labname''' quota is getting to a certain percentage of fullness, we can set that up for you and others in your lab.  Just email '''cluster-admin@soe.ucsc.edu''' with the following information:
 
  1: Which directory you would like to watch quotas on (i.e. /private/groups/somelab)
2: What % full you would like an email alert at
  3: What email addresses you want on the alert list


After setup, our alerting system will alert folks on that email list ''every 4 hours'' until the quota in question is reduced to an amount under the alerting % threshold you asked for.  So it is a bit noisy, but will force folks to delete data in order to stop the alerts.  When the system notices that the quota usage has decreased to under the alert threshold, you will receive one final email with an "OK" notification that things are OK now.


'''Soft Versus Hard Quotas'''
== /data/scratch Space on the Servers ==


We use soft and hard quotas for disk space.
Each server will generally have a local /data/scratch filesystem that you can use to store temporary files.  '''BE ADVISED''' that /data/scratch is not backed up, and the data there could disappear in the event of a disk failure or anything else.  Do not store important data there.  If it is important, it should be moved somewhere else very soon after creation.


Once you exceed a directory's soft quota, a one-week countdown timer starts. When that timer runs out, you will no longer be able to create new files or write more data in that directory.  You can reset the countdown timer by dropping down to under the soft quota limit.
== Backups ==


You will not be permitted to exceed a directory's hard quota at all. Any attempt to try will produce an error; the precise error will depend on how your software responds to running out of disk space.
/private/groups is backed up monthly on the first of the month (which usually takes a week to complete). Please note that the following directories in the tree '''WILL NOT''' be backed up:


When quotas are first applied to a directory, or are reduced, it is possible to end up with more data or files in the directory than the quota allows forThis outcome does not trigger deletion of any existing data, but will prevent creation of new data or files.
tmp/
temp/
TMP/
TEMP/
cache/
.cache/
scratch/
  *.tmp/


== /scratch Space on the Servers ==
So if you have data that you know isn't important and should be excluded from the backups, put them in a directory suffixed with ".tmp".  Such as this example:


Each server will generally have a local /scratch filesystem that you can use to store temporary files. '''BE ADVISED''' that /scratch is not backed up, and the data there could disappear in the event of a disk failure or anything else.  Do not store important data there.  If it is important, it should be moved somewhere else very soon after creation.
/private/groups/clusteradmin/mybams.tmp/

Latest revision as of 10:43, 30 May 2026

Storage

Our servers mount two types of shared storage; home directories and group storage directories. These home directories will mount over the network to all shared compute servers and the phoenix cluster, so any server you login to will have these filesystems available:

Filesystem Specifications

Filesystem
/private/home /private/groups /private/warm-archive
Default Quota 100 GB 15 TB 50 TB
Total Capacity 19 TB 1.7 PB 4.6 PB
Access Speed Very Fast (NVMe Flash Media) Very Fast (NVMe Flash Media, Distributed Filesystem) Slower (Spinning Disks)
Intended Use This space should be used for login scripts, small bits of code or software repos, etc. No large data should be stored here. This space should be used for large computational/shared (hot) data, large software installations and the like. Archival Use Only. Not meant for active cluster computation. Warm/Cold data only.

Home Directories (/private/home/username)

Your home directory will be located as "/private/home/username" and has a 100GB quota. Your home directory is meant for small scripts and login data, or a git repo. Please do not try to store large data there or computer on large jobs using data in your home directory.

Groups Directories (/private/groups/labname)

The group storage directories are created per PI, and each group directory has a default 15TB hard quota. For example, if David Haussler is the PI that you report to directly, then the directory would exist as /private/groups/hausslerlab. Request access to that group directory and you will then be able to write to it. Each of those group directories are shared by the lab it belongs to, so you must be wary of everyone's data usage and share the 15TB available per group accordingly.

The groups storage directories have a file in the root of them that contains current quota usage info. These files (.quota_info) are updated once an hour. For example:

cat /private/groups/corbettlab/.quota_info

==================================================
 CephFS Storage Quota Report: corbettlab
==================================================
Filesystem Tier: CephFS
Space Used:      72T
Total Quota:     92T
Available:       21T

Last Updated:    2026-05-30 09:22:31 PDT
==================================================

Every lab directory has a .quota_info file in its root.

Archive Directories (/private/warm-archive/labname)

The archive storage directories are created per PI by request, and each group directory has a default 50TB hard quota. For example, if David Haussler is the PI that you report to directly, then the directory would exist as /private/warm-archive/hausslerlab.

The archive storage directories have a file in the root of them that contains current quota usage info. These files (.quota_info) are updated once an hour. For example:

cat /private/warm-archive/corbettlab/.quota_info

==================================================
 ZFS Storage Quota Report: corbettlab
==================================================
Project ID:     105
Space Used:     148G
Total Quota:    50T
Available:      50T

Last Updated:   2026-05-30 08:45:57 PDT
==================================================

Every lab directory has a .quota_info file in its root.

Storage Quota Alerting

If you and/or folks in your lab would like an automated alert when the /private/groups/labname quota is getting to a certain percentage of fullness, we can set that up for you and others in your lab. Just email cluster-admin@soe.ucsc.edu with the following information:

1: Which directory you would like to watch quotas on (i.e. /private/groups/somelab)
2: What % full you would like an email alert at
3: What email addresses you want on the alert list

After setup, our alerting system will alert folks on that email list every 4 hours until the quota in question is reduced to an amount under the alerting % threshold you asked for. So it is a bit noisy, but will force folks to delete data in order to stop the alerts. When the system notices that the quota usage has decreased to under the alert threshold, you will receive one final email with an "OK" notification that things are OK now.

/data/scratch Space on the Servers

Each server will generally have a local /data/scratch filesystem that you can use to store temporary files. BE ADVISED that /data/scratch is not backed up, and the data there could disappear in the event of a disk failure or anything else. Do not store important data there. If it is important, it should be moved somewhere else very soon after creation.

Backups

/private/groups is backed up monthly on the first of the month (which usually takes a week to complete). Please note that the following directories in the tree WILL NOT be backed up:

tmp/
temp/
TMP/
TEMP/
cache/
.cache/
scratch/
*.tmp/

So if you have data that you know isn't important and should be excluded from the backups, put them in a directory suffixed with ".tmp". Such as this example:

/private/groups/clusteradmin/mybams.tmp/