Synopsis
ISP Driver for OpenNebula Provides connection between OpenNebula and ISP BillManager.
Installation
-
Clone github repo or download and unpack it.
-
Put
vmmto~oneadmin/remmotes -
Put
imto~oneadmin/remmotes -
Paste code from
driver.confinto/etc/one/oned.conf -
Install
gem rest-client
Configuration
-
Create Host with IM and VM Mads
isp -
Add attribute
BASE_URLwith the valuehttps://your.isp.billmgr -
Add attribute
USERNAMEwith your Billmgr account usernameNote: Admin account should not be used
-
Add attribute
PASSWORDwith the password for your account -
Add attribute
DATACENTERwith the ISP datacenter ID -
optional Add attribute
HYPERVISORwith the valueisp
Features
-
Creating VMs
-
Controlling VMs
-
Polling VMs
-
Import Helper
Creating VMs
Define OpenNebula Template, here is an example:
HYPERVISOR = "ISP"
ISP_RAW_DATA = "JTdCJTIyU2V0...0EwJTdEJTdEJTdE" # Base64 encoded data from import helper
ISP_VARS = [
ADDON_15 = "1024", # RAM in Mb
ADDON_16 = "30", # to install ISP Panel or not
ADDON_18 = "1", # CPU
ADDON_20 = "10240", # Drive in Gb
ADDON_22 = "1", # Billing period
ADDON_23 = "1",
ADDON_24 = "0",
AUTOPROLONG = "1",
OSTEMPL = "ISPsystem__CentOS-7-amd64",
PRICELIST = "13", # Tariff Plan
RECIPE = "null" ] # Software to install
deploy driver will order VM using addons from template and update password using vmmgr
Controlling VMs
Driver signs in BillManager and parses access data for VMManager, to control it.
Polling VMs
Poll driver provides data about IP address(es) and VM state. elid from BillManager works as DeployID for OpenNebula
Import Helper
Due to ISP Billmgr API imperfection, every single VM attribute, such as CPU, RAM or Software to install, is defined by random addon(smth like addon_1, addon_2, etc). Driver can't create VM without defining this addons in VM Template. Import Helper makes it a bit easier by listing every addon with description from UI.