When editing the /usr/local/bin/anka-controllerd, be sure to use export when setting the ENV
Name
Type
Description
Default Value
Argument
ini
ENV
version
bool
Prints controller version and exits
-
--version
version
ANKA_VERSION
Registry address
string
Anka Registry external URL (http[s]://hostname:[port]). This is passed to the Nodes, so they can download (and start) VMs
(required)
--anka-registry
anka_registry
ANKA_ANKA_REGISTRY
Configuration file
string
Path to a configuration file in INI format. You can use the file with/without the command line parameters and env variables
-
--config
config
ANKA_CONFIG
Listen address
string
Listen on this address (:80 is equivalent to 0.0.0.0:80). Use the format [address]:port
:80
--listen_addr
listen_addr
ANKA_LISTEN_ADDR
Local Registry Address
string
Anka Registry local address in format http[s]://hostname:[port]. This parameter is for situations where the Controller and Registry are on the same network. For example http://locahost:8089
-
--local-anka-registry
local_anka_registry
ANKA_LOCAL_ANKA_REGISTRY
Number of concurrent workers
int
The number of concurrent workers processing node tasks
2
--num-workers
num_workers
ANKA_NUM_WORKERS
Standalone mode
bool
Run an embedded ETCD server alongside the controller
false
--standalone
standalone
ANKA_STANDALONE
ETCD endpoints
string
Comma separated list of etcd hosts
127.0.0.1:2379
--etcd-endpoints
etcd_endpoints
ANKA_ETCD_ENDPOINTS
Allow empty registry
bool
Allow controller to start without a ‘Registry address’
false
--allow-empty-registry
allow_empty_registry
ANKA_ALLOW_EMPTY_REGISTRY
Enable event logging
bool
Enables event logging
false
--enable-event-logging
enable_event_logging
ANKA_ENABLE_EVENT_LOGGING
Event log url
string
The URL to post events (in json format)
-
--event-log-url
event_log_url
ANKA_EVENT_LOG_URL
Enable central logging
bool
Enables central logging
false
--enable-central-logging
enable_central_logging
ANKA_ENABLE_CENTRAL_LOGGING
Push registry
string
Comma separated list of Registry addresses to use for push operations
-
--push-registry
push_registry
ANKA_PUSH_REGISTRY
ETCD defrag interval
duration
Defrag ETCD (all servers) in this interval. Pass 0 to disable
3h
--defrag-db-interval
defrag_db_interval
ANKA_DEFRAG_DB_INTERVAL
Instance time out
duration
The time that instances stay in ‘Terminated’ state
1m
--instance-time-out
instance_time_out
ANKA_INSTANCE_TIME_OUT
Event logging requires a Enterprise Plus license and will show under the Controller's Logs section after the first instance is created.
Logging
Name
Type
Description
default value
command line
ini
env
Log level
int
Log level verbosity. Higher number means more verbose
0
--v
v
ANKA_V
Log to stderr
bool
log to standard error instead of files
false
--logtostderr
logtostderr
ANKA_LOGTOSTDERR
Log directory
string
Write log files in this directory
--log_dir
log_dir
ANKA_LOG_DIR
Also log to stderr
bool
Log to standard error as well as files
true
--alsologtostderr
alsologtostderr
ANKA_ALSOLOGTOSTDERR
TLS
Name
Type
Description
Default value
command line
ini
env
Enable https
bool
Use https protocol for the controller portal/APIs. Must pass this to enable TLS
false
--use-https
use_https
ANKA_USE_HTTPS
CA certificate
string
Path to a CA cert to use for authenticating clients
-
--ca-cert
ca_cert
ANKA_CA_CERT
Root certificate
string
Similar to CA certificate
-
--root-cert
root_cert
ANKA_ROOT_CERT
Server certificate
string
Path to TLS server certificate
-
--server-cert
server_cert
ANKA_SERVER_CERT
Server certificate key
string
Path to the server certificate's private key
-
--server-key
server_key
ANKA_SERVER_KEY
Skip TLS verification
bool
Don't verify TLS certificates
false
--skip-tls-verification
skip_tls_verification
ANKA_SKIP_TLS_VERIFICATION
Client certificate
string
Path to client certificate. The Controller will use this certificate when making http requests (mainly to the Registry).
-
--client-cert
client_cert
ANKA_CLIENT_CERT
Client certificate key
string
Path to the client certificate's private key
-
--client-cert-key
client_cert_key
ANKA_CLIENT_CERT_KEY
Client keystore
string
Path to a client keystore file in pkcs12 format. The Controller will use the certificate from this key store when making http requests (mainly to the Registry).
-
--client-keystore
client_keystore
ANKA_CLIENT_KEYSTORE
Client keystore password
string
Password for the client keystore (optional).
-
--client-keypass
client_keypass
ANKA_CLIENT_KEYPASS
Built in Registry
Name
Type
Description
default value
command line
ini
env
Run registry
bool
Run the embedded Registry server
false
--run-registry
run_registry
ANKA_RUN_REGISTRY
Registry listen address
string
Address for Registry to listen on (:8089 is equivalent to 0.0.0.0:8089). Use the format [address]:port
:8089
--registry-listen-address
registry_listen_address
ANKA_REGISTRY_LISTEN_ADDRESS
Registry base path
string
Path for registry's data
-
--registry-base-path
registry_base_path
ANKA_REGISTRY_BASE_PATH
Registry access logs
bool
Enables registry access logs
false
--registry-access-logs
registry_access_logs
ANKA_REGISTRY_ACCESS_LOGS
Enable registry authorization
Enables authorization for the Registry
false
--enable-registry-authorization
enable_registry_authorization
ANKA_ENABLE_REGISTRY_AUTHORIZATION
Built in ETCD
Name
Type
Description
default value
command line
ini
env
Server name
string
Human readable name for ETCD server
anka-etcd
--name
name
ANKA_NAME
Data directory
string
Path to use for saving ETCD data
/tmp/etcd-data
--data-dir
data_dir
ANKA_DATA_DIR
Initial cluster
string
Initial cluster configuration for bootstrapping etcd server
anka-etcd=http://0.0.0.0:2380
--initial-cluster
initial_cluster
ANKA_INITIAL_CLUSTER
Listen peer urls
string
Comma separated URLs for ETCD server to server communication (when clustering ETCD)
http://0.0.0.0:2380
--listen-peer-urls
listen_peer_urls
ANKA_LISTEN_PEER_URLS
Initial advertise peer urls
string
Comma separated URLs for ETCD server to server communication to advertise
http://0.0.0.0:2380
--initial-advertise-peer-urls
initial_advertise_peer_urls
ANKA_INITIAL_ADVERTISE_PEER_URLS
Initial ETCD state
string
Initial ETCD cluster state (‘new’ or ‘existing’)
new
--initial-cluster-state
initial_cluster_state
ANKA_INITIAL_CLUSTER_STATE
Initial ETCD token
string
Initial token for the ETCD cluster during bootstrap
etcd-server
--initial-cluster-token
initial_cluster_token
ANKA_INITIAL_CLUSTER_TOKEN
Listen client urls
string
Comma separated URLs for ETCD to serve clients (Controller)
http://127.0.0.1:2379
--listen-client-urls
listen_client_urls
ANKA_LISTEN_CLIENT_URLS
Auto compaction mode
string
Auto compaction mode, either ‘periodic’ or ‘revision’.
periodic
--auto-compaction-mode
auto_compaction_mode
ANKA_AUTO_COMPACTION_MODE
Advertise client urls
string
Client urls for etcd server to advertise
http://127.0.0.1:2379
--advertise-client-urls
advertise_client_urls
ANKA_ADVERTISE_CLIENT_URLS
Compaction retention interval
string
Auto compaction retention length. 0 means disable auto compaction.
30m
--auto-compaction-retention
auto_compaction_retention
ANKA_AUTO_COMPACTION_RETENTION
Authentication and Authorization
Name
Type
Description
default value
command line
ini
env
Anable authentication
bool
Enable authentication module. Must pass this for authentication to work
false
--enable-auth
enable_auth
ANKA_ENABLE_AUTH
Root static token
string
A token to authenticate as super user
-
--root-token
root_token
ANKA_ROOT_TOKEN
OpenId connect display name
string
Name of open id server to display in login page. The text will say “Login with X”
-
--oidc-display-name
oidc_display_name
ANKA_OIDC_DISPLAY_NAME
OpenId connect provider url
string
Open ID connect provider url
-
--oidc-provider-url
oidc_provider_url
ANKA_OIDC_PROVIDER_URL
OpenId connect client id
string
Open ID connect client id
-
--oidc-client-id
oidc_client_id
ANKA_OIDC_CLIENT_ID
OpenId connect username claim
string
Open ID connect claim key to use for user name
name
--oidc-username-claim
oidc_username_claim
ANKA_OIDC_USERNAME_CLAIM
OpenId connect groups claim
string
Open ID connect claim key to use for groups,
groups
--oidc-groups-claim
oidc_groups_claim
ANKA_OIDC_GROUPS_CLAIM
Separate queue interface
note - This is an advanced feature, it allows you to have a second http interface that will be used only by the cluster's Nodes.
Name
Type
Description
default value
command line
ini
env
Queue address
string
Setting this address will activate a separate http server that will only serve queue requests (only for Node communication).
-
--queue-addr
queue_addr
ANKA_QUEUE_ADDR
Queue CA certificate
string
Path to a CA certificate to use for authenticating clients
-
--queue-ca-cert
queue_ca_cert
ANKA_QUEUE_CA_CERT
Queue server certificate
string
Path to TLS server certificate
-
--queue-server-cert
queue_server_cert
ANKA_QUEUE_SERVER_CERT
Queue server certificate key
string
Path to the server certificate's private key
-
--queue-server-key
queue_server_key
ANKA_QUEUE_SERVER_KEY
Use queue TLS
Enables queue tls
false
--use-queue-tls
use_queue_tls
ANKA_USE_QUEUE_TLS
Enable queue auth
Enables queue authentication/authorization
false
--enable-queue-auth
enable_queue_auth
ANKA_ENABLE_QUEUE_AUTH
Internal
Parameters used internally. It's recommended to use the default values.
Name
Type
Description
default value
command line
ini
env
Clean process interval
duration
The interval to clean the queues (delete any tasks older than 24 hours), 0 to disable
1h
--clean-queues-interval
clean_queues_interval
ANKA_CLEAN_QUEUES_INTERVAL
allow cors
bool
If true adds Acces-Control-Allow-Origin to all routes
default
--allow-cors
allow_cors
ANKA_ALLOW_CORS
Scheduler interval
duration
Interval for checking scheduled tasks
30m
--scheduler-interval
scheduler_interval
ANKA_SCHEDULER_INTERVAL
allowUnknownFlags
Don't terminate the app if ini file contains unknown flags.
default
--allowUnknownFlags
allowUnknownFlags
ANKA_ALLOWUNKNOWNFLAGS
Dump flags
bool
Dumps values for all flags defined in the app into stdout in ini-compatible syntax and terminates the app.