Configuring¶
Received variables¶
List of variables with their extraction methods are available in the appendix:
Variable example:
AUTH_URL
Variable default value: http://localhost:5000
Variable extraction sequence: OS_AUTH_URL
where:
AUTH_URL
is the internal variable name;http://localhost:5000
is the default value for the variable, if none of the extraction methods found a variable by the extraction sequence;OS_AUTH_URL
is the name of the variable from which the value for the specified internal variable will be retrieved.
Module variables¶
Use the appropriate prefix in order to set parameters for a specific module. Module prefixes:
- Dashboard -
DASH
; - Monitor -
MONITOR
; - CloudManager -
CM
; - Scheduler -
SCHEDULER
; - Journal -
JOURNAL
; - RSserver -
RS
.
Example:
Suppose there are following variables in the global environment:
DB_SUPERUSER_PASSWORD="123456"
CM_DB_SUPERUSER_PASSWORD="cloud_pass"
Variable will be extracted as the password to access database based on the extraction methods.
In this case the password for accessing database will be 123456
for all modules except CloudManager and the password will be cloud_pass
for the module CloudManager.
Extraction methods¶
Product settings are managed in the following ways:
- Through operating system environment variables;
- Reading existing modules configuration files (will be performed when specifying the
--overwrite-configs
utility argument); - Passing parameters to the
autosetup
script arguments; - Through the script argument
autosetup
(parameterconfig_file
) specifying the config file.
Order of the methods determines the retrieval of the variable.
Each next one overrides the value extracted earlier, this ensures the retrieval priority.
Setting up auto installation¶
System arguments passed to the utility¶
Utility behavior control arguments¶
Name | Description | Default value |
---|---|---|
--config-file |
Config file containing variable parameters. Description of use is presented in subsection «Using the configuration file». | |
--generate-config-file |
Launching a questionnaire to generate a config file with the variables necessary for autoinstallation. Critical variables are highlighted in red. | |
--all-variables |
Launching questionnaire in the mode of requesting confirmation of the value for all variables. If no argument is specified, only values for the required variables will be requested. | |
--packages |
List of packages to install (all available by default). Module names are separated by gap, for example: aos-autosetup --packages cloudmanager dashboard
Available packages: dashboard
monitor
cloudmanager
scheduler
journal
rs_server
|
|
--no-check-connection |
Skipping the availability check of the services used by the specified parameters and necessary for the modules to work. | |
--cloud-domain-policy |
Specifying this argument will configure OpenStack and modules for the domain management functions. When used with the –delete option, the settings will be overridden. Detailed information is available at the link. | |
--update |
Updating installed packages. | False |
--delete |
Removing installed packages and adding postfix .d in the names of configuration files. |
False |
--rollback |
If this argument is specified, the environment will be rolled back pip. | False |
--file-path |
It specifies the path to the file containing the package versions to which the environment should be rolled back when used with the --rollback argument pip. |
|
--force |
It allows, ignoring errors of connection to services, to delete additionally: everything created in database, configuration files, installed licenses, directory logs, RabbitMQ user, virtual hosts RabbitMQ when used with parameter --delete . |
|
--verbose |
Turning on verbose output. Specifying this argument will set the logging level to DEBUG . Detailed description is available in the section Logging levels. |
|
--overwrite-configs |
If this argument is specified, the existing configuration files will be updated. | |
--incompatible-pkg |
If this attribute is specified, the user will not be prompted to enter a confirmation for different versions of the installed packages. | |
--package-version |
The version of the packages to install. It is ignored when using arguments
|
|
--source |
Way of installing packages. Possible values:
|
pip |
--use-ldap |
If this argument is specified, when installing and updating modules, the standard LDAP driver used in Keystone will be overwritten in the domains configuration files with the updated driver. If this argument is used, the driver will return to the standard one when completely removing modules. | |
--lic |
The path to the license file. It can be specified as a path to a file on disk, or a URL. | |
--theme-name |
Theme name to install. If the theme is not specified all themes will be installed. Possible values:
|
Arguments defining parameters of installing modules¶
Name | Description | Default value |
---|---|---|
--system-username |
Username. | aos |
--log-level |
Variable for level logging. | INFO |
--os-auth-url |
Address for authorizing the service Keystone, the parameter value is extracted into the variable AUTH_URL . |
http://localhost:5000 |
--os-username |
Keystone service username, parameter value is extracted into variable AUTH_USERNAME . |
admin |
--os-password |
Keystone service user password, parameter value is extracted into variables AUTH_PASSWORD and SERVICE_PASSWORD , it can also be extracted to variables DB_USER_PASSWORD , DB_SUPERUSER_PASSWORD and thus serve as the user password to database. |
|
--os-project-name , --OS_TENANT_NAME |
Project OpenStack name, parameter value is extracted into variable PROJECT_NAME . |
admin |
--os-project-domain-name |
Project domain name, parameter value is extracted into variable PROJECT_DOMAIN_NAME . |
default |
--os-user-domain-name |
OpenStack user domain name, parameter value is extracted into variable USER_DOMAIN_NAME . |
default |
--compute-service-name |
Nova service type. | compute |
--volume-service-name |
Cinder service type. | volumev3 |
--gnocchi-service-name |
Gnocchi service type. | metric |
--network-service-name |
Neutron service type. | network |
--os-volume-api-version |
Cinder service REST API version, parameter value is extracted into variable VOLUME_API_VERSION . |
3.50 |
--os-network-api-version |
Neutron, parameter value is extracted into variable NETWORK_API_VERSION . |
2 |
--db-superuser-name |
Database superuser. | root |
--db-username |
database user. | aos |
--db-engine |
database type. | mysql+pymysql |
--db-host |
Host on which database is located. | controller |
--db-port |
Database connection port. | 3306 |
--broker-type |
RabbitMQ service broker type. | AMQP |
--rabbit-host |
Host on which RabbitMQ service is located. | controller |
--rabbit-port |
RabbitMQ service connection port. | 5672 |
--rabbit-username |
RabbitMQ username. | aos |
--rabbit-password |
RabbitMQ user password. | password |
--rabbit-virthost |
RabbitMQ virtual host. | aos |
--db-superuser-password |
Superuser password to database, parameter value is extracted into variable DB_SUPERUSER_PASSWORD . |
|
--db-user-password |
User password to database, parameter value is extracted into variable DB_USER_PASSWORD . |
|
--db-allowed-hosts |
List of hosts that are allowed to connect to database. | Value % means all hosts are allowed access. Host names are separated by commas. |
--pypi-host |
pypi server address used to install packages. | Value is taken depending on the installed OpenStack version. |
--pip-args |
pip additional arguments required when installing or updating modules. | |
--pkg-version |
Version of installed packages. | |
--source |
Package installation method (pip, apt-get, yum). | pip |
--admin-domain-id |
Domain ID of the user with administrator rights. | |
--domain-user |
Domain user with administrator rights. | admin |
--memcache-location |
URL address to access the caching system. | localhost:11211 |
--nova-rabbit-vhost |
Nova RabbitMQ service virtual host. | / |
--keystone-rabbit-vhost |
Keystone RabbitMQ service virtual host. | / |
--sentry-enabled |
Parameter responsible for logging errors in Sentry. | False |
--sentry-dsn |
Sentry server address contains user key and project id. | It is unique for each modules. |
--sentry-log-level |
Sentry logging level. | CRITICAL |
--service-user |
Service username. | aos |
--service-password |
Service user password. | |
--service-project |
OpenStack service user Project name. | service |
--service-user-domain-name |
OpenStack service user domain name. | default |
--service-project-domain-name |
Project OpenStack service user domain name. | default |
--redis-host |
Host where Redis service is located. | localhost |
--redis-port |
Redis service connection port. | 6379 |
--redis-password |
Redis service password. | password |
--journal-db-name |
Journal module Database name. | journal |
--journal-service-name |
Journal module service name. | journal |
--journal-service-port |
Journal module service port. | 9360 |
--dash-db-name |
Dashboard module Database name. | dashboard |
--monitor-db-name |
Monitor module Database name. | monitor |
--monitor-service-name |
Monitor module service name. | monitor |
--monitor-service-port |
Monitor module service port. | 9363 |
--monitor-zabbix-host-group |
Name of the host group that will be searched by default for templates in Zabbix. | aos |
--monitor-zabbix-host |
Zabbix service path. | localhost |
--monitor-zabbix-password |
Password of a user with administrator rights in Zabbix. | zabbix |
--monitor-zabbix-username |
Username with administrator rights in Zabbix. | Admin |
--cm-db-name |
CloudManager module Database name. | cloud_manager |
--cm-service-name |
CloudManager module service name. | cloud-manager |
--cm-service-port |
CloudManager module service port. | 9362 |
--scheduler-db-name |
Scheduler module Database name. | scheduler |
--scheduler-service-name |
Scheduler module service name. | scheduler |
--scheduler-service-port |
Scheduler module service port. | 10001 |
--rs-db-name |
RSserver module Database name. | rs_server |
--rs-service-name |
RSserver module service name. | rs-server |
--rs-service-port |
RSserver module service port. | 9364 |
--rs-memcache-location |
URL to access the caching system. | localhost:11211 |
Environment variables¶
Environment variables are extracted by name from system environment variables. Only those that are in the list of extracted variables are used. If the environment variable LC_ALL
is not specified, then it is created, the value for it is used from the variable LANG
.
Configuring autoinstallation using a script¶
Using the module console utility¶
Variables can be specified in the parameters of the script passing them in the following form:
aos-autosetup --os-auth-url "http://controller:5000" --os-username root
aos-autosetup --help - this command lists all the available arguments in order
Using a config file¶
It is specified via a script parameter config-file
:
aos-autosetup --config-file ~/adm
Example configuration file:
export OS_AUTH_URL="http://controller:5000"
export OS_USERNAME=root
It is also possible to initialize variables using existing module configuration files. It is need to specify the argument --overwrite-configs
to do this:
aos-autosetup --overwrite-configs
Using the console utility and pip arguments¶
These arguments are specified via a script parameter pip-args
.
Example:
aos-autosetup --pip-args="--no-deps"
aos-autosetup --pip-args="--pre --no-deps"
Installing modules without access to the Internet:
aos-autosetup --pip-args="--no-index --find-links ./packages"
where packages
is a directory with packages and their dependencies.