Moment-carc configuration

From SCECpedia
Jump to navigationJump to search

This page documents the configuration requirements for moment-carc, the CyberShake production database hosted by CARC.

Functionality

moment-carc should support the following:

  • Relational database to host CyberShake input data, run status, run metadata, and store commonly used intensity measures and hazard curves.
  • Different stages of the workflow are able to access this database, including at workflow creation, during some jobs, and data product creation.

Hardware

  • 2 TB of local storage for the database (SSD, if possible). Current database size on moment is ~1.5 TB, but some of that should be migrated to focal, as the intent is that focal serves as the access point for completed studies.
  • At least 64 GB RAM (current moment has 128 GB)

Software (installed by CARC)

  • Latest production version of MariaDB (10.6.7 as of 4/27/22)

Software (installed by SCEC)

Database configuration

We would like to use the following settings in the mariadb-server.cnf file:

innodb_file_per_table = 1
innodb_buffer_pool_size = 112G (should be 16 GB less than the available system memory)
innodb_buffer_pool_instances = 8
query_cache_type = 0
tmp_table_size = 32M
max_heap_table_size = 32M
innodb_log_file_size = 2G

In terms of users, The functionality we want is read-only access for the user 'cybershk_ro' who can authenticate from anywhere, and read/write access for the user 'cybershk', from anywhere. In our current setup, entries for these users in the USER_PRIVILEGES table are:

GRANTEE TABLE_CATALOG PRIVILEGE_TYPE IS_GRANTABLE
'cybershk'@'localhost' def INDEX NO
'cybershk'@'localhost' def CREATE TABLESPACE NO
'cybershk'@'localhost' def ALTER NO
'cybershk'@'localhost' def DELETE HISTORY NO
'cybershk'@'localhost' def SHOW DATABASES NO
'cybershk'@'localhost' def SUPER NO
'cybershk'@'localhost' def CREATE TEMPORARY TABLES NO
'cybershk'@'localhost' def LOCK TABLES NO
'cybershk'@'localhost' def SELECT NO
'cybershk'@'localhost' def EXECUTE NO
'cybershk'@'localhost' def INSERT NO
'cybershk'@'localhost' def REPLICATION SLAVE NO
'cybershk'@'localhost' def UPDATE NO
'cybershk'@'localhost' def REPLICATION CLIENT NO
'cybershk'@'localhost' def DELETE NO
'cybershk'@'localhost' def CREATE VIEW NO
'cybershk'@'localhost' def CREATE NO
'cybershk'@'localhost' def SHOW VIEW NO
'cybershk'@'localhost' def DROP NO
'cybershk'@'localhost' def CREATE ROUTINE NO
'cybershk'@'localhost' def RELOAD NO
'cybershk'@'localhost' def ALTER ROUTINE NO
'cybershk'@'localhost' def SHUTDOWN NO
'cybershk'@'localhost' def CREATE USER NO
'cybershk'@'localhost' def PROCESS NO
'cybershk'@'localhost' def EVENT NO
'cybershk'@'localhost' def FILE NO
'cybershk'@'localhost' def TRIGGER NO
'cybershk'@'localhost' def REFERENCES NO
'cybershk'@'%.usc.edu' def USAGE NO
'cybershk'@'%' def SHOW DATABASES NO
'cybershk'@'%' def DELETE HISTORY NO
'cybershk_ro'@'localhost' def USAGE NO
'cybershk_ro'@'%' def USAGE NO

Network configuration

To support access to the MariaDB server, we would like to enable access to the MySQL port (3306 by default) for external users.

For SSH access, we would like support for logging in from endeavour.