Cisco Elastic Services Controller Installer Arguments
You need to specify the following bootvm.py script arguments to boot ESC instances.
Arguments |
Description |
||
---|---|---|---|
esc_hostname |
Specifies the host name of the ESC VM instance. |
||
--image |
Specifies the image id used in the OpenStack glance to boot up the ESC instance. |
||
--boot_volume |
Specify the volume name or id of the external bootable volume from where you want to launch ESC instance. |
||
--net |
Specifies the Network IDs or names in OpenStack that ESC connects to. |
||
--ipaddr |
|
||
--gateway_ip |
(Optional) Specifies the default gateway IP address of ESC. |
||
--os_auth_url |
(Optional) Specifies the OpenStack keystone url used by os_auth_url for authentication. |
||
--os_username |
(Optional) Specifies the OpenStack keystone username used by os_username for authentication. |
||
--os_password |
(Optional) Specifies the OpenStack keystone password used by os_password for authentication. |
||
--os_tenant_name |
(Optional) Specifies the OpenStack tenant name used by os_tenant_name for ESC deployment. |
||
--bs_os_auth_url |
(Optional) Specifies the OpenStack keystone url used by bs_os_auth_url for authentication. |
||
--bs_os_username |
(Optional) Specifies the OpenStack keystone username used by bs_os_username for authentication. |
||
--bs_os_password |
(Optional) Specifies the OpenStack keystone password used by bs_os_password for authentication. |
||
--bs_os_tenant_name |
(Optional) Specifies the OpenStack tenant name used by bs_os_tenant_name for ESC deployment. |
||
--flavor |
(Optional) Specifies the OpenStack flavor id to boot the ESC VM. |
||
--security_rules_file |
(Optional) Specifies the file to define security rules (IP, Port security) for ESC VM. |
||
--etc_hosts_file |
(Optional) Specifies the file for adding more entries to the ESC vm's hosts file (/etc/hosts). |
||
--avail_zone |
(Optional) Specifies the OpenStack zone used for ESC deployment. |
||
--esc_params_file |
(Optional) Specifies the default parameter file for ESC deployment. |
||
--db_volume_id |
(Optional) Specifies the cinder volume id to mount for database storage in ESC HA [ESC-HA]. |
||
-- ha_node_list |
|
||
--kad_vip |
(Optional) Specifies the IP address for Keepalived VIP (virtual IP) plus the interface of Keepalived VIP [ESC-HA]. An example format for specifying the interface of VIP is --kad_vip 192.0.2.1:eth2 or --kad_vip [2001:cc0:2020::fc]:eth2 |
||
--kad_vif |
(Optional) Specifies the interface for Keepalived virtual IP and keepalived VRRP [ESC-HA]. You can also use this argument to only specify the interface for Keepalived VRRP, if the VIP interface is already specified using the kad_vip argument. |
||
--kad_vri |
Specified the virtual router id of vrrp instance. Accepted values for kad_vri are 0 to 254. ESC VMs in the same HA should use the same kad_vri number. If kad_vip is not used for L3 HA, the kad_vir has to be used, otherwise, you can skip kad_vri argument. |
||
--route |
Specifies the routing configuration for ESC VM. |
||
--ntp_server |
(Optional) Specifies the NTP server address. |
||
--rsyslog_server |
(Optional) Specifies the IP address of rsyslog server that ESC sends the log to |
||
--rsyslog_server_port |
(Optional) Specifies the port of rsyslog server that ESC sends the log to. |
||
--rsyslog_server_protocol |
(Optional) Specifies the protocol to be used by the ESC to forward logs to the server. |
||
--secure |
|
||
--host_mapping_file |
(Optional) Specifies the host mapping file for VNF deployment. |
||
--version |
(Optional) Prints the version of bootvm.py and exits. |
||
--rng_virtio |
Enables installing and deploying the ESC VM on Libvirt/KVM with the RNG Virtio device. The default values are: device=/dev/random rate_period=1000 rate_bytes=1024 |
||
--user_pass |
This along with --user_confd_pass are mandatory arguments from 3.0 onwards.
Following is an example of --user_pass for admin account and stronger clear text passwords. Use single quotes to avoid conflict with shell reserved characters: -user_pass admin:'Strong4Security!'. Another example to install ESC using a password hash for both admin accounts. Use single quotes to avoid conflict with shell reserved characters: --user_pass admin:'$algorithm$salt$hash-of-salt-password'. ESC 2.1 and later, accepts the public key for this attribute. For example, the following will generate 'admin321' as the password for user 'admin' and use /tmp/abc.pub as the key file to inject the public key for it:
|
||
--user_confd_pass |
Following is an example of --user_confd_ pass for admin account and stronger clear text passwords. Use single quotes to avoid conflict with shell reserved characters: --user_confd_ pass:'Strong4Security!'. Another example, to install ESC using a password hash for both admin accounts. Use single quotes to avoid conflict with shell reserved characters: --user_confd_ pass:'$algorithm$salt$hash-of-salt-password'. ESC 2.1 and later, accepts the public key for this attribute. For example, the following will generate 'admin321' as the password for user 'admin' and use /tmp/abc.pub as the key file to inject the public key for it: --user_confd_ pass:admin321:/tmp/abc.pub |
||
--esc_portal_startup |
(Optional) Starts the ESC portal. |
||
--log |
(Optional) Specifies the log file. By default, logs to stdout. |
||
--esc_monitor_check_ips |
(Optional) Specifies the IP addresses that must be monitored by esc_monitor (for HA failover). |
||
--enable-https-rest |
(Optional) Enables a secure REST Interface for the created ESC VM. |
||
--enable-http-rest |
(Optional) Enables an unsecured REST Interface for the created ESC VM. |
||
--disable-rest-auth |
(Optional) Disables REST API authentication.
|
||
--enable-snmp-agent |
(Optional) Enables automatic start-up of the SNMP service. The default value is False. |
||
--ha_mode |
Specifies the ESC HA mode for HA installation. Specify one of the following available options for HA: no_ha: No HA, cinder: Shared Cinder Volume, drbd: Built-in DRBD, drbd_on_cinder: DRBD over Cinder Volume |
||
--enable-https-etsi |
(Optional) Enables a secure ETSI REST Interface for the created ESC VM. |
||
--enable-http-etsi |
(Optional) Enables an unsecured ETSI REST Interface for the created ESC VM. Enabling this interface is not recommended in a production environment. | ||
--encrypt_key |
Specifies the key for encryption. |
||
--proxy |
Uses the proxy on a given port. |
||
--noproxy |
Lists the hosts which do not use proxy. |
||
--kad_unicast_src_ip |
Specifies the source IP address of unicast. Should be the IP address of interface that ESC VM uses for unicast (L3) VRRP communication. Example: --kad_unicast_src_ip 10.0.0.1 |
||
--kad_unicast_peer |
Specified the peer IP addresses of unicast. Should be the ip address of interface that ESC peer VM uses for unicast (L3) VRRP communication. Example: --kad_unicast_peer 10.0.0.1 |
||
--placement_hint |
Use this argument to specify the placement of ESC HA virtual machines using the server group, samehost, differenthost filters.
|
||
--format {json} |
Use this argument to capture the success and failure message in the output. Example: $ ./bootvm.py --image ESC-2_3_0_8 --net network --format json --test-0 { "status" : "Success" , "vm_uuid" : "UUID" } |
||
--user_rest_pass |
Adds a user to access the Rest API. Format is username: password. This option can be repeated. |
||
--user_portal_pass |
Add a portal user. Format username: password. This option can be repeated. |
||
--user_etsi_pass |
Adds a user to access the ETSI REST API. Format username:password. This option can be repeated. |
||
--no_vim_credentials |
After the deployment is complete, the user can set these VIM credential through ESC's VIM/VIM User APIs (REST/Netconf). For more information on configuring through REST APIs and Netconf, see Configuring VIM credentials after installing ESC in the Post Installation Tasks chapter. |
||
--etsi_startup |
This argument is deprecated in ESC 4.4 and above, it is unavailable in future releases. The use of --etsi_startup shows an error message with the appropriate replacement argument to use. See --enable-etsi-http and --enable-etsi-https. |
Cisco Elastic Services Controller Installer File Reference
File |
Description |
security_rules_file |
The file contains the following:
|
etc_hosts_file |
The file contains one or more entries that you want to include in the /etc/hosts file. |
esc_params_file |
The file contains information to configure various parameters of ESC. For details on parameters that can be configured in the esc_params_file are described in table below. |
host_mapping_file |
The file contains information to map a network based on the hosts. |
ESC Configuration Parameters
Using this file, you can configure various ESC parameters during the installation. The parameters that can be configured are shown in the table.
openstack.endpoint=adminURL
affinity.filter=ServerGroupAffinity
esc_param.conf |
Type |
Default Value |
Description |
---|---|---|---|
default.vm_recovery_retries_max
|
Int |
3
|
Number of recovery attempts allowed per VM. |
openstack.endpoint
|
String |
publicURL
|
The parameter to set up the keystone endpoint value of ESC. Options: adminURL, publicURL You can change the default value using CLI or REST services.
|
log.level
|
String |
INFO
|
Level of logging. Options: INFO, Trace, DEBUG |
affinity.filter
|
String |
SameHostFilter
|
A constant string used to build PolicyEngine and initializing VM policy table. Options: SameHostFilter, ServerGroupAffinity |
anti_affinity.filter
|
String |
DifferentHostFilter
|
A constant string used to build PolicyEngine and initializing VM policy table. Options: DifferentHostFilter |
Note |
|
ServerGroupAntiAffinityFilter for Openstack
ESC adapts to use ServerGroupAntiAffinityFilter for Openstack.
REST
PUT
http://localhost:8080/ESCManager/v0/config/anti_affinity/filter/ServerGroupAntiAffinity
PUT
http://localhost:8080/ESCManager/v0/config/affinity/filter/ServerGroupAffinity
CLI
sudo escadm escmanager config set --key ANTI_AFFINITY.FILTER --value ServerGroupAntiAffinity
sudo escadm escmanager config set --key AFFINITY.FILTER --value ServerGroupAffinity
Important Points
ServerGroupAntiAffinityFilter from Openstack doesn't support inter-dep anti-affinit, scaling, and mix use of ServerGroup and default (SameHost/DifferentHost) filter. If you are using ServerGroupAntiAffinity filter, Intra vm group placement is not allowed. You can only use <placement_group> for the VM based placement policy, one VM per vm_group. You can not add a single vm group in two different placement_groups.