Skip to content

operator job from app-autoscaler/9.4.0

Github source: d4df6e8e or master branch

Properties

autoscaler

appmetrics_db

address

IP address on which the appmetricsdb server will listen

Default
autoscalerpostgres.service.cf.internal
databases

The list of databases used in appmetricsdb database including name

db_scheme

Database scheme to be used to access appmetricsdb

Default
postgres
port

Port on which the appmetricsdb server will listen

roles

The list of database roles used in appmetricsdb database including name/password

sslmode

sslmode to connect to postgres server

Default
disable
tls
ca

PEM-encoded CA certificate for TLS database server

Default
""
certificate

PEM-encoded certificate for TLS database client

Default
""
private_key

PEM-encoded key for TLS database client

Default
""

appmetrics_db_connection_config

connection_max_lifetime
Default
60s
max_idle_connections
Default
1
max_open_connections
Default
10

cf

api

the Cloud Foundry API endpoint

client_id

the client id to log in cf

idle_connection_timeout_ms

The maximum amount of time an idle (keep-alive) connection will remain idle before closing itself. Zero means no limit.

Default
5000
max_idle_conns_per_host_ms

Controls the maximum idle (keep-alive) connections to keep pooled per-host. If zero, 2 is used.

Default
200
max_retries

The number of retries from the autoscaler to the cf api (cloud controller). 0 turns off the retries.

Default
3
max_retry_wait_ms

The maximum amount of time in milliseconds to wait between retries. 0 leaves it to the implementation to decide

Default
0
secret

the secret to log in cf

skip_ssl_validation

Flag to skip ssl validation to connect to CC and UAA

Default
false

changeloglock_timeout_seconds

Liquibase changelog lock timeout duration in seconds

Default
180

instancemetrics_db

address

IP address on which the instancemetricsdb server will listen

Default
autoscalerpostgres.service.cf.internal
databases

The list of databases used in instancemetricsdb database including name

db_scheme

Database scheme to be used to access instancemetricsdb

Default
postgres
port

Port on which the instancemetricsdb server will listen

roles

The list of database roles used in instancemetricsdb database including name/password

sslmode

sslmode to connect to postgres server

Default
disable
tls
ca

PEM-encoded ca certificate for TLS database server

Default
""
certificate

PEM-encoded certificate for TLS database client

Default
""
private_key

PEM-encoded key for tls database client

Default
""

instancemetrics_db_connection_config

connection_max_lifetime
Default
60s
max_idle_connections
Default
1
max_open_connections
Default
10

lock_db

address

IP address on which the lockdb server will listen

Default
autoscalerpostgres.service.cf.internal
databases

The list of databases used in lockdb database including name

db_scheme

Database scheme to be used to access lockdb

Default
postgres
port

Port on which the lockdb server will listen

roles

The list of database roles used in lockdb database including name/password

sslmode

sslmode to connect to postgres server

Default
disable
tls
ca

PEM-encoded ca certificate of tls database server

Default
""
certificate

PEM-encoded certificate of tls database client

Default
""
private_key

PEM-encoded key of tls database client

Default
""

lock_db_connection_config

connection_max_lifetime
Default
60s
max_idle_connections
Default
1
max_open_connections
Default
10

operator

app_metrics_db
cutoff_duration

the cutoff days when pruning appmetrics database

Default
48h
refresh_interval

the time interval to prune the appmetrics database

Default
1h
app_sync_interval

the time interval to sync applications

Default
24h
db_lock
retry_interval

lock db retry interval

Default
5s
ttl

database lock ttl

Default
15s
health
password

the password of health endpoint

Default
""
port

the listening port of health endpoint

Default
6208
username

the username of health endpoint

Default
""
hooks
post_start

Script to run after operator has started

Default
""
post_stop

Script to run after operator has stopped

Default
""
pre_start

Script to run before starting operator

Default
""
Example
|+
  #!/bin/bash
  echo "Going to start operator"
  echo "operator data directory is ${DATA_DIR}"
  echo "operator port is ${PORT}"
  echo "operator directory is ${PACKAGE_DIR}"
pre_stop

Script to run before stopping operator

Default
""
http_client_timeout

Http client imeout for operator to communicate with other autoscaler components

Default
60s
instance_metrics_db
cutoff_duration

the cutoff days when pruning instancemetrics database

Default
24h
refresh_interval

the time interval to prune the instancemetrics database

Default
1h
logging
level

the leve of logging

Default
info
require_consul

whether to start consul agent

Default
false
scaling_engine
ca_cert

PEM-encoded CA certificate

client_cert

PEM-encoded client certificate

client_key

PEM-encoded client key

host

Host where the scaling engine is running

Default
scalingengine.service.cf.internal
port

Port where the scaling engine will listen

Default
6104
sync_interval

the time interval to synchronize the scaling engine active schedules

Default
600s
scaling_engine_db
cutoff_duration

the cutoff days when pruning scalingengine database

Default
240h
refresh_interval

the time interval to prune the scalingengine database

Default
1h
scheduler
ca_cert

PEM-encoded CA certificate

client_cert

PEM-encoded client certificate

client_key

PEM-encoded client key

host

Host where the scheduler is running

Default
autoscalerscheduler.service.cf.internal
port

Port where the scheduler will listen

Default
6102
sync_interval

the time interval to synchronize the schedules

Default
600s

policy_db

address

IP address on which the policydb server will listen

Default
autoscalerpostgres.service.cf.internal
databases

The list of databases used in policydb database including name

db_scheme

Database scheme to be used to access policydb

Default
postgres
port

Port on which the policydb server will listen

roles

The list of database roles used in policydb database including name/password

sslmode

sslmode to connect to postgres server

Default
disable
tls
ca

PEM-encoded ca certificate of tls database server

Default
""
certificate

PEM-encoded certificate of tls database client

Default
""
private_key

PEM-encoded key of tls database client

Default
""

policy_db_connection_config

connection_max_lifetime
Default
60s
max_idle_connections
Default
1
max_open_connections
Default
10

scalingengine_db

address

IP address on which the scalingenginedb server will listen

Default
autoscalerpostgres.service.cf.internal
databases

The list of databases used in scalingenginedb database including name

db_scheme

Database scheme to be used to access scalingenginedb

Default
postgres
port

Port on which the scalingenginedb server will listen

roles

The list of database roles used in scalingenginedb database including name/password

sslmode

sslmode to connect to postgres server

Default
disable
tls
ca

PEM-encoded ca certificate for TLS database server

Default
""
certificate

PEM-encoded certificate for TLS database client

Default
""
private_key

PEM-encoded key for TLS database client

Default
""

scalingengine_db_connection_config

connection_max_lifetime
Default
60s
max_idle_connections
Default
1
max_open_connections
Default
10

Templates

Templates are rendered and placed onto corresponding instances during the deployment process. This job's templates will be placed into /var/vcap/jobs/operator/ directory (learn more).

  • bin/hooks/post-start.sh (from hooks/post-start.sh.erb)
  • bin/hooks/post-stop.sh (from hooks/post-stop.sh.erb)
  • bin/hooks/pre-start.sh (from hooks/pre-start.sh.erb)
  • bin/hooks/pre-stop.sh (from hooks/pre-stop.sh.erb)
  • bin/liquibase.properties (from liquibase.properties)
  • bin/operator_ctl (from operator_ctl)
  • bin/pre-start (from pre-start.erb)
  • config/certs/appmetrics_db/ca.crt (from appmetrics_db_ca.crt.erb)
  • config/certs/appmetrics_db/crt (from appmetrics_db.crt.erb)
  • config/certs/appmetrics_db/key (from appmetrics_db.key.erb)
  • config/certs/instancemetrics_db/ca.crt (from appinstancemetrics_db_ca.crt.erb)
  • config/certs/instancemetrics_db/crt (from appinstancemetrics_db.crt.erb)
  • config/certs/instancemetrics_db/key (from appinstancemetrics_db.key.erb)
  • config/certs/lock_db/ca.crt (from lock_db_ca.crt.erb)
  • config/certs/lock_db/crt (from lock_db.crt.erb)
  • config/certs/lock_db/key (from lock_db.key.erb)
  • config/certs/policy_db/ca.crt (from policy_db_ca.crt.erb)
  • config/certs/policy_db/crt (from policy_db.crt.erb)
  • config/certs/policy_db/key (from policy_db.key.erb)
  • config/certs/scalingengine/ca.crt (from scalingengine_ca.crt.erb)
  • config/certs/scalingengine/client.crt (from scalingengine_client.crt.erb)
  • config/certs/scalingengine/client.key (from scalingengine_client.key.erb)
  • config/certs/scalingengine_db/ca.crt (from scalingengine_db_ca.crt.erb)
  • config/certs/scalingengine_db/crt (from scalingengine_db.crt.erb)
  • config/certs/scalingengine_db/key (from scalingengine_db.key.erb)
  • config/certs/scheduler/ca.crt (from scheduler_ca.crt.erb)
  • config/certs/scheduler/client.crt (from scheduler_client.crt.erb)
  • config/certs/scheduler/client.key (from scheduler_client.key.erb)
  • config/operator.yml (from operator.yml.erb)

Packages

Packages are compiled and placed onto corresponding instances during the deployment process. Packages will be placed into /var/vcap/packages/ directory.