eole-one-master/tmpl/oned.conf

1494 lines
60 KiB
Plaintext

#*******************************************************************************
# OpenNebula Configuration file
#*******************************************************************************
#*******************************************************************************
# Daemon configuration attributes
#-------------------------------------------------------------------------------
# MANAGER_TIMER: Time in seconds the core uses to evaluate periodical functions.
# MONITORING_INTERVAL cannot have a smaller value than MANAGER_TIMER.
#
# MONITORING_INTERVAL: Time in seconds between host and VM monitorization.
#
# MONITORING_THREADS: Max. number of threads used to process monitor messages
#
# HOST_PER_INTERVAL: Number of hosts monitored in each interval.
# HOST_MONITORING_EXPIRATION_TIME: Time, in seconds, to expire monitoring
# information. Use 0 to disable HOST monitoring recording.
#
# VM_INDIVIDUAL_MONITORING: VM monitoring information is obtained along with the
# host information. For some custom monitor drivers you may need activate the
# individual VM monitoring process.
# VM_PER_INTERVAL: Number of VMs monitored in each interval, if the individual
# VM monitoring is set to yes.
# VM_MONITORING_EXPIRATION_TIME: Time, in seconds, to expire monitoring
# information. Use 0 to disable VM monitoring recording.
#
# SCRIPTS_REMOTE_DIR: Remote path to store the monitoring and VM management
# scripts.
#
# PORT: Port where oned will listen for xmlrpc calls.
# LISTEN_ADDRESS: Host IP to listen on for xmlrpc calls (default: all IPs).
#
# DB: Configuration attributes for the database backend
# backend : can be sqlite or mysql (default is sqlite)
# server : (mysql) host name or an IP address for the MySQL server
# port : (mysql) port for the connection to the server.
# If set to 0, the default port is used.
# user : (mysql) user's MySQL login ID
# passwd : (mysql) the password for user
# db_name : (mysql) the database name
# connections: (mysql) number of max. connections to mysql server
#
# VNC_PORTS: VNC port pool for automatic VNC port assignment, if possible the
# port will be set to ``START`` + ``VMID``
# start : first port to assign
# reserved: comma separated list of ports or ranges. Two numbers separated by
# a colon indicate a range.
#
# LOG: Configuration for the logging system
# system: defines the logging system:
# file to log in the oned.log file
# syslog to use the syslog facilities
# std to use the default log stream (stderr) to use with systemd
# debug_level: 0 = ERROR, 1 = WARNING, 2 = INFO, 3 = DEBUG
#
# VM_SUBMIT_ON_HOLD: Forces VMs to be created on hold state instead of pending.
# Values: YES or NO.
#*******************************************************************************
LOG = [
SYSTEM = "file",
DEBUG_LEVEL = 3
]
#MANAGER_TIMER = 15
MONITORING_INTERVAL = 60
MONITORING_THREADS = 50
#HOST_PER_INTERVAL = 15
#HOST_MONITORING_EXPIRATION_TIME = 43200
#VM_INDIVIDUAL_MONITORING = "no"
#VM_PER_INTERVAL = 5
#VM_MONITORING_EXPIRATION_TIME = 14400
SCRIPTS_REMOTE_DIR=/var/tmp/one
PORT = 2633
%if %%activer_one_ha == 'non'
LISTEN_ADDRESS = "127.0.0.1"
%end if
%if %%one_database_type == "sqlite"
DB = [ BACKEND = "sqlite" ]
%else
# Sample configuration for MySQL
DB = [ BACKEND = "mysql",
SERVER = "%%one_database_host",
PORT = %%one_database_port,
USER = "%%one_database_user",
PASSWD = "%%one_database_pass",
DB_NAME = "%%one_database_name",
CONNECTIONS = %%one_database_connections ]
%end if
VNC_PORTS = [
START = 5900
# RESERVED = "6800, 6801, 6810:6820, 9869"
]
#VM_SUBMIT_ON_HOLD = "NO"
#*******************************************************************************
# Federation & HA configuration attributes
#-------------------------------------------------------------------------------
# Control the federation capabilities of oned. Operation in a federated setup
# requires a special DB configuration.
#
# FEDERATION: Federation attributes
# MODE: Operation mode of this oned.
# STANDALONE no federated.This is the default operational mode
# MASTER this oned is the master zone of the federation
# SLAVE this oned is a slave zone
# ZONE_ID: The zone ID as returned by onezone command
# SERVER_ID: ID identifying this server in the zone as returned by the
# onezone server-add command. This ID controls the HA configuration of
# OpenNebula:
# -1 (default) OpenNebula will operate in "solo" mode no HA
# <id> Operate in HA (leader election and state replication)
# MASTER_ONED: The xml-rpc endpoint of the master oned, e.g.
# http://master.one.org:2633/RPC2
#
#
# RAFT: Algorithm attributes
# LIMIT_PURGE: Number of logs that will be deleted on each purge.
# LOG_RETENTION: Number of DB log records kept, it determines the
# synchronization window across servers and extra storage space needed.
# LOG_PURGE_TIMEOUT: How often applied records are purged according the log
# retention value. (in seconds)
# ELECTION_TIMEOUT_MS: Timeout to start a election process if no heartbeat
# or log is received from leader.
# BROADCAST_TIMEOUT_MS: How often heartbeats are sent to followers.
# XMLRPC_TIMEOUT_MS: To timeout raft related API calls
#
# RAFT_LEADER_HOOK: Executed when a server transits from follower->leader
# The purpose of this hook is to configure the Virtual IP.
# COMMAND: raft/vip.sh is a fully working script, this should not be changed
# ARGUMENTS: <interface> and <ip_cidr> must be replaced. For example
# ARGUMENTS = "leader ens1 10.0.0.2/24"
#
# RAFT_FOLLOWER_HOOK: Executed when a server transits from leader->follower
# The purpose of this hook is to configure the Virtual IP.
# COMMAND: raft/vip.sh is a fully working script, this should not be changed
# ARGUMENTS: <interface> and <ip_cidr> must be replaced. For example
# ARGUMENTS = "follower ens1 10.0.0.2/24"
#
# NOTE: Timeout tunning depends on the latency of the servers (network and load)
# as well as the max downtime tolerated by the system. Timeouts needs to be
# greater than 10ms
#
#*******************************************************************************
FEDERATION = [
MODE = "STANDALONE",
ZONE_ID = 0,
%if %%activer_one_ha == 'oui'
SERVER_ID = %%one_ha_server_index,
%else
SERVER_ID = -1,
%end if
MASTER_ONED = ""
]
RAFT = [
LIMIT_PURGE = 1000,
LOG_RETENTION = 5000,
LOG_PURGE_TIMEOUT = 60,
ELECTION_TIMEOUT_MS = 2500,
BROADCAST_TIMEOUT_MS = 500,
XMLRPC_TIMEOUT_MS = 5000
]
%if %%activer_one_ha == 'oui'
# Executed when a server transits from follower->leader
RAFT_LEADER_HOOK = [
COMMAND = "raft/vip.sh",
ARGUMENTS = "leader %%nom_zone_eth0 %%one_vip/%%calc_classe(%%one_vip_mask)"
]
# Executed when a server transits from leader->follower
RAFT_FOLLOWER_HOOK = [
COMMAND = "raft/vip.sh",
ARGUMENTS = "follower %%nom_zone_eth0 %%one_vip/%%calc_classe(%%one_vip_mask)"
]
%end if
#*******************************************************************************
# Default showback cost
#-------------------------------------------------------------------------------
# The following attributes define the default cost for Virtual Machines that
# don't have a CPU, MEMORY or DISK cost. This is used by the oneshowback
# calculate method.
#*******************************************************************************
DEFAULT_COST = [
CPU_COST = 0,
MEMORY_COST = 0,
DISK_COST = 0
]
#*******************************************************************************
# XML-RPC server configuration
#-------------------------------------------------------------------------------
# These are configuration parameters for oned's xmlrpc-c server
#
# MAX_CONN: Maximum number of simultaneous TCP connections the server
# will maintain
#
# MAX_CONN_BACKLOG: Maximum number of TCP connections the operating system
# will accept on the server's behalf without the server accepting them from
# the operating system
#
# KEEPALIVE_TIMEOUT: Maximum time in seconds that the server allows a
# connection to be open between RPCs
#
# KEEPALIVE_MAX_CONN: Maximum number of RPCs that the server will execute on
# a single connection
#
# TIMEOUT: Maximum time in seconds the server will wait for the client to
# do anything while processing an RPC. This timeout will be also used when
# proxy calls to the master in a federation.
#
# RPC_LOG: Create a separated log file for xml-rpc requests, in
# "/var/log/one/one_xmlrpc.log".
#
# MESSAGE_SIZE: Buffer size in bytes for XML-RPC responses.
#
# LOG_CALL_FORMAT: Format string to log XML-RPC calls. Interpreted strings:
# %i -- request id
# %m -- method name
# %u -- user id
# %U -- user name
# %l[number] -- param list and number of characters (optional) to print
# each parameter, default is 20. Example: %l300
# %p -- user password
# %g -- group id
# %G -- group name
# %a -- auth token
# %% -- %
#*******************************************************************************
MAX_CONN = %%one_max_conn
MAX_CONN_BACKLOG = %%one_max_conn_backlog
#KEEPALIVE_TIMEOUT = 15
KEEPALIVE_MAX_CONN = %%one_keepalive_timeout
#TIMEOUT = 15
RPC_LOG = %%one_rpc_log
#MESSAGE_SIZE = 1073741824
#LOG_CALL_FORMAT = "Req:%i UID:%u %m invoked %l20"
#*******************************************************************************
# Physical Networks configuration
#*******************************************************************************
# NETWORK_SIZE: Here you can define the default size for the virtual networks
#
# MAC_PREFIX: Default MAC prefix to be used to create the auto-generated MAC
# addresses is defined here (this can be overwritten by the Virtual Network
# template)
#
# VLAN_IDS: VLAN ID pool for the automatic VLAN_ID assignment. This pool
# is for 802.1Q networks (Open vSwitch and 802.1Q drivers). The driver
# will try first to allocate VLAN_IDS[START] + VNET_ID
# start: First VLAN_ID to use
# reserved: Comma separated list of VLAN_IDs or ranges. Two numbers
# separated by a colon indicate a range.
#
# VXLAN_IDS: Automatic VXLAN Network ID (VNI) assignment. This is used
# for vxlan networks.
# start: First VNI to use
# NOTE: reserved is not supported by this pool
#
# PCI_PASSTHROUGH_BUS: Default bus to attach passthrough devices in the guest,
# in hex notation. It may be overwritten in the PCI device using the BUS
# attribute.
#*******************************************************************************
NETWORK_SIZE = 254
MAC_PREFIX = "02:00"
VLAN_IDS = [
START = "2",
RESERVED = "0, 1, 4095"
]
VXLAN_IDS = [
START = "2"
]
#PCI_PASSTHROUGH_BUS = "0x01"
#*******************************************************************************
# DataStore Configuration
#*******************************************************************************
# DATASTORE_LOCATION: Path for Datastores. It IS the same for all the hosts
# and front-end. It defaults to /var/lib/one/datastores (in self-contained mode
# defaults to $ONE_LOCATION/var/datastores). Each datastore has its own
# directory (called BASE_PATH) in the form: $DATASTORE_LOCATION/<datastore_id>
# You can symlink this directory to any other path if needed. BASE_PATH is
# generated from this attribute each time oned is started.
#
# DATASTORE_CAPACITY_CHECK: Checks that there is enough capacity before
# creating a new image. Defaults to Yes
#
# DEFAULT_IMAGE_TYPE: This can take values
# OS Image file holding an operating system
# CDROM Image file holding a CDROM
# DATABLOCK Image file holding a datablock, created as an empty block
#
# DEFAULT_DEVICE_PREFIX: This can be set to
# hd IDE prefix
# sd SCSI
# vd KVM virtual disk
#
# DEFAULT_CDROM_DEVICE_PREFIX: Same as above but for CDROM devices.
#
# DEFAULT_IMAGE_PERSISTENT: Control the default value for the PERSISTENT
# attribute on image creation (oneimage clone, onevm disk-saveas). If blank
# images will inherit the persistent attribute from the base image.
#
# DEFAULT_IMAGE_PERSISTENT_NEW: Control the default value for the PERSISTENT
# attribute on image creation (oneimage create). By default images are no
# persistent if not set.
#*******************************************************************************
#DATASTORE_LOCATION = /var/lib/one/datastores
DATASTORE_CAPACITY_CHECK = "yes"
DEFAULT_DEVICE_PREFIX = "vd"
DEFAULT_CDROM_DEVICE_PREFIX = "hd"
DEFAULT_IMAGE_TYPE = "OS"
#DEFAULT_IMAGE_PERSISTENT = ""
#DEFAULT_IMAGE_PERSISTENT_NEW = ""
#*******************************************************************************
# Information Driver Configuration
#*******************************************************************************
# You can add more information managers with different configurations but make
# sure it has different names.
#
# name : name for this information manager
#
# executable: path of the information driver executable, can be an
# absolute path or relative to $ONE_LOCATION/lib/mads (or
# /usr/lib/one/mads/ if OpenNebula was installed in /)
#
# arguments : for the driver executable, usually a probe configuration file,
# can be an absolute path or relative to $ONE_LOCATION/etc (or
# /etc/one/ if OpenNebula was installed in /)
#*******************************************************************************
#-------------------------------------------------------------------------------
# Information Collector for KVM IM's.
#-------------------------------------------------------------------------------
# This driver CANNOT BE ASSIGNED TO A HOST, and needs to be used with KVM
# -h prints this help.
# -a Address to bind the collectd socket (default 0.0.0.0)
# -p UDP port to listen for monitor information (default 4124)
# -f Interval in seconds to flush collected information (default 5)
# -t Number of threads for the server (default 50)
# -i Time in seconds of the monitorization push cycle. This parameter must
# be smaller than MONITORING_INTERVAL, otherwise push monitorization will
# not be effective.
# -w Timeout in seconds to execute external commands (default unlimited)
#-------------------------------------------------------------------------------
IM_MAD = [
NAME = "collectd",
EXECUTABLE = "collectd",
ARGUMENTS = "-p 4124 -f 5 -t 50 -i 20" ]
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
# KVM UDP-push Information Driver Manager Configuration
# -r number of retries when monitoring a host
# -t number of threads, i.e. number of hosts monitored at the same time
# -w Timeout in seconds to execute external commands (default unlimited)
#-------------------------------------------------------------------------------
IM_MAD = [
NAME = "kvm",
SUNSTONE_NAME = "KVM",
EXECUTABLE = "one_im_ssh",
ARGUMENTS = "-r 3 -t 15 -w 90 kvm" ]
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
# KVM SSH-pull Information Driver Manager Configuration
# -r number of retries when monitoring a host
# -t number of threads, i.e. number of hosts monitored at the same time
# -w Timeout in seconds to execute external commands (default unlimited)
#-------------------------------------------------------------------------------
# IM_MAD = [
# NAME = "kvm",
# SUNSTONE_NAME = "kvm-ssh",
# EXECUTABLE = "one_im_ssh",
# ARGUMENTS = "-r 3 -t 15 -w 90 kvm-probes" ]
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
# vCenter Information Driver Manager Configuration
# -r number of retries when monitoring a host
# -t number of threads, i.e. number of hosts monitored at the same time
# -w Timeout in seconds to execute external commands (default unlimited)
#-------------------------------------------------------------------------------
IM_MAD = [
NAME = "vcenter",
SUNSTONE_NAME = "VMWare vCenter",
EXECUTABLE = "one_im_sh",
ARGUMENTS = "-c -t 15 -r 0 vcenter" ]
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
# EC2 Information Driver Manager Configuration
# -r number of retries when monitoring a host
# -t number of threads, i.e. number of hosts monitored at the same time
# -w Timeout in seconds to execute external commands (default unlimited)
#-------------------------------------------------------------------------------
#IM_MAD = [
# NAME = "ec2",
# SUNSTONE_NAME = "Amazon EC2",
# EXECUTABLE = "one_im_sh",
# ARGUMENTS = "-c -t 1 -r 0 -w 600 ec2" ]
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
# Azure Information Driver Manager Configuration
# -r number of retries when monitoring a host
# -t number of threads, i.e. number of hosts monitored at the same time
# -w Timeout in seconds to execute external commands (default unlimited)
#-------------------------------------------------------------------------------
#IM_MAD = [
# NAME = "az",
# SUNSTONE_NAME = "Microsoft Azure",
# EXECUTABLE = "one_im_sh",
# ARGUMENTS = "-c -t 1 -r 0 az" ]
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
# Hybrid OpenNebula Information Driver Manager Configuration
# -r number of retries when monitoring a host
# -t number of threads, i.e. number of hosts monitored at the same time
#-------------------------------------------------------------------------------
# IM_MAD = [
# NAME = "one",
# SUNSTONE_NAME = "OpenNebula",
# EXECUTABLE = "one_im_sh",
# ARGUMENTS = "-c -t 1 -r 0 one" ]
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
# Dummy Information Driver Manager Configuration
#-------------------------------------------------------------------------------
#IM_MAD = [ NAME="dummy", SUNSTONE_NAME="Testing", EXECUTABLE="one_im_dummy"]
#-------------------------------------------------------------------------------
#*******************************************************************************
# Virtualization Driver Configuration
#*******************************************************************************
# You can add more virtualization managers with different configurations but
# make sure it has different names.
#
# name : name of the virtual machine manager driver
#
# executable: path of the virtualization driver executable, can be an
# absolute path or relative to $ONE_LOCATION/lib/mads (or
# /usr/lib/one/mads/ if OpenNebula was installed in /)
#
# arguments : for the driver executable
#
# default : default values and configuration parameters for the driver, can
# be an absolute path or relative to $ONE_LOCATION/etc (or
# /etc/one/ if OpenNebula was installed in /)
#
# type : driver type, supported drivers: xen, kvm, xml
#
# keep_snapshots: do not remove snapshots on power on/off cycles and live
# migrations if the hypervisor supports that.
#
# imported_vms_actions : comma-separated list of actions supported
# for imported vms. The available actions are:
# migrate
# live-migrate
# terminate
# terminate-hard
# undeploy
# undeploy-hard
# hold
# release
# stop
# suspend
# resume
# delete
# delete-recreate
# reboot
# reboot-hard
# resched
# unresched
# poweroff
# poweroff-hard
# disk-attach
# disk-detach
# nic-attach
# nic-detach
# snap-create
# snap-delete
#*******************************************************************************
#-------------------------------------------------------------------------------
# KVM Virtualization Driver Manager Configuration
# -r number of retries when monitoring a host
# -t number of threads, i.e. number of hosts monitored at the same time
# -l <actions[=command_name]> actions executed locally, command can be
# overridden for each action.
# Valid actions: deploy, shutdown, cancel, save, restore, migrate, poll
# An example: "-l migrate=migrate_local,save"
# -p more than one action per host in parallel, needs support from hypervisor
# -s <shell> to execute remote commands, bash by default
# -w Timeout in seconds to execute external commands (default unlimited)
#
# Note: You can use type = "qemu" to use qemu emulated guests, e.g. if your
# CPU does not have virtualization extensions or use nested Qemu-KVM hosts
#-------------------------------------------------------------------------------
VM_MAD = [
NAME = "kvm",
SUNSTONE_NAME = "KVM",
EXECUTABLE = "one_vmm_exec",
ARGUMENTS = "-t 15 -r 0 kvm",
DEFAULT = "vmm_exec/vmm_exec_kvm.conf",
TYPE = "kvm",
KEEP_SNAPSHOTS = "yes",
IMPORTED_VMS_ACTIONS = "terminate, terminate-hard, hold, release, suspend,
resume, delete, reboot, reboot-hard, resched, unresched, disk-attach,
disk-detach, nic-attach, nic-detach, snap-create, snap-delete"
]
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
# vCenter Virtualization Driver Manager Configuration
# -r number of retries when monitoring a host
# -t number of threads, i.e. number of hosts monitored at the same time
# -p more than one action per host in parallel, needs support from hypervisor
# -s <shell> to execute commands, bash by default
# -d default snapshot strategy. It can be either 'detach' or 'suspend'. It
# defaults to 'suspend'.
# -w Timeout in seconds to execute external commands (default unlimited)
#-------------------------------------------------------------------------------
VM_MAD = [
NAME = "vcenter",
SUNSTONE_NAME = "VMWare vCenter",
EXECUTABLE = "one_vmm_sh",
ARGUMENTS = "-p -t 15 -r 0 vcenter -s sh",
DEFAULT = "vmm_exec/vmm_exec_vcenter.conf",
TYPE = "xml",
KEEP_SNAPSHOTS = "yes",
IMPORTED_VMS_ACTIONS = "terminate, terminate-hard, hold, release, suspend,
resume, delete, reboot, reboot-hard, resched, unresched, poweroff,
poweroff-hard, disk-attach, disk-detach, nic-attach, nic-detach,
snap-create, snap-delete, migrate, live-migrate"
]
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
# EC2 Virtualization Driver Manager Configuration
# -r number of retries when monitoring a host
# -t number of threads, i.e. number of actions performed at the same time
# -w Timeout in seconds to execute external commands (default unlimited)
# -p more than one action per host in parallel, needs support from hypervisor
#-------------------------------------------------------------------------------
#VM_MAD = [
# NAME = "ec2",
# SUNSTONE_NAME = "Amazon EC2",
# EXECUTABLE = "one_vmm_sh",
# ARGUMENTS = "-t 15 -r 0 -w 600 -p ec2",
# TYPE = "xml",
# KEEP_SNAPSHOTS = "no",
# IMPORTED_VMS_ACTIONS = "terminate, terminate-hard, hold, release, suspend,
# resume, delete, reboot, reboot-hard, resched, unresched, poweroff,
# poweroff-hard, disk-attach, disk-detach, nic-attach, nic-detach,
# snap-create, snap-delete"
#]
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
# Azure Virtualization Driver Manager Configuration
# -r number of retries when monitoring a host
# -t number of threads, i.e. number of actions performed at the same time
# -w Timeout in seconds to execute external commands (default unlimited)
#-------------------------------------------------------------------------------
#VM_MAD = [
# NAME = "az",
# SUNSTONE_NAME = "Microsoft Azure",
# EXECUTABLE = "one_vmm_sh",
# ARGUMENTS = "-t 15 -r 0 az",
# TYPE = "xml",
# KEEP_SNAPSHOTS = "no",
# IMPORTED_VMS_ACTIONS = "terminate, terminate-hard, hold, release, suspend,
# resume, delete, reboot, reboot-hard, resched, unresched, poweroff,
# poweroff-hard, disk-attach, disk-detach, nic-attach, nic-detach,
# snap-create, snap-delete"
#]
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
# Hybrid OpenNebula Virtualization Driver Manager Configuration
# -r number of retries when monitoring a host
# -t number of threads, i.e. number of actions performed at the same time
#-------------------------------------------------------------------------------
# VM_MAD = [
# NAME = "one",
# SUNSTONE_NAME = "OpenNebula",
# EXECUTABLE = "one_vmm_sh",
# ARGUMENTS = "-t 15 -r 0 one",
# TYPE = "xml",
# KEEP_SNAPSHOTS = "no",
# IMPORTED_VMS_ACTIONS = "terminate, terminate-hard, hold, release, suspend,
# resume, delete, reboot, reboot-hard, resched, unresched, poweroff,
# poweroff-hard"
# ]
#-------------------------------------------------------------------------------
#-------------------------------------------------------------------------------
# Dummy Virtualization Driver Configuration
#-------------------------------------------------------------------------------
#VM_MAD = [ NAME="dummy", SUNSTONE_NAME="Testing", EXECUTABLE="one_vmm_dummy",
# TYPE="xml" ]
#-------------------------------------------------------------------------------
#*******************************************************************************
# Transfer Manager Driver Configuration
#*******************************************************************************
# You can add more transfer managers with different configurations but make
# sure it has different names.
# name : name for this transfer driver
#
# executable: path of the transfer driver executable, can be an
# absolute path or relative to $ONE_LOCATION/lib/mads (or
# /usr/lib/one/mads/ if OpenNebula was installed in /)
# arguments :
# -t: number of threads, i.e. number of transfers made at the same time
# -d: list of transfer drivers separated by commas, if not defined all the
# drivers available will be enabled
# -w: Timeout in seconds to execute external commands (default unlimited)
#*******************************************************************************
TM_MAD = [
EXECUTABLE = "one_tm",
ARGUMENTS = "-t 15 -d dummy,lvm,shared,fs_lvm,qcow2,ssh,ceph,dev,vcenter,iscsi_libvirt"
]
#*******************************************************************************
# Datastore Driver Configuration
#*******************************************************************************
# Drivers to manage the datastores, specialized for the storage backend
# executable: path of the transfer driver executable, can be an
# absolute path or relative to $ONE_LOCATION/lib/mads (or
# /usr/lib/one/mads/ if OpenNebula was installed in /)
#
# arguments : for the driver executable
# -t number of threads, i.e. number of repo operations at the same time
# -d datastore mads separated by commas
# -s system datastore tm drivers, used to monitor shared system ds.
# -w Timeout in seconds to execute external commands (default unlimited)
#*******************************************************************************
DATASTORE_MAD = [
EXECUTABLE = "one_datastore",
ARGUMENTS = "-t 15 -d dummy,fs,lvm,ceph,dev,iscsi_libvirt,vcenter -s shared,ssh,ceph,fs_lvm,qcow2,vcenter"
]
#*******************************************************************************
# Marketplace Driver Configuration
#*******************************************************************************
# Drivers to manage different marketplaces, specialized for the storage backend
# executable: path of the transfer driver executable, can be an
# absolute path or relative to $ONE_LOCATION/lib/mads (or
# /usr/lib/one/mads/ if OpenNebula was installed in /)
#
# arguments : for the driver executable
# -t number of threads, i.e. number of repo operations at the same time
# -m marketplace mads separated by commas
# --proxy proxy address if required to access the internet
# -w Timeout in seconds to execute external commands (default unlimited)
#*******************************************************************************
MARKET_MAD = [
EXECUTABLE = "one_market",
ARGUMENTS = "-t 15 -m http,s3,one"
]
#*******************************************************************************
# IPAM Driver Configuration
#*******************************************************************************
# Drivers to manage different IPAMs
# executable: path of the IPAM driver executable, can be an
# absolute path or relative to $ONE_LOCATION/lib/mads (or
# /usr/lib/one/mads/ if OpenNebula was installed in /)
#
# arguments : for the driver executable
# -t number of threads, i.e. number of operations at the same time
# -i IPAM mads separated by commas
#*******************************************************************************
IPAM_MAD = [
EXECUTABLE = "one_ipam",
ARGUMENTS = "-t 1 -i dummy"
]
#*******************************************************************************
# Hook Manager Configuration
#*******************************************************************************
# The Driver (HM_MAD)
# -----------------------------------------------
#
# Used to execute the Hooks:
# executable: path of the hook driver executable, can be an
# absolute path or relative to $ONE_LOCATION/lib/mads (or
# /usr/lib/one/mads/ if OpenNebula was installed in /)
#
# arguments : for the driver executable, can be an absolute path or relative
# to $ONE_LOCATION/etc (or /etc/one/ if OpenNebula was installed
# in /)
#
# Virtual Machine Hooks (VM_HOOK)
# -------------------------------
#
# Defined by:
# name : for the hook, useful to track the hook (OPTIONAL)
# on : when the hook should be executed,
# - CREATE, when the VM is created (onevm create)
# - PROLOG, when the VM is in the prolog state
# - RUNNING, after the VM is successfully booted
# - UNKNOWN, when the VM is in the unknown state
# - SHUTDOWN, after the VM is shutdown
# - STOP, after the VM is stopped (including VM image transfers)
# - DONE, after the VM is deleted or shutdown
# - CUSTOM, user defined specific STATE and LCM_STATE combination
# of states to trigger the hook.
# command : path is relative to $ONE_LOCATION/var/remotes/hook
# (self-contained) or to /var/lib/one/remotes/hook (system-wide).
# That directory will be copied on the hosts under
# SCRIPTS_REMOTE_DIR. It can be an absolute path that must exist
# on the target host
# arguments : for the hook. You can access to VM information with $
# - $ID, the ID of the virtual machine
# - $TEMPLATE, the VM template in xml and base64 encoded
# - $PREV_STATE, the previous STATE of the Virtual Machine
# - $PREV_LCM_STATE, the previous LCM STATE of the Virtual Machine
# remote : values,
# - YES, The hook is executed in the host where the VM was
# allocated
# - NO, The hook is executed in the OpenNebula server (default)
#
# Example Virtual Machine Hook
# ----------------------------
#
# VM_HOOK = [
# name = "advanced_hook",
# on = "CUSTOM",
# state = "ACTIVE",
# lcm_state = "BOOT_UNKNOWN",
# command = "log.rb",
# arguments = "$ID $PREV_STATE $PREV_LCM_STATE" ]
#
# Host Hooks (HOST_HOOK)
# -------------------------------
#
# Defined by:
# name : for the hook, useful to track the hook (OPTIONAL)
# on : when the hook should be executed,
# - CREATE, when the Host is created (onehost create)
# - ERROR, when the Host enters the error state
# - DISABLE, when the Host is disabled
# command : path is relative to $ONE_LOCATION/var/remotes/hook
# (self-contained) or to /var/lib/one/remotes/hook (system-wide).
# That directory will be copied on the hosts under
# SCRIPTS_REMOTE_DIR. It can be an absolute path that must exist
# on the target host.
# arguments : for the hook. You can use the following Host information:
# - $ID, the ID of the host
# - $TEMPLATE, the Host template in xml and base64 encoded
# remote : values,
# - YES, The hook is executed in the host
# - NO, The hook is executed in the OpenNebula server (default)
#
# Virtual Network (VNET_HOOK)
# Virtual Router (VROUTER_HOOK)
# User (USER_HOOK)
# Group (GROUP_HOOK)
# Image (IMAGE_HOOK)
# -------------------------------
#
# These hooks are executed when one of the referring entities are created or
# removed. Each hook is defined by:
# name : for the hook, useful to track the hook (OPTIONAL)
# on : when the hook should be executed,
# - CREATE, when the vnet is created
# - REMOVE, when the vnet is removed
# command : path is relative to $ONE_LOCATION/var/remotes/hook
# (self-contained) or to /var/lib/one/remotes/hook (system-wide).
# That directory will be copied on the hosts under
# SCRIPTS_REMOTE_DIR. It can be an absolute path that must exist
# on the target host.
# arguments : for the hook. You can use the following Host information:
# - $ID, the ID of the host
# - $TEMPLATE, the vnet template in xml and base64 encoded
#
# Please note: In a Federation, User and Group hooks can only be defined in
# the master OpenNebula.
#-------------------------------------------------------------------------------
#
VM_HOOK = [
name = "open_ports",
on = "RUNNING",
command = "eole/graphicsfw",
arguments = "open $TEMPLATE",
remote = "YES"
]
VM_HOOK = [
name = "close_ports",
on = "DONE",
command = "eole/graphicsfw",
arguments = "close $TEMPLATE",
remote = "YES"
]
VM_HOOK = [
name = "close_ports",
on = "STOP",
command = "eole/graphicsfw",
arguments = "close $TEMPLATE",
remote = "YES"
]
VM_HOOK = [
name = "close_ports",
on = "SHUTDOWN",
command = "eole/graphicsfw",
arguments = "close $TEMPLATE",
remote = "YES"
]
%if %%getVar('activer_hooks', 'non') == 'oui'
#*******************************************************************************
# Personal Hooks
#*******************************************************************************
# VM
#*******************************************************************************
%if %%hapy_vm_hooks == 'oui'
%for %%hook in %%hapy_vm_hook
VM_HOOK = [
name = "%%hook",
on = "%%hook.hapy_vm_hook_on",
%if %%hook.hapy_vm_hook_on == "CUSTOM"
state = "%%hook.hapy_vm_hook_state",
lcm_state = "%%hook.hapy_vm_hook_lcm_state",
%end if
command = "%%hook.hapy_vm_hook_command",
arguments = "%%hook.hapy_vm_hook_arguments",
%if %%hook.hapy_vm_hook_remote == 'oui'
remote = "YES"
%else
remote = "NO"
%end if
]
%end for
%end if
#*******************************************************************************
# USER
#*******************************************************************************
%if %%hapy_user_hooks == 'oui'
%for %%hook in %%hapy_user_hook
USER_HOOK = [
name = "%%hook",
on = "%%hook.hapy_user_hook_on",
command = "%%hook.hapy_user_hook_command",
arguments = "%%hook.hapy_user_hook_arguments"
]
%end for
%end if
%end if
HM_MAD = [
EXECUTABLE = "one_hm" ]
#VNET_HOOK = [
# name = "vcenter_net_create",
# on = "CREATE",
# command = "vcenter/create_vcenter_net.rb",
# arguments = "$ID $TEMPLATE"]
#VNET_HOOK = [
# name = "vcenter_net_delete",
# on = "REMOVE",
# command = "vcenter/delete_vcenter_net.rb",
# arguments = "$ID $TEMPLATE"]
#*******************************************************************************
# Fault Tolerance Hooks
#*******************************************************************************
# This hook is used to perform recovery actions when a host fails.
# Script to implement host failure tolerance
# One of the following modes must be chosen
# -m resched VMs to another host. (Only for images in shared storage!)
# -r recreate VMs running in the host. State will be lost.
# -d delete VMs running in the host
#
# Additional flags
# -f resubmit suspended and powered off VMs (only for recreate)
# -p <n> avoid resubmission if host comes back after n monitoring
# cycles. 0 to disable it. Default is 2.
# -u disables fencing. Fencing is enabled by default. Don't disable it
# unless you are very sure about what you're doing
#*******************************************************************************
#
#HOST_HOOK = [
# NAME = "error",
# ON = "ERROR",
# COMMAND = "ft/host_error.rb",
# ARGUMENTS = "$ID -m -p 5",
# REMOTE = "no" ]
#-------------------------------------------------------------------------------
%if %%getVar('activer_hooks', 'non') == 'oui'
#*******************************************************************************
# Personal Hooks
#*******************************************************************************
# VM
#*******************************************************************************
%if %%hapy_vm_hooks == 'oui'
%for %%hook in %%hapy_vm_hook
VM_HOOK = [
name = "%%hook",
on = "%%hook.hapy_vm_hook_on",
%if %%hook.hapy_vm_hook_on == "CUSTOM"
state = "%%hook.hapy_vm_hook_state",
lcm_state = "%%hook.hapy_vm_hook_lcm_state",
%end if
command = "%%hook.hapy_vm_hook_command",
arguments = "%%hook.hapy_vm_hook_arguments",
%if %%hook.hapy_vm_hook_remote == 'oui'
remote = "YES"
%else
remote = "NO"
%end if
]
%end for
%end if
#*******************************************************************************
# USER
#*******************************************************************************
%if %%hapy_user_hooks == 'oui'
%for %%hook in %%hapy_user_hook
USER_HOOK = [
name = "%%hook",
on = "%%hook.hapy_user_hook_on",
command = "%%hook.hapy_user_hook_command",
arguments = "%%hook.hapy_user_hook_arguments"
]
%end for
%end if
%end if
#*******************************************************************************
# Auth Manager Configuration
#*******************************************************************************
# AUTH_MAD: The Driver that will be used to authenticate (authn) and
# authorize (authz) OpenNebula requests. If defined OpenNebula will use the
# built-in auth policies.
#
# executable: path of the auth driver executable, can be an
# absolute path or relative to $ONE_LOCATION/lib/mads (or
# /usr/lib/one/mads/ if OpenNebula was installed in /)
#
# authn : list of authentication modules separated by commas, if not
# defined all the modules available will be enabled
# authz : list of authentication modules separated by commas
#
# DEFAULT_AUTH: The default authentication driver to use when OpenNebula does
# not know the user and needs to authenticate it externally. If you want to
# use "default" (not recommended, but supported for backwards compatibility
# reasons) make sure you create a symlink pointing to the actual authentication
# driver in /var/lib/one/remotes/auth, and add "default" to the 'auth'
# parameter in the 'AUTH_MAD' section.
#
# SESSION_EXPIRATION_TIME: Time in seconds to keep an authenticated token as
# valid. During this time, the driver is not used. Use 0 to disable session
# caching
#
# ENABLE_OTHER_PERMISSIONS: Whether or not users can set the permissions for
# 'other', so publishing or sharing resources with others. Users in the oneadmin
# group will still be able to change these permissions. Values: YES or NO.
#
# DEFAULT_UMASK: Similar to Unix umask, sets the default resources permissions.
# Its format must be 3 octal digits. For example a umask of 137 will set
# the new object's permissions to 640 "um- u-- ---"
#*******************************************************************************
AUTH_MAD = [
EXECUTABLE = "one_auth_mad",
AUTHN = "ssh,x509,ldap,server_cipher,server_x509"
]
%if %%getVar('sunstone_auth_modes','') == 'ldap'
DEFAULT_AUTH = "ldap"
%end if
SESSION_EXPIRATION_TIME = 900
#ENABLE_OTHER_PERMISSIONS = "YES"
DEFAULT_UMASK = 177
#*******************************************************************************
# OneGate
# ONEGATE_ENDPOINT: The URL for the onegate server (the Gate to OpenNebula for
# VMs). The onegate server is started using a separate command. The endpoint
# MUST be consistent with the values in onegate-server.conf
#*******************************************************************************
#ONEGATE_ENDPOINT = "http://frontend:5030"
#*******************************************************************************
# VM Operations Permissions
#******************************************************************************
# The following parameters define the operations associated to the ADMIN,
# MANAGE and USE permissions. Note that some VM operations require additional
# permissions on other objects. Also some operations refers to a class of
# actions:
# - disk-snapshot, includes create, delete and revert actions
# - disk-attach, includes attach and detach actions
# - nic-attach, includes attach and detach actions
# - snapshot, includes create, delete and revert actions
# - resched, includes resched and unresched actions
#******************************************************************************
VM_ADMIN_OPERATIONS = "migrate, delete, recover, retry, deploy, resched"
VM_MANAGE_OPERATIONS = "undeploy, hold, release, stop, suspend, resume, reboot,
poweroff, disk-attach, nic-attach, disk-snapshot, terminate, disk-resize,
snapshot, updateconf, rename, resize, update, disk-saveas"
VM_USE_OPERATIONS = ""
#*******************************************************************************
# Default Permissions for VDC ACL rules
#*******************************************************************************
# Default ACL rules created when resource is added to a VDC. The following
# attributes configures the permissions granted to the VDC group for each
# resource types:
# DEFAULT_VDC_HOST_ACL: permissions granted on hosts added to a VDC.
# DEFAULT_VDC_NET_ACL: permissions granted on vnets added to a VDC.
# DEFAULT_VDC_DATASTORE_ACL: permissions granted on datastores to a VDC.
#
# DEFAULT_VDC_CLUSTER_HOST_ACL: permissions granted to cluster hosts when a
# cluster is added to the VDC.
# DEFAULT_VDC_CLUSTER_NET_ACL: permissions granted to cluster vnets when a
# cluster is added to the VDC.
# DEFAULT_VDC_CLUSTER_DATASTORE_ACL: permissions granted to cluster datastores
# when a cluster is added to the VDC.
#
# When defining the permissions you can use "" or "-" to not add any rule to
# that specific resource. Also you can combine several permissions with "+",
# for exampl "MANAGE+USE". Valid permissions are USE, MANAGE or ADMIN.
#
# Example:
# DEFAULT_VDC_HOST_ACL = "MANAGE"
# Adds @<gid> HOST/#<hid> MANAGE #<zid> when a host is added to the VDC,
# eg. onevdc addhost <vdc> <zid> <hid>
#
# DEFAULT_VDC_VNET_ACL = "USE"
# Adds @<gid> NET/#<vnetid> USE #<zid> when a vnet is added to the VDC,
# eg. onevdc addvnet <vdc> <zid> <vnetid>
#
# DEFAULT_VDC_DATASTORE_ACL = "USE"
# Adds @<gid> DATASTORE/#<dsid> USE #<zid> when a vnet is added to the VDC,
# eg. onevdc adddatastore <vdc> <zid> <dsid>
#
# DEFAULT_VDC_CLUSTER_HOST_ACL = "MANAGE"
# DEFAULT_VDC_CLUSTER_NET_ACL = "USE"
# DEFAULT_VDC_CLUSTER_DATASTORE_ACL = "USE"
# Adds:
# @<gid> HOST/%<cid> MANAGE #<zid>
# @<gid> DATASTORE+NET/%<cid> USE #<zid>
# when a cluster is added to the VDC, e.g. onevdc addcluster <vdc> <zid> <cid>
#*******************************************************************************
DEFAULT_VDC_HOST_ACL = "MANAGE"
DEFAULT_VDC_VNET_ACL = "USE"
DEFAULT_VDC_DATASTORE_ACL = "USE"
DEFAULT_VDC_CLUSTER_HOST_ACL = "MANAGE"
DEFAULT_VDC_CLUSTER_NET_ACL = "USE"
DEFAULT_VDC_CLUSTER_DATASTORE_ACL = "USE"
#*******************************************************************************
# Restricted Attributes Configuration
#*******************************************************************************
# The following attributes are restricted to users outside the oneadmin group
#*******************************************************************************
VM_RESTRICTED_ATTR = "CONTEXT/FILES"
VM_RESTRICTED_ATTR = "NIC/MAC"
VM_RESTRICTED_ATTR = "NIC/VLAN_ID"
VM_RESTRICTED_ATTR = "NIC/BRIDGE"
VM_RESTRICTED_ATTR = "NIC/INBOUND_AVG_BW"
VM_RESTRICTED_ATTR = "NIC/INBOUND_PEAK_BW"
VM_RESTRICTED_ATTR = "NIC/INBOUND_PEAK_KB"
VM_RESTRICTED_ATTR = "NIC/OUTBOUND_AVG_BW"
VM_RESTRICTED_ATTR = "NIC/OUTBOUND_PEAK_BW"
VM_RESTRICTED_ATTR = "NIC/OUTBOUND_PEAK_KB"
VM_RESTRICTED_ATTR = "NIC/OPENNEBULA_MANAGED"
VM_RESTRICTED_ATTR = "NIC/VCENTER_INSTANCE_ID"
VM_RESTRICTED_ATTR = "NIC/VCENTER_NET_REF"
VM_RESTRICTED_ATTR = "NIC/VCENTER_PORTGROUP_TYPE"
VM_RESTRICTED_ATTR = "NIC_DEFAULT/MAC"
VM_RESTRICTED_ATTR = "NIC_DEFAULT/VLAN_ID"
VM_RESTRICTED_ATTR = "NIC_DEFAULT/BRIDGE"
VM_RESTRICTED_ATTR = "DISK/TOTAL_BYTES_SEC"
VM_RESTRICTED_ATTR = "DISK/TOTAL_BYTES_SEC_MAX_LENGTH"
VM_RESTRICTED_ATTR = "DISK/TOTAL_BYTES_SEC_MAX"
VM_RESTRICTED_ATTR = "DISK/READ_BYTES_SEC"
VM_RESTRICTED_ATTR = "DISK/READ_BYTES_SEC_MAX_LENGTH"
VM_RESTRICTED_ATTR = "DISK/READ_BYTES_SEC_MAX"
VM_RESTRICTED_ATTR = "DISK/WRITE_BYTES_SEC"
VM_RESTRICTED_ATTR = "DISK/WRITE_BYTES_SEC_MAX_LENGTH"
VM_RESTRICTED_ATTR = "DISK/WRITE_BYTES_SEC_MAX"
VM_RESTRICTED_ATTR = "DISK/TOTAL_IOPS_SEC"
VM_RESTRICTED_ATTR = "DISK/TOTAL_IOPS_SEC_MAX_LENGTH"
VM_RESTRICTED_ATTR = "DISK/TOTAL_IOPS_SEC_MAX"
VM_RESTRICTED_ATTR = "DISK/READ_IOPS_SEC"
VM_RESTRICTED_ATTR = "DISK/READ_IOPS_SEC_MAX_LENGTH"
VM_RESTRICTED_ATTR = "DISK/READ_IOPS_SEC_MAX"
VM_RESTRICTED_ATTR = "DISK/WRITE_IOPS_SEC"
VM_RESTRICTED_ATTR = "DISK/WRITE_IOPS_SEC_MAX_LENGTH"
VM_RESTRICTED_ATTR = "DISK/WRITE_IOPS_SEC_MAX"
VM_RESTRICTED_ATTR = "DISK/OPENNEBULA_MANAGED"
VM_RESTRICTED_ATTR = "DISK/VCENTER_DS_REF"
VM_RESTRICTED_ATTR = "DISK/VCENTER_INSTANCE_ID"
#VM_RESTRICTED_ATTR = "DISK/SIZE"
VM_RESTRICTED_ATTR = "DISK/ORIGINAL_SIZE"
VM_RESTRICTED_ATTR = "DISK/SIZE_PREV"
VM_RESTRICTED_ATTR = "CPU_COST"
VM_RESTRICTED_ATTR = "MEMORY_COST"
VM_RESTRICTED_ATTR = "DISK_COST"
VM_RESTRICTED_ATTR = "PCI"
VM_RESTRICTED_ATTR = "EMULATOR"
VM_RESTRICTED_ATTR = "RAW"
VM_RESTRICTED_ATTR = "USER_PRIORITY"
VM_RESTRICTED_ATTR = "USER_INPUTS/CPU"
VM_RESTRICTED_ATTR = "USER_INPUTS/MEMORY"
VM_RESTRICTED_ATTR = "USER_INPUTS/VCPU"
VM_RESTRICTED_ATTR = "VCENTER_VM_FOLDER"
#VM_RESTRICTED_ATTR = "RANK"
#VM_RESTRICTED_ATTR = "SCHED_RANK"
#VM_RESTRICTED_ATTR = "REQUIREMENTS"
#VM_RESTRICTED_ATTR = "SCHED_REQUIREMENTS"
IMAGE_RESTRICTED_ATTR = "SOURCE"
IMAGE_RESTRICTED_ATTR = "VCENTER_IMPORTED"
#*******************************************************************************
# The following restricted attributes only apply to VNets that are a reservation.
# Normal VNets do not have restricted attributes.
#*******************************************************************************
VNET_RESTRICTED_ATTR = "VN_MAD"
VNET_RESTRICTED_ATTR = "PHYDEV"
VNET_RESTRICTED_ATTR = "VLAN_ID"
VNET_RESTRICTED_ATTR = "BRIDGE"
VNET_RESTRICTED_ATTR = "CONF"
VNET_RESTRICTED_ATTR = "BRIDGE_CONF"
VNET_RESTRICTED_ATTR = "OVS_BRIDGE_CONF"
VNET_RESTRICTED_ATTR = "IP_LINK_CONF"
VNET_RESTRICTED_ATTR = "AR/VN_MAD"
VNET_RESTRICTED_ATTR = "AR/PHYDEV"
VNET_RESTRICTED_ATTR = "AR/VLAN_ID"
VNET_RESTRICTED_ATTR = "AR/BRIDGE"
#*******************************************************************************
# Inherited Attributes Configuration
#*******************************************************************************
# The following attributes will be copied from the resource template to the
# instantiated VMs. More than one attribute can be defined.
#
# INHERIT_IMAGE_ATTR: Attribute to be copied from the Image template
# to each VM/DISK.
#
# INHERIT_DATASTORE_ATTR: Attribute to be copied from the Datastore template
# to each VM/DISK.
#
# INHERIT_VNET_ATTR: Attribute to be copied from the Network template
# to each VM/NIC.
#*******************************************************************************
#INHERIT_IMAGE_ATTR = "EXAMPLE"
#INHERIT_IMAGE_ATTR = "SECOND_EXAMPLE"
#INHERIT_DATASTORE_ATTR = "COLOR"
#INHERIT_VNET_ATTR = "BANDWIDTH_THROTTLING"
INHERIT_DATASTORE_ATTR = "CEPH_HOST"
INHERIT_DATASTORE_ATTR = "CEPH_SECRET"
INHERIT_DATASTORE_ATTR = "CEPH_KEY"
INHERIT_DATASTORE_ATTR = "CEPH_USER"
INHERIT_DATASTORE_ATTR = "CEPH_CONF"
INHERIT_DATASTORE_ATTR = "POOL_NAME"
INHERIT_DATASTORE_ATTR = "ISCSI_USER"
INHERIT_DATASTORE_ATTR = "ISCSI_USAGE"
INHERIT_DATASTORE_ATTR = "ISCSI_HOST"
INHERIT_IMAGE_ATTR = "ISCSI_USER"
INHERIT_IMAGE_ATTR = "ISCSI_USAGE"
INHERIT_IMAGE_ATTR = "ISCSI_HOST"
INHERIT_IMAGE_ATTR = "ISCSI_IQN"
INHERIT_DATASTORE_ATTR = "GLUSTER_HOST"
INHERIT_DATASTORE_ATTR = "GLUSTER_VOLUME"
INHERIT_DATASTORE_ATTR = "DISK_TYPE"
INHERIT_DATASTORE_ATTR = "ALLOW_ORPHANS"
INHERIT_DATASTORE_ATTR = "VCENTER_ADAPTER_TYPE"
INHERIT_DATASTORE_ATTR = "VCENTER_DISK_TYPE"
INHERIT_DATASTORE_ATTR = "VCENTER_DS_REF"
INHERIT_DATASTORE_ATTR = "VCENTER_DS_IMAGE_DIR"
INHERIT_DATASTORE_ATTR = "VCENTER_DS_VOLATILE_DIR"
INHERIT_DATASTORE_ATTR = "VCENTER_INSTANCE_ID"
INHERIT_IMAGE_ATTR = "DISK_TYPE"
INHERIT_IMAGE_ATTR = "VCENTER_ADAPTER_TYPE"
INHERIT_IMAGE_ATTR = "VCENTER_DISK_TYPE"
INHERIT_VNET_ATTR = "VLAN_TAGGED_ID"
INHERIT_VNET_ATTR = "FILTER_IP_SPOOFING"
INHERIT_VNET_ATTR = "FILTER_MAC_SPOOFING"
INHERIT_VNET_ATTR = "MTU"
INHERIT_VNET_ATTR = "INBOUND_AVG_BW"
INHERIT_VNET_ATTR = "INBOUND_PEAK_BW"
INHERIT_VNET_ATTR = "INBOUND_PEAK_KB"
INHERIT_VNET_ATTR = "OUTBOUND_AVG_BW"
INHERIT_VNET_ATTR = "OUTBOUND_PEAK_BW"
INHERIT_VNET_ATTR = "OUTBOUND_PEAK_KB"
INHERIT_VNET_ATTR = "CONF"
INHERIT_VNET_ATTR = "BRIDGE_CONF"
INHERIT_VNET_ATTR = "OVS_BRIDGE_CONF"
INHERIT_VNET_ATTR = "IP_LINK_CONF"
INHERIT_VNET_ATTR = "VCENTER_NET_REF"
INHERIT_VNET_ATTR = "VCENTER_SWITCH_NAME"
INHERIT_VNET_ATTR = "VCENTER_SWITCH_NPORTS"
INHERIT_VNET_ATTR = "VCENTER_PORTGROUP_TYPE"
INHERIT_VNET_ATTR = "VCENTER_CCR_REF"
INHERIT_VNET_ATTR = "VCENTER_INSTANCE_ID"
#*******************************************************************************
# Transfer Manager Driver Behavior Configuration
#*******************************************************************************
# The configuration for each driver is defined in TM_MAD_CONF. These
# values are used when creating a new datastore and should not be modified
# since they define the datastore behavior.
# name : name of the transfer driver, listed in the -d option of the
# TM_MAD section
# ln_target : determines how the persistent images will be cloned when
# a new VM is instantiated.
# NONE: The image will be linked and no more storage capacity will be used
# SELF: The image will be cloned in the Images datastore
# SYSTEM: The image will be cloned in the System datastore
# clone_target : determines how the non persistent images will be
# cloned when a new VM is instantiated.
# NONE: The image will be linked and no more storage capacity will be used
# SELF: The image will be cloned in the Images datastore
# SYSTEM: The image will be cloned in the System datastore
# shared : determines if the storage holding the system datastore is shared
# among the different hosts or not. Valid values: "yes" or "no"
# ds_migrate : The driver allows migrations across datastores. Valid values:
# "yes" or "no". Note: THIS ONLY APPLIES TO SYSTEM DS.
# allow_orphans: Snapshots can live without parents
#*******************************************************************************
TM_MAD_CONF = [
NAME = "dummy", LN_TARGET = "NONE", CLONE_TARGET = "SYSTEM", SHARED = "YES",
DS_MIGRATE = "YES"
]
TM_MAD_CONF = [
NAME = "lvm", LN_TARGET = "NONE", CLONE_TARGET = "SELF", SHARED = "YES"
]
TM_MAD_CONF = [
NAME = "shared", LN_TARGET = "NONE", CLONE_TARGET = "SYSTEM", SHARED = "YES",
DS_MIGRATE = "YES", TM_MAD_SYSTEM = "ssh", LN_TARGET_SSH = "SYSTEM",
CLONE_TARGET_SSH = "SYSTEM", DISK_TYPE_SSH = "FILE"
]
TM_MAD_CONF = [
NAME = "fs_lvm", LN_TARGET = "SYSTEM", CLONE_TARGET = "SYSTEM", SHARED="YES",
DRIVER = "raw"
]
TM_MAD_CONF = [
NAME = "qcow2", LN_TARGET = "NONE", CLONE_TARGET = "SYSTEM", SHARED = "YES",
DRIVER = "qcow2"
]
TM_MAD_CONF = [
NAME = "ssh", LN_TARGET = "SYSTEM", CLONE_TARGET = "SYSTEM", SHARED = "NO",
DS_MIGRATE = "YES"
]
TM_MAD_CONF = [
NAME = "ceph", LN_TARGET = "NONE", CLONE_TARGET = "SELF", SHARED = "YES",
DS_MIGRATE = "NO", DRIVER = "raw", ALLOW_ORPHANS="yes", TM_MAD_SYSTEM = "ssh",
LN_TARGET_SSH = "SYSTEM", CLONE_TARGET_SSH = "SYSTEM", DISK_TYPE_SSH = "FILE"
]
TM_MAD_CONF = [
NAME = "iscsi_libvirt", LN_TARGET = "NONE", CLONE_TARGET = "SELF", SHARED = "YES",
DS_MIGRATE = "NO"
]
TM_MAD_CONF = [
NAME = "dev", LN_TARGET = "NONE", CLONE_TARGET = "NONE", SHARED = "YES"
]
TM_MAD_CONF = [
NAME = "vcenter", LN_TARGET = "NONE", CLONE_TARGET = "SYSTEM", SHARED = "YES"
]
#*******************************************************************************
# Datastore Manager Driver Behavior Configuration
#*******************************************************************************
# The configuration for each driver is defined in DS_MAD_CONF. These
# values are used when creating a new datastore and should not be modified
# since they define the datastore behavior.
# name : name of the transfer driver, listed in the -d option of the
# DS_MAD section
# required_attrs : comma separated list of required attributes in the DS
# template
# persistent_only: specifies whether the datastore can only manage persistent
# images
#*******************************************************************************
DS_MAD_CONF = [
NAME = "ceph",
REQUIRED_ATTRS = "DISK_TYPE,BRIDGE_LIST",
PERSISTENT_ONLY = "NO",
MARKETPLACE_ACTIONS = "export"
]
DS_MAD_CONF = [
NAME = "dev", REQUIRED_ATTRS = "DISK_TYPE", PERSISTENT_ONLY = "YES"
]
DS_MAD_CONF = [
NAME = "iscsi_libvirt", REQUIRED_ATTRS = "DISK_TYPE,ISCSI_HOST",
PERSISTENT_ONLY = "YES"
]
DS_MAD_CONF = [
NAME = "dummy", REQUIRED_ATTRS = "", PERSISTENT_ONLY = "NO"
]
DS_MAD_CONF = [
NAME = "fs", REQUIRED_ATTRS = "", PERSISTENT_ONLY = "NO",
MARKETPLACE_ACTIONS = "export"
]
DS_MAD_CONF = [
NAME = "lvm", REQUIRED_ATTRS = "DISK_TYPE,BRIDGE_LIST",
PERSISTENT_ONLY = "NO"
]
DS_MAD_CONF = [
NAME = "vcenter",
REQUIRED_ATTRS = "VCENTER_INSTANCE_ID,VCENTER_DS_REF,VCENTER_DC_REF",
PERSISTENT_ONLY = "NO",
MARKETPLACE_ACTIONS = "export"
]
#*******************************************************************************
# MarketPlace Driver Behavior Configuration
#*******************************************************************************
# The configuration for each driver is defined in MARKET_MAD_CONF. These
# values are used when creating a new marketplaces and should not be modified
# since they define the marketplace behavior.
# name : name of the market driver
# required_attrs : comma separated list of required attributes in the Market
# template
# app_actions: List of actions allowed for a MarketPlaceApp
# - monitor The apps of the marketplace will be monitored
# - create, the app in the marketplace
# - delete, the app from the marketplace
# public: set to yes for external marketplaces. A public marketplace can be
# removed even if it has registered apps.
#*******************************************************************************
MARKET_MAD_CONF = [
NAME = "one",
SUNSTONE_NAME = "OpenNebula.org Marketplace",
REQUIRED_ATTRS = "",
APP_ACTIONS = "monitor",
PUBLIC = "yes"
]
MARKET_MAD_CONF = [
NAME = "http",
SUNSTONE_NAME = "HTTP server",
REQUIRED_ATTRS = "BASE_URL,PUBLIC_DIR",
APP_ACTIONS = "create, delete, monitor"
]
MARKET_MAD_CONF = [
NAME = "s3",
SUNSTONE_NAME = "Amazon S3",
REQUIRED_ATTRS = "ACCESS_KEY_ID,SECRET_ACCESS_KEY,REGION,BUCKET",
APP_ACTIONS = "create, delete, monitor"
]
#*******************************************************************************
# Authentication Driver Behavior Definition
#*******************************************************************************
# The configuration for each driver is defined in AUTH_MAD_CONF. These
# values must not be modified since they define the driver behavior.
# name : name of the auth driver
# password_change : allow the end users to change their own password. Oneadmin
# can still change other user's passwords
# driver_managed_groups : allow the driver to set the user's group even after
# user creation. In this case addgroup, delgroup and chgrp
# will be disabled, with the exception of chgrp to one of
# the groups in the list of secondary groups
# max_token_time : limit the maximum token validity, in seconds. Use -1 for
# unlimited maximum, 0 to disable login tokens
#*******************************************************************************
AUTH_MAD_CONF = [
NAME = "core",
PASSWORD_CHANGE = "YES",
DRIVER_MANAGED_GROUPS = "NO",
MAX_TOKEN_TIME = "-1"
]
AUTH_MAD_CONF = [
NAME = "public",
PASSWORD_CHANGE = "NO",
DRIVER_MANAGED_GROUPS = "NO",
MAX_TOKEN_TIME = "-1"
]
AUTH_MAD_CONF = [
NAME = "ssh",
PASSWORD_CHANGE = "YES",
DRIVER_MANAGED_GROUPS = "NO",
MAX_TOKEN_TIME = "-1"
]
AUTH_MAD_CONF = [
NAME = "x509",
PASSWORD_CHANGE = "NO",
DRIVER_MANAGED_GROUPS = "NO",
MAX_TOKEN_TIME = "-1"
]
AUTH_MAD_CONF = [
NAME = "ldap",
PASSWORD_CHANGE = "YES",
DRIVER_MANAGED_GROUPS = "NO",
MAX_TOKEN_TIME = "86400"
]
AUTH_MAD_CONF = [
NAME = "server_cipher",
PASSWORD_CHANGE = "NO",
DRIVER_MANAGED_GROUPS = "NO",
MAX_TOKEN_TIME = "-1"
]
AUTH_MAD_CONF = [
NAME = "server_x509",
PASSWORD_CHANGE = "NO",
DRIVER_MANAGED_GROUPS = "NO",
MAX_TOKEN_TIME = "-1"
]