Synaps

Project codename:

Synaps

Note: Synaps is not misspelled but intended to save confusion with Apache Synapse project.

Summary:

Synaps is a cloud monitoring system that provides Web Service API.

Detailed Description

Synaps is an AWS CloudWatch compatible cloud monitoring system that collects metric data, provides statistics data, monitors and notifies based on user defined alarms.

Synaps is linear scalable so that it might be suitable for deploying on the virtual machines as a SaaS(software as a service).

Currently, no other fully CloudWatch implementation exists for OpenStack.

Basic roadmap for the project

History
 * 2012.03. Project initialized on the Nova codebase.
 * 2012.04. Partially covers AWS CloudWatch API. (collecting metrics, providing statistics)
 * 2012.05. Default metric collecting agent on the compute node side is implemented.
 * 2012.06. Alarm related features are added.
 * 2012.08. Fully covers AWS CloudWatch API.
 * 2012.09. Alarm Action features are added.

Backlogs
 * open source it.
 * implement Synaps' own REST API and SDK library.
 * Rebase Synaps with Openstack Common.
 * integrate with Heat.

Location of project source code

http://github.com/spcs/synaps

Programming language, required technology dependencies


 * Code base of Synaps is WSGI module of OpenStack Nova.
 * Synaps is mostly written in Python 2 and a little bit of Java for Storm topology.
 * Synaps uses Twitter Storm for real-time distributed stream processing and Cassandra to achieve linear scalability.
 * Synaps uses RabbitMQ for asynchronous processing.
 * Synaps uses Python Data Analysis Library(pandas, http://pandas.pydata.org) for time-series data processing.
 * Synaps uses ZeroMQ and SMTP for notification.
 * http://spcs.github.com/synaps - Synaps architecture is described.

'''Is project currently open sourced? What license?'''

Apache License, Version 2.0

Level of maturity of software and team

Implemented all of 11 AWS CloudWatch actions. Those are in acceptance test phase by Samsung SDS.

Proposed project technical lead and qualifications

TBD

Other project developers and qualifications

TBD

Infrastructure requirements (testing, etc)

We have integrated with OpenStack's Nova.


 * Single linux machine is enough for local development and unit test (more than 6GB ram).
 * For service environment, it requires multiple storm nodes, cassandra nodes, WSGI web servers and message queues. Deploying them on the Nova virtual machine instances is highly recommended.

Have all current contributors agreed to the OpenStack CLA?

To Be Done

Status:

In review to open it by Samsung SDS internally.