--- # :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 # 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' # :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) # # - 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) # # - 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' 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' template: 'Templates/debian-7-x86_64' folder: 'Pooled VMs/debian-7-x86_64' datastore: 'vmstorage' size: 5 timeout: 15 ready_ttl: 1440