Skip to content
Abhishek edited this page Feb 22, 2022 · 7 revisions

Ceres Onboarding

Welcome to the Ceres onboarding page!

The main objective of this page is to onboard new devs onto the Ceres project. To become a productive Ceres dev, you're going to want to go through the following steps.

Index

  1. Request Access to Metrics Environments
  2. Setup Your Dev Environment
  3. The Future
  4. References Links
  5. Useful Resources

JIRA

Our project is on this link. If you do not have access to the project. Feel free to ping on Teams Group.

Request Access to Metrics Environments

https://github.com/Rackspace-Segment-Support/ceres-docs-internal/blob/master/overview/Rackspace%20GCP%20Projects%20Standard.md#the-process-how-to-get-access-to-gcp-team-projects-for-new-team-member

System Requirements

  1. Docker - 19.03.0+
  2. Maven - 3.6.x
  3. OpenJDK - 14+

Setup Your Dev Environment

Check out and import the latest Ceres branch into the Intellij IDE and add a new run-time configuration with the following details.

  • Main class: com.rackspace.ceres.app.CeresApplication
  • profiles: downsample,ingest,query,dev
  • Runtime JRE: 14+

For more details refer README. It should walk you through the necessary steps

Note: While running the unit tests if you face any exception related to testcontainer one needs to pull the docker image "testcontainers/ryuk:0.3.0" and re-run the test.

$ docker pull testcontainers/ryuk:0.3.0

State of the Project

Ceres is a multi-tenant product that gives a platform for storing and serving time-series metrics generated by different monitoring systems. The service that we are building is CERES which provides a REST API for metrics ingestion and retrieval in the background, rollups are batch-processed offline so that queries for large time-periods are returned quickly. Data from ceres can be used to construct dashboards, generate reports, graphs or for any other use involving time-series data.

Software Development Lifecycle

Ceres uses GCP Cloud Builds for CI/CD pipeline to build the application and deploy it on the GCP platform.

The Future

This section is to discuss what needs to happen in Ceres.

  1. OpenTSDB API support for Grafana from the ceres application.
  2. Dynamics down sampling partition assignments for balancing out data storage.

References Links

For more detailed insights of the ceres application please refer to below links

  1. Ceres Design document
  2. UMB Ceres Ingester Repo
  3. Ceres Docs Internal
  4. Accessing Load Test Cluster
  5. Ceres GKE Services

Useful Resources

  1. Spring Boot Webflux
  2. Spring Reactive + Cassandra
  3. Spring Data Redis