mirror of
https://github.com/puppetlabs/vmpooler.git
synced 2026-01-26 01:58:41 -05:00
247 lines
5.6 KiB
Text
247 lines
5.6 KiB
Text
---
|
|
# :vsphere:
|
|
#
|
|
# This section contains the server hostname and authentication credentials
|
|
# needed for vmpooler to connect to VMware vSphere.
|
|
#
|
|
# Available configuration parameters:
|
|
#
|
|
# - server
|
|
# The FQDN hostname of the VMware vSphere server.
|
|
# (required)
|
|
#
|
|
# - username
|
|
# The username used to authenticate VMware vSphere.
|
|
# (required)
|
|
#
|
|
# - password
|
|
# The password used to authenticate VMware vSphere.
|
|
# (required)
|
|
|
|
# Example:
|
|
|
|
:vsphere:
|
|
server: 'vsphere.company.com'
|
|
username: 'vmpooler'
|
|
password: 'swimsw1msw!m'
|
|
|
|
# :redis:
|
|
#
|
|
# This section contains the server hostname and authentication credentials
|
|
# needed for vmpooler to connect to Redis.
|
|
#
|
|
# Available configuration parameters:
|
|
#
|
|
# - server
|
|
# The FQDN hostname of the Redis server.
|
|
# (optional; default: 'localhost')
|
|
#
|
|
# - username
|
|
# The username used to authenticate Redis.
|
|
# (optional)
|
|
#
|
|
# - password
|
|
# The password used to authenticate Redis.
|
|
# (optional)
|
|
#
|
|
# - data_ttl
|
|
# How long (in hours) to retain metadata in Redis after VM destruction.
|
|
# (optional; default: '168')
|
|
|
|
# Example:
|
|
|
|
:redis:
|
|
server: 'redis.company.com'
|
|
|
|
# :graphite:
|
|
#
|
|
# This section contains the connection information required to store
|
|
# historical data in an external Graphite database.
|
|
#
|
|
# Available configuration parameters:
|
|
#
|
|
# - server
|
|
# The FQDN hostname of the Graphite server.
|
|
# (optional)
|
|
#
|
|
# - prefix
|
|
# The prefix to use while storing Graphite data.
|
|
# (optional; default: 'vmpooler')
|
|
|
|
# Example:
|
|
|
|
:graphite:
|
|
server: 'graphite.company.com'
|
|
|
|
# :auth:
|
|
#
|
|
# This section contains information related to authenticating users
|
|
# for token operations.
|
|
#
|
|
# Currently the only supported provider is LDAP; the following parameters
|
|
# will all be under an ':ldap:' subsection (see example below).
|
|
#
|
|
# Available configuration parameters:
|
|
#
|
|
# - host
|
|
# The FQDN hostname of the LDAP server.
|
|
#
|
|
# - port
|
|
# The port used to connect to the LDAP service.
|
|
# (optional; default: '389')
|
|
#
|
|
# - base
|
|
# The base DN used for LDAP searches.
|
|
#
|
|
# - user_object
|
|
# The LDAP object-type used to designate a user object.
|
|
|
|
# Example:
|
|
|
|
:auth:
|
|
provider: 'ldap'
|
|
:ldap:
|
|
host: 'ldap.company.com'
|
|
port: 389
|
|
base: 'ou=users,dc=company,dc=com'
|
|
user_object: 'uid'
|
|
|
|
# :tagfilter:
|
|
#
|
|
# Filter tags by regular expression.
|
|
|
|
# Example:
|
|
#
|
|
# This example demonstrates discarding everything after a '/' character for
|
|
# the 'url' tag, transforming 'foo.com/something.html' to 'foo.com'.
|
|
|
|
:tagfilter:
|
|
url: '(.*)\/'
|
|
|
|
# :config:
|
|
#
|
|
# This section contains global configuration information.
|
|
#
|
|
# Available configuration parameters:
|
|
#
|
|
# - site_name
|
|
# The name of your deployment.
|
|
# (optional; default: 'vmpooler')
|
|
#
|
|
# - logfile
|
|
# The path to vmpooler's log file.
|
|
# (optional; default: '/var/log/vmpooler.log')
|
|
#
|
|
# - clone_target
|
|
# The target cluster VMs are cloned into (host with least VMs chosen)
|
|
# (optional; default: same cluster/host as origin template)
|
|
#
|
|
# - task_limit
|
|
# The number of concurrent VMware vSphere tasks to perform.
|
|
# (optional; default: '10')
|
|
#
|
|
# - timeout
|
|
# How long (in minutes) before marking a clone as 'failed' and retrying.
|
|
# (optional; default: '15')
|
|
#
|
|
# - vm_checktime
|
|
# How often (in minutes) to check the sanity of VMs in 'ready' queues.
|
|
# (optional; default: '15')
|
|
#
|
|
# - vm_lifetime
|
|
# How long (in hours) to keep VMs in 'running' queues before destroying.
|
|
# (optional; default: '24')
|
|
#
|
|
# - vm_lifetime_auth
|
|
# Same as vm_lifetime, but applied if a valid authentication token is
|
|
# included during the request.
|
|
#
|
|
# - allowed_tags
|
|
# If set, restricts tags to those specified in this array.
|
|
#
|
|
# - domain
|
|
# If set, returns a top-level 'domain' JSON key in POST requests
|
|
#
|
|
# - prefix
|
|
# If set, prefixes all created VMs with this string.
|
|
|
|
# Example:
|
|
|
|
:config:
|
|
site_name: 'vmpooler'
|
|
logfile: '/var/log/vmpooler.log'
|
|
task_limit: 10
|
|
timeout: 15
|
|
vm_checktime: 15
|
|
vm_lifetime: 12
|
|
vm_lifetime_auth: 24
|
|
allowed_tags:
|
|
- 'created_by'
|
|
- 'project'
|
|
domain: 'company.com'
|
|
prefix: ''
|
|
|
|
# :pools:
|
|
#
|
|
# This section contains a list of virtual machine 'pools' for vmpooler to
|
|
# create and maintain.
|
|
#
|
|
# Available configuration parameters (per-pool):
|
|
#
|
|
# - name
|
|
# The name of the pool.
|
|
# (required)
|
|
#
|
|
# - alias
|
|
# Other names this pool can be requested as.
|
|
# (optional)
|
|
#
|
|
# - template
|
|
# The template or virtual machine target to spawn clones from.
|
|
# (required)
|
|
#
|
|
# - folder
|
|
# The vSphere 'folder' destination for spawned clones.
|
|
# (required)
|
|
#
|
|
# - datastore
|
|
# The vSphere 'datastore' destination for spawned clones.
|
|
# (required)
|
|
#
|
|
# - size
|
|
# The number of waiting VMs to keep in a pool.
|
|
# (required)
|
|
#
|
|
# - clone_target
|
|
# Per-pool option to override the global 'clone_target' cluster.
|
|
# (optional)
|
|
#
|
|
# - timeout
|
|
# How long (in minutes) before marking a clone as 'failed' and retrying.
|
|
# This setting overrides any globally-configured timeout setting.
|
|
# (optional; default: '15')
|
|
#
|
|
# - ready_ttl
|
|
# How long (in minutes) to keep VMs in 'ready' queues before destroying.
|
|
# (optional)
|
|
|
|
# Example:
|
|
|
|
:pools:
|
|
- name: 'debian-7-i386'
|
|
alias: [ 'debian-7-32' ]
|
|
template: 'Templates/debian-7-i386'
|
|
folder: 'Pooled VMs/debian-7-i386'
|
|
datastore: 'vmstorage'
|
|
size: 5
|
|
timeout: 15
|
|
ready_ttl: 1440
|
|
- name: 'debian-7-x86_64'
|
|
alias: [ 'debian-7-64', 'debian-7-amd64' ]
|
|
template: 'Templates/debian-7-x86_64'
|
|
folder: 'Pooled VMs/debian-7-x86_64'
|
|
datastore: 'vmstorage'
|
|
size: 5
|
|
timeout: 15
|
|
ready_ttl: 1440
|
|
|