Skip to content

Latest commit

 

History

History
47 lines (32 loc) · 2.82 KB

README.md

File metadata and controls

47 lines (32 loc) · 2.82 KB

Cresco is a free and open source edge computing framework.

Quick Start

Cresco Agent Network

Cresco agents, through their Cresco-Agent-Controller-Plugin, arrange themselves into a hierarchy of a global, with a single controller, regions, each with a single regional controller, and a set of agents inside a region. The following diagram illustrates this hierarchy:

  • This topology allows for distributed control, meaning that an agent controls its plugins, a region controls its agents and the global controls the regions over which it is in charge.

Getting Started : Native

  • Getting started with Cresco is fairly simple, with steps as follows:
  1. Download/update/confirm a Java Runtime Environment (JRE, Java Runtime) 1.8 or greater.
  2. Download the latest agent build
  3. Modify the configuration files for the agent and plugins (please refer to the wiki for configuration information)
  4. Run the agent with java -Dis_global=true -jar agent-<version>.jar

Using the client library:

Do client lib things here

Cresco Components

Cresco Framework

  • Agent: The main runtime which manages the loading of the Core, Library, Controller, and underlying OSGi support components.
  • Core: Core component loaded by the Cresco Agent to control logging and updates.
  • Library: Library functions used by all Cresco plugins, including the controller.
  • Controller: The Controller, as the name suggest, manages all Cresco functions. Optional Repository, SysInfo, and Dashboard components are included with the Controller plugin.
  • Repository: Repository plugin used to store, report, and deploy Cresco Plugins.
  • SysInfo: Plugin used to gather information about the operating environment.
  • Dashboard: The Dashboard is a web-based user interface for a Cresco environment.

Cresco Development

Cresco Framework Example Plugins

  • Cresco-Skeleton-Plugin: (Old Don't use) This project exists as a basic starting point for building a custom Cresco plugin.

Further Reading

  • For a more in-depth explanation of Cresco, you can read one of the author's dissertation.

Why the name Cresco?

  • Proto-Indo-European *ker ("to grow").
  • Old Armenian սերիմ (serim, "be born") and սերեմ (serem, "bring forth")
  • Latin creare ("become visible, multiply, augment")