Giter Site home page Giter Site logo

promise's Introduction

Promise

Prerequisites

Make sure that scheduler_driver is filter_scheduler and scheduler_defualt_filters has AggregateInstanceExtraSpecsFilter in nova.conf.

  • packages This needs python-pbr packages for install.

Install

Setup this repository and install depending packages.

# clone this repository
$ git clone https://github.com/muroi/promise
$ cd promise

# install promise command
$ python setup.py build
$ python setup.py install

# install depending packages
$ pip install -r requirements.txt

How to use

If you want to see the details, type promise help or promise help <subcommand>.

  • Reservation

Make a reservation of cloud instances. This command create a flavor and a host-aggregate and assignes hosts that can have enough capacity for the reservation with the aggregate.

$ promise reserve promise-flavor 1 1024 10 1 az1

+----------------+--------------------------------------+
| Field          | Value                                |
+----------------+--------------------------------------+
| reservation id | 18902602-2e2e-4bbc-804d-e1d1beb4bb06 |
| aggregate id   | 26                                   |
| hosts          | [u'promise-compute4']                |
+----------------+--------------------------------------+
  • Association

Associate the reservation with a project. After associating, the project can create new instances with the flavor of the reservation.

$ promise associate 18902602-2e2e-4bbc-804d-e1d1beb4bb06 f4552d1af2c8446abb2a90a29777c6f

+--------------------+--------------------------------------+
| Field              | Value                                |
+--------------------+--------------------------------------+
| reservation id     | 18902602-2e2e-4bbc-804d-e1d1beb4bb06 |
| associated project | f4552d1af2c8446abb2a90a29777c6f5     |
+--------------------+--------------------------------------+
  • Finish

Finish the use of reserved instances. This command deletes the association, instances created with the flavor, and the host aggregate.

$ promise finish 18902602-2e2e-4bbc-804d-e1d1beb4bb0

Details

Promise uses a flavor id as a reservation id in its context. Flavors and host aggregates have an extra specs, generated by flavor id to enable Nova to schedule valid hosts. When you want to check your reservation, use reservation id for searching flavor and aggregate.

promise's People

Contributors

muroi avatar

Stargazers

Pierre Riteau avatar

Watchers

 avatar  avatar  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.