Skip to content
@Apollo-Core

Apollo-Core

Apollo-Core

Welcome to the documentation of the Apollo-Core Github organization.


ApolloWf Project

The Apollo-Core organization is part of the ApolloWf project of the distributed and parallel systems group of the University of Innsbruck, Austria. The purpose of this open-source project is to enable the execution of complex applications using serverless functions which are distributed across cloud, edge, and IoT resources. At the core of this project is the Apollo Runtime System which orchestrates and optimizes the execution of the application. This GitHub organization (Apollo-Core) contains the source code of the fundamental parts of this runtime system.


Getting Started

  • A short introduction of Apollo's purpose and its focus user group is provided in a Youtube video.

  • A brief guide to quickly set up a running orchestration is provided in the EE-Demo repository and in a Youtube video.

  • A hands-on tutorial demonstrating the tooling and the steps necessary to orchestrate applications with Apollo is provided in the Tutorial repository and in a series of Youtube videos.


Issues and Feature Requests

If you find issues/bugs or have an idea or need for certain extensions of the framework, please formulate an issue in the repository which seems most appropriate and/or reach our directly by writing an email to [email protected].


Citation

Apollo's system and orchestration models have been published in [1] and [2]. If you find Apollo to be useful for your work, please consider citing [2].


Organization Overview

The Apollo-Core organization consists of 13 repositories:

  • EE-Core - main interfaces shared across the other repositories
  • EE-Guice - google guice modules used for dynamic dependency injection
  • EE-Model - graph-based system model used to represent the application and the available resources
  • EE-IO - definition of the input file format, parsers for the input files (AFCL among others) used to generate the system model
  • EE-Enactables - atomic units of execution such as serverless function triggers or control- and data flow constructs
  • SC-Core - interfaces for schedulers used during the orchestration
  • EE-Control - main components controlling the orchestration at runtime
  • EE-Visualization - (real-time) visualization of the system model throughout the orchestration
  • EE-Docker - execution of application functions in local Docker containers
  • EE-Deploy - infrastructure for deploying Apollo as an orchestration (web) service
  • EE-Demo - simple applications for demonstration purposes
  • IntegrationTests - integration tests used for the CI workflows
  • RepositoryConfiguration - style for the code format, code quality rules applied during the CI checks

Uses

Related Apollo Organizations


References

[1] Smirnov, F. S. et al. (2021). Apollo: Modular and distributed runtime system for serverless function compositions on cloud, edge, and iot resources. Proceedings of the 1st Workshop on High Performance Serverless Computing, 5-8.

[2] Smirnov, F. S. et al. (2021). Apollo: Towards an efficient distributed orchestration of serverless function compositions in the cloud-edge continuum. Proceedings of the 14th IEEE/ACM International Conference on Utility and Cloud Computing, 1-10.

Pinned Loading

  1. EE-Control EE-Control Public

    Project for the classes implementing the control of the enactment process of the Apollo-Core EE.

    Java 1

  2. EE-Demo EE-Demo Public

    Project used for a demo of the enactment, as well as for the integration tests of the Apollo-Core EE.

    4

  3. Tutorial Tutorial Public

    Repository containing a series of tutorials detailing the usage of Apollo for the orchestration of applications.

    Python 1 7

Repositories

Showing 10 of 16 repositories
  • EE-Demo Public

    Project used for a demo of the enactment, as well as for the integration tests of the Apollo-Core EE.

    Apollo-Core/EE-Demo’s past year of commit activity
    0 4 0 0 Updated Dec 4, 2023
  • workflowscommunity.github.io Public Forked from workflowscommunity/workflowscommunity.github.io

    The goal of the Workflows Community Initiative (WCI) is to bring the workflows community together (users, developers, researchers, and facilities) to provide community resources and capabilities to enable scientists and workflow systems developers to discover software products, related efforts, events, technical reports, etc. and engage in commu…

    Apollo-Core/workflowscommunity.github.io’s past year of commit activity
    CSS 0 GPL-3.0 38 0 0 Updated Nov 15, 2023
  • EE-Enactables Public

    Repository defining the different types of Enactables usable for the EE of the Apollo-Core platform.

    Apollo-Core/EE-Enactables’s past year of commit activity
    Java 0 2 1 0 Updated Jul 26, 2023
  • EE-Deploy Public

    Repo for the code describing Apollo's production deployment.

    Apollo-Core/EE-Deploy’s past year of commit activity
    Java 0 1 0 0 Updated Jul 25, 2022
  • EE-Control Public

    Project for the classes implementing the control of the enactment process of the Apollo-Core EE.

    Apollo-Core/EE-Control’s past year of commit activity
    Java 0 1 0 0 Updated Jul 25, 2022
  • IntegrationTests Public

    Repository with the logic for the execution of the integration tests done as part of the CI pipeline of the projects of Apollo Core.

    Apollo-Core/IntegrationTests’s past year of commit activity
    Java 0 1 0 0 Updated Jul 19, 2022
  • .github Public
    Apollo-Core/.github’s past year of commit activity
    0 0 0 0 Updated Jun 14, 2022
  • EE-Visualization Public

    Repository for the visualization components of the Apollo-Core EE.

    Apollo-Core/EE-Visualization’s past year of commit activity
    Java 0 1 0 0 Updated Mar 2, 2022
  • EE-Docker Public

    Repository for the Docker manager Apollo uses for the local execution of functions.

    Apollo-Core/EE-Docker’s past year of commit activity
    Java 0 0 0 0 Updated Mar 2, 2022
  • SC-Core Public

    The core repository for the Apollo Core scheduler.

    Apollo-Core/SC-Core’s past year of commit activity
    Java 0 3 0 0 Updated Mar 2, 2022

Top languages

Loading…

Most used topics

Loading…