Lease management for VM instances

Registered by Anilkumar Thovi on 2017-09-28

As we are aware user will create VM instances when ever required. For handling the health of private cloud,user need to terminate the instances which are not required(either through automation or manually). But in order to do this Cloud admin should send user, periodic report on the VM's which user owns. This can be achieved using simple cron tab script which sends periodic mail to the user on VM status,so that user can decide on terminating it.
   This might be the sub story of the user story https://specs.openstack.org/openstack/openstack-user-stories/user-stories/proposed/lifecycle_management.html

Blueprint information

Status:
Started
Approver:
None
Priority:
Low
Drafter:
Anilkumar Thovi
Direction:
Needs approval
Assignee:
Anilkumar Thovi
Definition:
Drafting
Series goal:
None
Implementation:
Started
Milestone target:
None
Started by
Anilkumar Thovi on 2017-10-26

Related branches

Sprints

Whiteboard

[robcresswell 2017-10-26]
As far as I can tell, this doesn't really pertain to Horizon at all. If there's a service we can read this data from, then thats fine, but currently this sounds a little too vague. Please update with a more detailed plan of how you hope to achieve this and use the template: https://blueprints.launchpad.net/horizon/+spec/template

[anilkumarthovi]
Moved this blue print to Compute nova project which makes more sense.

Following is the more details on plan and implementation.
Step 1)To get VM instances details: Connect to nova database like "nova_cell0" and table "instances" and get VM instance details like created date ,user_id(owner),VM status etc
Step 2)To get user details like mail id :Connect to keystone database get all user details like email.

Detailed Design :
Step 1: connect to databases nova and keystone
Step 2: get user and VM instance details
Step 3: For each user get all the VM instances details which he owns
Step 4: Send an email to each user with Vm instance details like created date,power status etc

[mriedem 2017-11-09]
I don't think that this is something we really need to add into Nova itself. The APIs are available for a another service to run something like this. In fact, a team from IBM a few years ago had written something like this using Mistral using a kind of policy rule-based system where instances had an expiration date associated with them and a cron would send out emails about the expiration time coming up or happening, and the resulting action (stop, snapshot, delete, etc). So I think that's a better place to put this kind of service than into Nova itself.

(?)

Work Items

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.