You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Current »

What is a Science Cloud Core Service?

A core service is a foundational, shared capability provided by the Science Cloud that addresses common, cross-disciplinary needs across multiple projects and scientific disciplines. By centralizing such a service, the Science Cloud eliminates redundant setup efforts by individual projects, thereby reducing overall costs, streamlining operations, and enhancing efficiency, security, and compliance for all tenants.

Current Core Services

  • Base Infrastructure as Code to Manage the Science Cloud
    • Basic Terraform scripts and operations to operate, maintain, and secure commercial cloud accounts.
  • User Authentication and Access (STAR/Keycloak)

    • The Science and Technology Authorization Realm (STAR), built on Keycloak, provides centralized authentication and authorization for all Science Cloud applications and project/organization realms. This is a fundamental requirement for any project needing secure user access
  • Gitlab: Code Repository and Infrastructure as Code (IaC)
    • The Science Cloud facilitates a code repository and configuration management using GitLab as the primary platform for Infrastructure as Code (IaC). This ensures version control, change control, automated validation, and audit trails across the entire system lifecycle.
  • Research Platform
    • Operates as a part of a unified platform comprising three key products:
        • Research Platform: A multi-tenant Jupyter Notebook workspace for science.
        • RPAdmin: Console to manage the platform, offering self-service capabilities for projects and operational tools for the platform team.
        • AI Registry & Gateway: A governed catalog and secure front door for AI building blocks.
  • Mattermost
    • An open-source, Slack-like team messaging and collaboration application operating within the Science Cloud, providing persistent team messaging, file sharing, and collaboration workflows 
  • GitHub Copilot
    • Through Microsoft GitHub, GitHub Copilot is an commercial AI assistant integrated into development environments that helps developers by writing, explaining, and suggesting code. It can instantly generate functions from natural language comments and supports multiple programming languages and Integrated Development Environments (IDEs) to enhance developer productivity.

Roles and Responsbilities

The Science Cloud is responsible for the operations, maintenance, and security of the Science Cloud's core services. This includes developing and managing a comprehensive, efficient cloud-based infrastructure and science analytics platforms for the Science Mission Directorate (SMD).

For services built upon open-source software, such as GitLab, SCIP actively leverage the open-source community for updates and new features. When the team develops and provides services directly, SCIP handle all updates, security patches, and new feature requests internally. This also encompasses the creation and configuration management of commercial cloud accounts, where we employ a dev/ops approach to rapidly provision accounts and ensure consistency with security compliance while maintaining flexibility for project needs.

Financially, most core services, including the foundational infrastructure and GitLab, do not require direct project funding. However, certain services and resources do necessitate project funding due to their consumption of compute and storage. These include the Research Platform, Infrastructure as Code (IaC) runners on GitLab, GitHub Copilot, and any other service that requires dedicated compute and storage resources. The SCIP team consistently monitors the financial impact of all core services. If the cost impact becomes substantial or shows significant growth, SCIP will assess the potential for implementing further chargebacks to ensure sustainable operations and cost efficiency. 

Criteria for a New Core Service

The Science Cloud Infrastructure Project (SCIP) considers several criteria when determining if a service should be a core service run within its infrastructure:

  1. Commonality and Core Functions: Services that address requirements common across multiple divisions or have "core" functions are strong candidates for shared services.
  2. Duplication and Cost Reduction: A primary goal is to reduce duplication of effort and costs. Services that can achieve this by supporting multiple divisions are prioritized.
  3. Support for Multiple Divisions: Services that can effectively support two to three or more divisions indicate a broad applicability that warrants being a core service.
  4. Broader Customer Base: Services that would expand the customer base for the Science Cloud without significantly increasing infrastructure costs are also considered.
  5. Potential for Cost Recovery: The potential for cost recovery could influence which services are designated as core.
  6. Operational Impact: The impact to operations and maintenance level of effort and cost.


  • No labels