GithubHelp home page GithubHelp logo

isabella232 / ossia Goto Github PK

View Code? Open in Web Editor NEW

This project forked from adobe/ossia

0.0 0.0 0.0 3.29 MB

OpenStack Simple Inventory API, a new way to represent OpenStack Resources

License: Apache License 2.0

Dockerfile 0.44% Makefile 1.10% Go 72.41% HTML 1.51% Python 18.66% Shell 5.89%

ossia's Introduction

OSSIA - OpenStack Simple Inventory API

OSSIA is the new way to represent OpenStack Resources. It's a RESTFul API which provides another view of all OpenStack Resources. Information from OpenStack API's is combined, analyzed and represented in a human-readable way so it's clear and easy to understand the current state of the OpenStack Deployment. The tool also helps to make a prediction for the scaling based on current deployment utilization and oversubscription ratio. OSSIA Supports multiple deployments. Plus there is is no Backend/DB/Service Dependencies. Capacity Planning made easy!

Features

  • RESTFul API. cURL or Web UI can be used to retrieve results
  • Integrated Swagger UI for the API Reference and real-time examples
  • Time based updates for the deployment
  • Updates by request (via API)
  • OpenStack Aggregates support
  • Let's Encrypt Support
  • Daily Usage Snapshots

API Reference

OSSIA has embedded Swagger UI Feature.

API Reference

Update Deployment

QuickStart

MAKEFILE Options

$ make
build                          Build Linux binary (amd64)
package                        Build Debian & RedHat packages (amd64)
run                            Start OSSIA
clean                          Clean build arftifacts
$

Packaging

Docker is required for OSSIA Packaging. To build RPM and DEB packages:

$ make package

... OUTPUT OMMITTED ...
-------------------------

Build Plan:
- version: 1.0.0
- commit: 68e6ce5
- branch: master
- platform: linux
- arch: amd64
- nightly? false
- race enabled? false

Starting build...
Building 'build/ossia'...

-------------------------

Packaging...
Creating package filesystem at root: /tmp/ossia-build.dG2NDr/linux/amd64/ossia-1.0.0-1
Copying Scripts and Sample configuration to build directory
Packaging directory '/tmp/ossia-build.dG2NDr/linux/amd64/ossia-1.0.0-1' as 'deb'...
MD5(build/ossia_1.0.0-1_amd64.deb) = 5d3f427a519ef54f7a1e864d1854ab77
Packaging directory '/tmp/ossia-build.dG2NDr/linux/amd64/ossia-1.0.0-1' as 'rpm'...
MD5(build/ossia-1.0.0-1.x86_64.rpm) = b00506c20fa46284bb3b767f4eb5d449

Done!

deb and rpm packages will be generated in build directory.

Configuration

Main configuration file is in etc/conf.yml. Simple configuration example:

---
listen_on: '127.0.0.1:8000'
auto_tls:
  enabled: false
  domain: "ossia.company.com"
  admin_email: "[email protected]"
poll_interval:
  images: 24h
  flavors: 1h
  projects: 24h
  instances: 30m
  hypervisors: 1h
database: "db/inventory.db"
debug: False
logfile: "log/ossia.log"
deployments:
  us-west-1:
    os_auth_url: 'http://openstack.us-west-1.domain.com:5000/v3'
    os_project_name: 'admin'
    os_username: 'admin'
    os_password: 'admin_password'

TODO's

  • Write Tests
  • Write OSSIA UI

Contributing

Contributions are welcomed! Read the Contributing Guide for more information.

Licensing

This project is licensed under the Apache V2 License. See LICENSE for more information.

ossia's People

Contributors

mmogylenko avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.