CSEP Gitlab

From SCECpedia
Jump to navigationJump to search

SCEC's CSEP project is coordinating an earthquake and ground motion forecasting project with national and international partners. Project members want to use the Gitlab system to support the development of the CSEP open-source scientific software development community, the code development, distributed version control, and automated software testing environment. Specifications describing the expected system requirements and preliminary data creation and transfer estimates are below.

CSEP CI/CD System Overview Diagram

"Gitlab Server and Runner"

Data Usage Estimates

Estimates for data usages are based on combining the two use cases for the GitLab repository (1) Code storage and (2) Storage of Large data files and experiment results. These estimates are based on data from the current CSEP project, such as current project members, current storage in current and old repositories, and rough estimates of expected data usage for past and future experiments.

  1. amount generated internally by the system per year, most of which can be left on AWS storage: 5TB/year
  2. amount of data transferred into AWS: 1TB/year
  3. amount of data transferred out of AWS: 2.5TB/year

Data Estimates Breakdown

Project Info:
CSEP Project Members: 20
CSEP1 Repo Size (in Gb): 1.2
Storage per experiment (in Gb): 10

(1) Code Storage Total data stored: 25 Gb (High-end estimate including models, codes and benchmark data sets)
Data transferred: [50-500] Gb

(2) Data/Catalog Storage Total Storage: 250 Gb
Data transferred: [100 Gb - 1 Tb]

(3) Experiment Results Total Storage: 4 Tb
Data transferred: [100 Gb - 1 Tb]

Overall Estimates: Total stored: ~4.5 Tb
Transferred: [250 Gb - 2.5 Tb]

AWS Estimation Webpage

Gitlab Basic System Requirements

  • Recent Linux Distro (Ubuntu,Centos...)
  • Generate SSH keys
  • Configure SMTP Server
  • 8GB RAM is the recommended minimum memory size for all installations and supports up to 100 users. 16GB RAM supports up to 500 users
  • Databases: PostgreSQL
  • Redis/Sidekiq: stores all user sessions and background task queue processes the background jobs with a multithreaded process
  • Prometheus and it’s exporters
  • Avoid installing GitLab Runner on the same machine where Gitlab is installed.
  • GitLab needs JavaScript enabled in browsers to support features such as Issue Boards.

CSEP Computer and Storage Inventory

Overview and Gitlab Installation

Related Entries