Configuring your DC/OS parameters using a YAML file

The DC/OS configuration parameters are specified in YAML format in a config.yaml file. This file is stored on your bootstrap node and is used during DC/OS installation to generate a customized DC/OS build.

IMPORTANT: If you want to modify the configuration file after installation, you must follow the DC/OS upgrade process.


Key-value pairs

The config.yaml file is formatted as a list of key-value pairs.

For example:

bootstrap_url: file:///opt/dcos_install_tmp

Config blocks and lists

A config block is a group of configuration settings. It consists of the following:

  • A key followed by a colon, for example: agent_list:. The key of the config block must be on its own line, with no leading space.
  • A list of values formatted by using a single dash (-) followed by a space; or an indented set of one or more key-value pairs. The indentation for each key-value pair must be exactly two spaces. Do not use tabs.
  • Any number of empty lines or comment lines.

When a new config block appears in the file, the former config block is closed and the new one begins. A config block must only occur once in the file. For example:

- <master-private-ip-1>
- <master-private-ip-2>
- <master-private-ip-3>


Comment lines start with a hash symbol (#). They can be indented with any amount of leading space.

Partial-line comments, such as agent_list # this is my agent list, are not allowed. They will be treated as part of the value of the setting. To be treated as a comment, the hash sign must be the first non-space character on the line.

For example:

- <master-private-ip-1>
# here is a comment
- <master-private-ip-2>
- <master-private-ip-3>


Some parameters are dependent on others. These dependent parameters are ignored unless all dependencies are specified. These dependencies are shown in the documentation by nesting within the parent. For example, master_list is required only if you specify master_discovery: static.

Basic settings

Parameter Description
agent_list This parameter specifies a YAML nested list (-) of IPv4 addresses to your private agent host names.
bootstrap_url This required parameter specifies the URL path for the DC/OS installer to store the customized DC/OS build files.
cluster_name This parameter specifies the name of your cluster.
exhibitor_storage_backend This parameter specifies the type of storage backend to use for Exhibitor.
master_discovery This required parameter specifies the Mesos master discovery method.
public_agent_list This parameter specifies a YAML nested list (-) of IPv4 addresses to your public agent host names.
resolvers This required parameter specifies a block of YAML nested list (-) of DNS resolvers for your DC/OS cluster nodes.
security Enterprise This parameter specifies the security mode: permissive or strict.
ssh_port This parameter specifies the port to SSH to, for example 22.
ssh_user This parameter specifies the SSH username, for example centos.
superuser_password_hash Enterprise This required parameter specifies the hashed superuser password.
superuser_username Enterprise This required parameter specifies the user name of the superuser.
use_proxy This parameter specifies whether to enable the DC/OS proxy.

Advanced settings

See the configuration reference and examples.

Configure DC/OS for Proxy

By default, the DC/OS Catalog repository is hosted on the internet. If your DC/OS cluster is behind a corporate proxy, you must specify your proxy configuration in the configuration file file before installation. This will enable your cluster to connect to the Catalog packages.

NOTE: You should also configure an HTTP proxy for Docker.