Skip to main content

Simplified cloud orchestration tool for constructing virtual data centers

Project description

Nepho is a command-line tool that orchestrates the creation of complete working application stacks on virtual infrastructure. Initially targeting Amazon Web Services as well as Vagrant, Nepho abstracts datacenter creation, instance configuration, and application deployment into portable “cloudlets” that can be shared between developers and teams.

With Nepho, DevOps engineers can construct complete infrastructure-as-code bundles (“cloudlets”) that anyone can easily spin up with a single command. Nepho is in active development.

To learn more about the key concepts and vocabulary of Nepho, please view the structure of a cloudlet page.

Status

This project is new but being actively developed by the Cloud Engineering team within Harvard University Information Technology. We have released a stable 1.0 release that is being used by teams within Harvard. We welcome your feedback and contributions!

Currently there are two main code branches:

  • master - refactoring into a generic core, vendor-specific providers, and cloudlets for each individual application/service environment.

  • legacy - legacy code for constructing CloudFormation stacks using Jinja2 templated JSON files, slowly being merged into master.

Installation

Standard installation

View our getting started guide for complete instructions for setting up Nepho and its dependencies.

On Windows, you will need to install Python in addition to the other requirements, more detailed instructions for Windows users are coming soon.

Installation for developing Nepho

If you plan to develop on the Nepho codebase you will want to follow the instructions for developer setup using virtualenv.

Configuration

By default Nepho will create a hidden configuration directory in your home directory (~/.nepho) although you can specify a different location in the configuration file. Running the nepho scope command will create a configuration file for you (~/.nepho/config) if one does not exist, but in general you will not need to modify any of the default configuration options.

Nepho passed configuration information into providers (i.e. AWS, Vagrant) through a parameter management system. Each provider, cloudlet, and blueprint may specify required or optional parameters. You can view and manipulate parameters using the nepho parameter subcommand.

Examples of some common parameters (which use the CamelCase format):

  • AWSRegion: us-east-1

  • VagrantBackend: virtualbox

  • UpdatePackages: False

Usage

Consult the built-in documentation (nepho --help) for the latest information about commands and arguments. Nepho supports the following five subcommands:

  • nepho cloudlet - find, download, and manage cloudlets

  • nepho blueprint - list and view individual cloudlet deployment blueprints

  • nepho stack - create, manage, and destroy stacks built from blueprints

  • nepho parameter - list, view and modify parameter settings

  • nepho scope - set a cloudlet (and optionally blueprint) scope for future commands

Find out more about each subcommand by running nepho <subcommand> --help

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nepho-1.2.3.tar.gz (113.6 kB view details)

Uploaded Source

File details

Details for the file nepho-1.2.3.tar.gz.

File metadata

  • Download URL: nepho-1.2.3.tar.gz
  • Upload date:
  • Size: 113.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for nepho-1.2.3.tar.gz
Algorithm Hash digest
SHA256 849b6f43c5fa84c18091cc2f1e6c71e9ab278cc48b1a74ecd82554325f210593
MD5 4b83cf83b07cee24b581abf2824be87f
BLAKE2b-256 79040ce24af8762266822931cb102837f4448f5750618661edaa2b41efafa344

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page