Troubleshooting ESC Issues. Cisco Elastic Services Controller
Реклама
Реклама
C H A P T E R
22
Troubleshooting ESC Issues
This chapter contains the following sections:
•
Viewing ESC Log Messages, on page 165
•
General Installation Errors, on page 170
•
ESC Failover Scenarios, on page 173
Viewing ESC Log Messages
Log messages are created for ESC events throughout the VNF lifecycle. These can be external messages, messages from ESC to other external systems, error messages, warnings, events, failures and so on. The log file can be found at /var/log/esc/escmanager_tagged.log
.
The log message format is as follows: date=<time-date>] [loglevel=<loglevel>] [tid=<transactionid>] [cl=<classifications>]
[tags=<tags>] [msg=<message>
Sample log is as follows: date=15:43:58,46022-Nov-2016]
[loglevel=ERROR ] [tid=0793b5c9-8255-47f3-81e6-fbb59f6571f7] [cl=OS ]
[tags=wf:create_vm,eventType:VM_DEPLOY_EVENT,tenant:CSCvd94541,depName:test-dep,vmGrpName:test-VNF, vmName:test-dep_test_0_dc3f406c-05ca-43b3-af21-0841e3b029a0]
[tags=wf:create_vm,eventType:VM_DEPLOY_EVENT,tenant:test,depName:test-dep,vmGrpName:test-VNF, vmName:test-dep_test_0_dc3f406c-05ca-43b3-af21-0841e3b029a0] [msg=sleepingfor5seconds to allow vm to become ACTIVE instance id:
162344f7-78f9-4e45-9f23-34cf87377fa7 name:test-dep_test_0_dc3f406c-05ca-43b3-af21-0841e3b029a0
When a request is received, a RequestDetails object is created which autogenerates a unique transaction id.
This value is carried forward across all threads. Classifications and tags are optional. These are prefixes added to the log messages to enhance readability, and help in debugging. With classifications and tags, the log messages can be easily parsed and filtered by the log analysis tools.
The following classifications are supported:
NBI
SBI
"com.cisco.esc.rest""com.cisco.esc.filter"(North Bound Interface -
Clientinterface)
"com.cisco.esc.rest"- source is a callback handler or"EventsResource"(South
Bound Interface - i.e. between ESC and the VIM)
Cisco Elastic Services Controller 5.6 Install and Upgrade Guide
165
Troubleshooting Cisco Elastic Services Controller Installation
Viewing ESC Log Messages
SM
MONITORING
DYNAMIC_MAPPING
"com.cisco.esc.statemachines". stands for StateMachine. This classification indicates logs in the StateMachine category.
"com.cisco.esc.monitoring""com.cisco.esc.paadaptor"(MONA related logs)
"com.cisco.esc.dynamicmapping""com.cisco.esc.db.dynamicmapping"(MONA related logs)
CONFD "com.cisco.esc.confd"
CONFD_NOTIFICATION "com.cisco.esc.confd.notif""com.cisco.esc.confd.ConfdNBIAdapter"
OS
LIBVIRT
"com.cisco.esc.vim.openstack"
"com.cisco.esc.vim.vagrant
VIM
REST_EVENT
WD
DM
"com.cisco.esc.vim"
"ESCManager_Event""com.cisco.esc.util.RestUtils". indicates REST notifications in logs.
"com.cisco.esc.watchdog"
"com.cisco.esc.datamodel""com.cisco.esc.jaxb.parameters"(Datamodel and resource objects)
DB
GW
LC
SEC
MOCONFIG
POLICY
TP
ESC
"com.cisco.esc.db"(Database related logs)
"com.cisco.esc.gateway"
"com.cisco.esc.ESCManager"(Start up related logs)
"com.cisco.esc.jaas"
"com.cisco.esc.moconfig"(MOCONFIG object related logs --this is internal for
ESC developers)
"com.cisco.esc.policy"(Service/VM Policy related logs)
"com.cisco.esc.threadpool"
"com.cisco.esc" Any other packages not mentioned above
The following tags are supported:
• Workflow [wf:] —Generated using action and resource from RequestDetails object. Example
"wf:create_network"
• Event type [eventType:] —Event that triggered the current action. Example:
"eventType:VM_DEPLOY_EVENT"
• Resource based —These values are generated based on the type of parameter used by the event. The hierarchy, that is, the tenant, the vm group and so on is added to the log.
Tenant [tenant:<tenant name>]
166
Cisco Elastic Services Controller 5.6 Install and Upgrade Guide
Troubleshooting Cisco Elastic Services Controller Installation
Viewing ESC Log Messages
Network
Subnet
User
[tenant:<tenant id>, network:<network name>]
Note The tenant appears only if applicable.
[tenant:<tenant name or id>, network:<network name or id>, subnet:<subnet name>]
Note The tenant appears only if applicable.
[tenant:<tenant name>, user:<user name or id>]
Note The tenant appears only if applicable.
Image
Flavor
[image:<image name>]
[flavor:<flavor name>]
Deployment [tenant:<tenant name or id>, depName:<deployment name>]
DeploymentDetails [tenant:<tenant name or id>, depName:<deployment name>, vmGroup:<vm group name>, vmName:<vm name>]
Switch
Volume
Service
[tenant:<tenant name or id>, switch:<switch name>]
[volume:<volume name>]
[svcName:<Service Registration name>]
Further, ESC logs can also be forwarded to an rsyslog server for further analysis and log management.
Filtering Logs Using Confd APIs
You can query and retrieve logs (for example, deployment logs, or error logs ) in ESC using log filters introduced in the confd APIs. New filters for Tenant, Deployment Name, and VM Name are introduced. This enables you to query the ESC logs further for most recent error logs using the log filters in Confd APIs. You can also retrieve ESC logs related to the communication between ESC and the OS ( by setting the classification tag to "OS").
The log format to retrieve confd API logs: date=<time-date>] [loglevel=<loglevel>] [tid=<transactionid>] [cl=<classifications>]
[tags=<tags>] [msg=<message>
The sample log is as follows: date=15:43:58,46022-Nov-2016] [loglevel=ERROR ] [tid=0793b5c9-8255-47f3-81e6-fbb59f6571f7]
[cl=OS ]
[tags=wf:create_vm,eventType:VM_DEPLOY_EVENT,tenant:test,depName:test-dep,vmGrpName:test-VNF, vmName:test-dep_test_0_dc3f406c-05ca-43b3-af21-0841e3b029a0]
[msg=sleepingfor5seconds to allow vm to become ACTIVE instance id:
162344f7-78f9-4e45-9f23-34cf87377fa7 name:test-dep_test_0_dc3f406c-05ca-43b3-af21-0841e3b029a0
The parameters for log level, classification and tags are dependent on each other to retrieve the logs. You can successfully retrieve the logs with the following combination.
• log_level=ERROR, classifications=OS, tags=(depName:test-dep)
• log_level=ERROR, classifications=OS, tags=(tenant: test)
The log filter returns a value when all the following conditions are met:
Cisco Elastic Services Controller 5.6 Install and Upgrade Guide
167
Troubleshooting Cisco Elastic Services Controller Installation
Viewing ESC Log Messages
• Log level
• Classifications (if provided)
• Tags (if provided)
Note If there are more than one classification listed, it has to match at least one of the classifications. The same applies to the tags as well.
For example, the following log filter criteria does not return the log sample mentioned earlier: log_level=ERROR, classifications=VIM, tags=(depName:test-dep)
It does not return any value though the log level and tags match, the classification VIM does not match.
The data model is as follows: rpc filterLog { description "Query and filter escmanager logs using given parameters"; tailf:actionpoint escrpc; input { leaf log_level { mandatory false; description "One of DEBUG / INFO / WARNING / ERROR / TRACE / FATAL. Results will include all logs at and above the level specified"; type types:log_level_types; default ERROR;
} leaf log_count { mandatory false; description "Number of logs to return"; type uint32; default 10;
} container classifications { leaf-list classification { description "Classification values to be used for the log filtering.
For example:
'OS', 'SM'.
Logs containing any of the provided classification values will be returned."; type types:log_classification_types;
}
} container tags { list tag { key "name"; leaf name { mandatory true; description "Tag name to be used for the log filtering.
For example: 'tenant',
'depName'.
Logs containing any of the provided tag name plus the tag values will be returned."; type types:log_tag_types;
} leaf value { mandatory true; description "Tag value pairs to be used for the log filtering.
For example:
'adminTenant', 'CSRDeployment'"; type string;
}
168
Cisco Elastic Services Controller 5.6 Install and Upgrade Guide
Troubleshooting Cisco Elastic Services Controller Installation
Viewing ESC Log Messages
}
}
}
} output { container filterLogResults { leaf log_level { description "Log level used to filter for the logs."; type types:log_level_types;
} list logs { container classifications { leaf-list classification { description "Classifications used to filter for the logs."; type types:log_classification_types;
}
} container tags { list tag { key "name"; leaf name { mandatory true; description "Tag name used to filter for the logs."; type types:log_tag_types;
} leaf value { mandatory true; description "Tag value used to filter for the logs."; type string;
}
}
} leaf log_date_time { description "Timestamp of the log."; type string;
} leaf log_message { description "The log message."; type string;
}
}
}
}
You can query for the confd API logs through the netconf console or esc_nc_cli
• Through the netconf-console, run the following query:
/opt/cisco/esc/confd/bin/netconf-console --port=830 --host=127.0.0.1 --user=admin
--privKeyFile=/home/admin/.ssh/confd_id_dsa --privKeyType=dsa --rpc=log.xml
• Using the esc_nc_cli, run the following query: esc_nc_cli --user <username> --password <password> filter-log log.xml
The sample log.xml is as follows:
<filterLog xmlns="https://www.cisco.com/esc/esc">
<log_level>INFO</log_level>
<log_count>1</log_count>
<classifications>
<classification>OS</classification>
<classification>SM</classification>
</classifications>
<tags>
Cisco Elastic Services Controller 5.6 Install and Upgrade Guide
169
Troubleshooting Cisco Elastic Services Controller Installation
General Installation Errors
<tag>
<name>depName</name>
<value>CSR_ap1</value>
</tag>
<tag>
<name>tenant</name>
<value>admin</value>
</tag>
</tags>
</filterLog>
The response is as follows:
<rpc-reply xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="1">
<filterLogResults xmlns="https://www.cisco.com/esc/esc">
<log_level>INFO</log_level>
<logs>
<classifications>
<classification>OS</classification>
<classification>SM</classification>
</classifications>
<tags>
<tag>
<name>depName</name>
<value>CSR_ap1</value>
</tag>
<tag>
<name>tenant</name>
<value>admin</value>
</tag>
</tags>
<log_date_time>13:06:07,575 31-Oct-2016</log_date_time>
<log_message> No pending work flow to start.</log_message>
</logs>
</filterLogResults>
</rpc-reply>
Note The logging API responses are in XML format. If the log messages contain any
XML characters, then the characters will be escaped so not to break the XML conformance.
General Installation Errors
This section cover some of the common installation problems and how to troubleshoot them.
170
Cisco Elastic Services Controller 5.6 Install and Upgrade Guide
Troubleshooting Cisco Elastic Services Controller Installation
General Installation Errors
Problem/Error Possible Reason User Action
Issues encountered while verifying ESC services status at the installation time using sudo escadm status
Some services take time to start or have trouble starting.
1.
Identify the issues using one of the following method:
• Check the log /var/log/esc/escadm.log
$ cat /var/log/esc/escadm.log
• Add '-v' to escadm status to show the verbose output of the ESC services and see the services are up and running.
2.
Confirm the status of the identified services that has issues and manually start these services.
$ sudo escadm <<service>> status//
If the status is stopped or dead, manually start the services using the next command.
$ sudo escadm <<service>> start --v
Authentication related error during the ESC installation
OpenStack credential-related arguments are missing.
ESC HA-related (Active/Standby) Issues
Network Problem
Source your OpenStack RC file and verify the OpenStack clients work properly
Check for the following:
• The static IP addresses for both ESC nodes used are based on the OpenStack configuration.
• The gateway for each network interface is accessible.
Cisco Elastic Services Controller 5.6 Install and Upgrade Guide
171
Troubleshooting Cisco Elastic Services Controller Installation
General Installation Errors
Problem/Error Possible Reason User Action
ESC active node stays in the
"switching-to-active" state
This could be because of the following issues:
Check for the:
• ESC HA
Active/Standby node can not reach its peer during the initial installation.
• Connectivity between ESC active node and standby node. For initial installation, ESC active service won't be up if it can't reach the standby node. You need to make sure you have both ESC nodes successfully deployed and they can reach each other.
• ESC logs at /var/log/esc/esc_haagent.log (ESC 2.X) or /var/log/esc/escadm.log (ESC 3.X) to identify the services that has issues.
• ESC service
(tomcat) can't start properly due to database problems
(etc. database migration, database file corruption).
• Log at /var/log/esc/escmanager.log for esc_service and postgresql issues.
• Confd can't start due to the CDB file corruption.
• Postgresql can't start or init due to the file system issues.
• The connection between ESC nodes is too slow.
MTU issues for ESC
HA Active/Standby
For the ESC VMs, reduce the MTU for network interfaces from 1500 to 1450. Follow the below steps to reduce the
MTU value:
1.
Identify the interface you would like to change. Access the interface from the location,
/etc/sysconfig/network-scripts/ifcfg-ethX, where X represent the interface number you want to change.
2.
Use a text editor like VIM to add or edit the MTU items for the interface, for instance, set MTU = 1450
3.
Restart the interface.
network service restart
172
Cisco Elastic Services Controller 5.6 Install and Upgrade Guide
Troubleshooting Cisco Elastic Services Controller Installation
ESC Failover Scenarios
Problem/Error
Other Issues
Possible Reason User Action
There are several useful logs to check for ESC HA
Active/Standby troubleshooting.
• ESC manager log is located at
/var/log/esc/escmanager.log
• ESC HA Active/Standby log about esc service startup/stop is located at /var/log/esc/esc_haagent.log
for ESC 2.X and /var/log/esc/escadm.log for ESC 3.X
• For Keepalived configuration:
• Check the configuration file at
/etc/keepalived/keepalived.conf
• Keepalived log is located at /var/log/messages by grep keepalived or vrrp
• For DRBD configuration:
• DRBD configuration can be verified by checking the file at /etc/drbd.d/esc.res
• The DRBD log is located at /var/log/messages by grep drbd
ESC Services Startup Issues
Service status reports
ETSI service is dead at installation time using sudo escadm status --v
If the host has multiple
IP addresses the ETSI service is unable to determine which IP address to use when generating callback
URLs.
This cause can be verified by examining the log file
/var/log/esc/etsi-vnfm/etsi-vnfm.log
for an exception including:
Configure server.host
property in configuration file.
1.
Set the server.host property: sudo escadm etsi set –server_host <IP>
2.
Start the ETSI service: sudo escadm etsi start
ESC Failover Scenarios
• When customer deploys many VNFs
Cisco Elastic Services Controller 5.6 Install and Upgrade Guide
173
ESC Failover Scenarios
Troubleshooting Cisco Elastic Services Controller Installation
• When customer does a DB backup
• One or more of the VMs in the VNFs is recovered via redeploy – new VM ID
• ESC Fails – It is a permanent failure
• Customer Restores DB – When there is a mismatch between 1 or more VM IDs
• Same VNF fails, but when ESC tries to recover, it fails because it is not found on the VIM by VM ID and redeploy fails because the ports are in use.
• The workaround is to delete the VM out of band and recover – if the VM is deleted it is not found by
ESC and the port is available for redeployment.
174
Cisco Elastic Services Controller 5.6 Install and Upgrade Guide
A P P E N D I X
A
Cisco Elastic Services Controller Installer
Arguments
You need to specify the following bootvm.py
script arguments to boot ESC instances.
Arguments Description esc_hostname
--image
Specifies the host name of the ESC VM instance.
Specifies the image id used in the OpenStack glance to boot up the
ESC instance.
--boot_volume
--ignore-ssl-errors
--managers
Specify the volume name or id of the external bootable volume from where you want to launch ESC instance.
It sets the "ignoreSslErrors" to "yes". It helps in deploying to a development or test environment when you don't have a root trusted certificate installed.
It is a comma delimited list of locations where SNMP traps is delivered.
It must be supplied in the following format: udp:ipv4/port" or "udp:[ipv6]/port
--net
--ipaddr
Specifies the Network IDs or names in OpenStack that ESC connects to.
(Optional) Specifies the IP addresses that ESC will be assigned in the network.
Note The IP address must correspond to the net_id in the --net argument.
--gateway_ip
--os_auth_url
--os_username
(Optional) Specifies the default gateway IP address of ESC.
(Optional) Specifies the OpenStack keystone url used by os_auth_url for authentication.
(Optional) Specifies the OpenStack keystone username used by os_username for authentication.
Cisco Elastic Services Controller 5.6 Install and Upgrade Guide
175
Cisco Elastic Services Controller Installer Arguments
Cisco Elastic Services Controller Installer Arguments
Arguments
--os_password
--os_tenant_name
--bs_os_auth_url
--bs_os_username
--bs_os_password
--bs_os_tenant_name
--flavor
--security_rules_file
--etc_hosts_file
--avail_zone
--esc_params_file
--etsi_params_file
--db_volume_id
-- ha_node_list
--kad_vip
--kad_vif
Description
(Optional) Specifies the OpenStack keystone password used by os_password for authentication.
(Optional) Specifies the OpenStack tenant name used by os_tenant_name for ESC deployment.
(Optional) Specifies the OpenStack keystone url used by bs_os_auth_url for authentication.
(Optional) Specifies the OpenStack keystone username used by bs_os_username for authentication.
(Optional) Specifies the OpenStack keystone password used by bs_os_password for authentication.
(Optional) Specifies the OpenStack tenant name used by bs_os_tenant_name for ESC deployment.
(Optional) Specifies the OpenStack flavor id to boot the ESC VM.
(Optional) Specifies the file to define security rules (IP, Port security) for ESC VM.
(Optional) Specifies the file for adding more entries to the ESC vm's hosts file (/etc/hosts).
(Optional) Specifies the OpenStack zone used for ESC deployment.
(Optional) Specifies the default parameter file for ESC deployment.
(Optional) Specifies the ETSI properties file for ESC deployment.
(Optional) Specifies the cinder volume id to mount for database storage in ESC HA Active/Standby [ESC-HA Active/Standby].
(Optional) Specifies list of IP addresses for HA Active/Standby nodes in the Active/Standby cluster. For ESC nodes with multiple network interfaces, these IPs should be the addresses in the network used for data synchronization.
Note This argument is utilized for replication-based HA
Active/Standby solution only.
(Optional) Specifies the IP address for Keepalived VIP (virtual IP) plus the interface of Keepalived VIP [ESC-HA Active/Standby].
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
(Optional) Specifies the interface for Keepalived virtual IP and keepalived VRRP [ESC-HA Active/Standby]. 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.
176
Cisco Elastic Services Controller 5.6 Install and Upgrade Guide
Cisco Elastic Services Controller Installer Arguments
Cisco Elastic Services Controller Installer Arguments
Arguments
--kad_vri
--route
--ntp_server
--rsyslog_server
--rsyslog_server_port
--rsyslog_server_protocol
--secure
--host_mapping_file
--version
--rng_virtio
Description
Specified the virtual router id of vrrp instance. Accepted values for kad_vri are 0 to 254. ESC VMs in the same HA Active/Standby should use the same kad_vri number. If kad_vip is not used for L3 HA
Active/Standby, the kad_vir has to be used, otherwise, you can skip kad_vri argument.
Specifies the routing configuration for ESC VM.
(Optional) Specifies the NTP server address.
(Optional) Specifies the IP address of rsyslog server that ESC sends the log to
(Optional) Specifies the port of rsyslog server that ESC sends the log to.
(Optional) Specifies the protocol to be used by the ESC to forward logs to the server.
(Optional) Enables secure configuration. You can specify the following values:
• A —Root is completely locked out. You cannot login as a root even from the console.
• B —SELinux runs in the enforcing mode.
• C —IPv4/IPv6 tables are started.
• D —SSH password authentication is disabled. You need the private key to ssh into ESC vm.
• E —host keys for confd will be re-created.
(Optional) Specifies the host mapping file for VNF deployment.
(Optional) Prints the version of bootvm.py and exits.
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
Cisco Elastic Services Controller 5.6 Install and Upgrade Guide
177
Cisco Elastic Services Controller Installer Arguments
Cisco Elastic Services Controller Installer Arguments
Arguments
--user_pass
Description
This along with --user_confd_pass are mandatory arguments from 3.0
onwards.
This argument adds a user to access the ESC VM. Use this argument to specify a user without administrative privileges, i.e, a non-admin/non-root user. Use the following format: user_name:password. The bootvm.py command requires at least one
--user_pass argument to create an admin account for linux (ssh/console access) . The following is the syntax for the mandatory user credential argument:
--user_pass admin:'PASSWORD-OR-HASH'[:OPTIONAL-PUBLIC-KEY-FILE][:OPTIONAL-ROLE]
This user can only do the following:
• Login to ESC through SSH.
• Access and drive the Netconf CLI, such as, esc_nc_cli, netconf-console, and so on.
• Read ESC -related logs from /var/logs/esc
• Access REST interface through localhost
This user cannot:
• Access the ESC DB and reconfigure ESC system.
• Access the system-level logs
• Configure the system level components, such as: Rsyslog,
Keepalived, DRDB, and so on.
• Access the encryption keys and values from REST interface or
ESC logs.
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_pass admin:admin321:/tmp/abc.pub
178
Cisco Elastic Services Controller 5.6 Install and Upgrade Guide
Cisco Elastic Services Controller Installer Arguments
Cisco Elastic Services Controller Installer Arguments
Arguments
--user_confd_pass
--esc_portal_startup
--log
--esc_monitor_check_ips
--enable-https-rest
--enable-http-rest
--disable-rest-auth
--enable-snmp-agent
--ha_mode
--enable-https-etsi
Description
Used to change confd users. The bootvm.py command requires at least one --user_confd_pass to create an admin account for ConfD
(netconf/cli access). The following is the syntax for the mandatory user credential argument:
--user_confd_pass admin:'PASSWORD-OR-HASH'[:OPTIONAL-PUBLIC-KEY-FILE]
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
(Optional) Starts the ESC portal.
(Optional) Specifies the log file. By default, logs to stdout.
(Optional) Specifies the IP addresses that must be monitored by esc_monitor (for HA Active/Standby failover).
(Optional) Enables a secure REST Interface for the created ESC VM.
(Optional) Enables an unsecured REST Interface for the created ESC
VM.
(Optional) Disables REST API authentication.
Note REST authentication should not be disabled in a production environment.
(Optional) Enables automatic start-up of the SNMP service. The default value is False.
Specifies the ESC HA Active/Standby mode for HA Active/Standby installation. Specify one of the following available options for HA
Active/Standby: no_ha : No HA, cinder : Shared Cinder Volume, drbd :
Built-in DRBD, drbd_on_cinder : DRBD over Cinder Volume
(Optional) Enables a secure ETSI REST Interface for the created ESC
VM.
Cisco Elastic Services Controller 5.6 Install and Upgrade Guide
179
Cisco Elastic Services Controller Installer Arguments
Cisco Elastic Services Controller Installer Arguments
Arguments
--enable-http-etsi
--encrypt_key
--proxy
--noproxy
--kad_unicast_src_ip
--kad_unicast_peer
--placement_hint
--format {json}
--user_rest_pass
--user_portal_pass
--user_etsi_pass
--etsi_oauth2_pass
Description
(Optional) Enables an unsecured ETSI REST Interface for the created
ESC VM. Enabling this interface is not recommended in a production environment.
Specifies the key for encryption.
Uses the proxy on a given port.
Lists the hosts which do not use proxy.
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
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
Use this argument to specify the placement of ESC HA Active/Standby virtual machines using the server group, samehost, differenthost filters.
Example:
• --placement_hint different_host=2b299428-e7a7-4528-8566-9a4970183c6a [ID should be the VM uuid]
• --placement_hint same_host=2b299428-e7a7-4528-8566-9a4970183c6a [ID should be the VM uuid]
• --pacement_hint group=4c7758ab-e9cb-4cf0-8f02-344ec666365b
[ID should be the server group uuid]
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" }
Adds a user to access the Rest API. Format is username: password.
This option can be repeated.
Add a portal user. Format username: password. This option can be repeated.
Adds a user to access the ETSI REST API. Format username:password.
Only a single user can be supplied.
Add an OAuth2 client for access to the ETSI REST API. Format clientId:clientSecret. This option can be repeated.
180
Cisco Elastic Services Controller 5.6 Install and Upgrade Guide
Cisco Elastic Services Controller Installer Arguments
Cisco Elastic Services Controller Installer Arguments
Arguments
--no_vim_credentials
Description
Use this argument to deploy ESC without passing the VIM credential.
If this argument is used, following parameters will not be passed during the installation:
• --os_auth_url
• --os_username
• --os_password
• --os_tenant_name
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.
Cisco Elastic Services Controller Installer File Reference
File Description security_rules_file The file contains the following:
• Security rules to create a security group for the tenant.
• Configurations to allow traffic for the tenant.
etc_hosts_file esc_params_file
The file contains one or more entries that you want to include in the /etc/hosts 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.
Below is an example configuration using this file: openstack.endpoint=adminURL affinity.filter=ServerGroupAffinity
Table 7: ESC Configuration Parameters esc_param.conf
Type default.vm_recovery_retries_max
Int
Default Value
3
Description
Number of recovery attempts allowed per VM.
Cisco Elastic Services Controller 5.6 Install and Upgrade Guide
181
Cisco Elastic Services Controller Installer Arguments
Cisco Elastic Services Controller Installer Arguments esc_param.conf
Type openstack.endpoint
String
Default Value publicURL
Description
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.
Using CLI:
$ sudo escadm escmanager config set --key openstack.endpoint
--value publicURL
{
"category": "OPENSTACK",
"type": "STRING",
"value": "publicURL",
"key": "ENDPOINT"
}
Using REST: log.level
affinity.filter
String
String
INFO
SameHostFilter
$ curl -X PUT http://172.16.0.1:8080/ESCManager/v0/config
/openstack/endpoint/publicURL
Level of logging. Options: INFO, Trace, DEBUG
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 ESC uses SameHostFilter and DifferentHostFilter for ESC policy engine by default but OpenStack may not configure those filters by default. You may need to add SameHostFilter and DifferentHostFilter to the following scheduler options in the /etc/nova/nova.conf
file of the nova service in your OpenStack.
scheduler_default_filters = RetryFilter, AvailabilityZoneFilter,RamFilter, ComputeFilter,
ComputeCapabilitiesFilter,
ImagePropertiesFilter, ServerGroupAntiAffinityFilter, ServerGroupAffinityFilter,
DifferentHostFilter, SameHostFilter
ServerGroupAntiAffinityFilter for Openstack
ESC adapts to use ServerGroupAntiAffinityFilter for Openstack.
REST
PUThttp://localhost:8080/ESCManager/v0/config/anti_affinity/filter/ServerGroupAntiAffinity
PUThttp://localhost:8080/ESCManager/v0/config/affinity/filter/ServerGroupAffinity
182
Cisco Elastic Services Controller 5.6 Install and Upgrade Guide
Cisco Elastic Services Controller Installer Arguments
Cisco Elastic Services Controller Installer Arguments
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.
ESC Services, Ports, and Security Group Overview
Table 8: External Services
1
2
3
4
5
6
7
Service sshd
ESC Web
UI/Portal
(HTTPS)
Visibility Optional?
External
(Orchestration)
No
Interface
0.0.0.0
External
(Orchestration)
Yes
(REST and/or
Netconf can be used instead)
0.0.0.0
ESC Netconf
API
External
(Orchestration)
Yes
(REST and/or Portal can be used instead)
0.0.0.0
ESC SNMP External
(Orchestration)
Yes (only configurable through custom user-data/esc-config.yaml)
0.0.0.0
ESC DRBD
(HA
Active/Standby
Replication)
External
(Orchestration)
No. Required for HA
Active/Standby setup.
0.0.0.0
ESC ConfD
CLI
External Yes
Configurable by modifying and reloading esc_production_confd.conf
0.0.0.0
ESC REST
API (HTTPS)
External
(Orchestration)
Yes
(Portal and/or
Netconf can be used instead)
0.0.0.0
Protocol
TCP
TCP
TCP
TCP
TCP
SSH
TCP
Port
22
443
(Previously
9001)
830
2001
7789
2024
8443
Cisco Elastic Services Controller 5.6 Install and Upgrade Guide
183
Cisco Elastic Services Controller Installer Arguments
Cisco Elastic Services Controller Installer Arguments
8
9
10
11
12
13
14
15
16
17
18
19
Service
ESC Health
API
Visibility Optional?
External
(Orchestration)
No
Interface
ESC
Keepalived
ETSI-VNFM
(HTTP)
External
(Orchestration)
No. Required for HA
Active/Standby setup.
0.0.0.0
External Yes (configurable through etsi-production.properties)
0.0.0.0
ETSI-VNFM
(HTTPS)
External
ETSI-VNFM
(Prometheus)
ETSI-VNFM
(Additional
HTTPS Port for artifacts download)
External
External
Yes (configurable through etsi-production.properties)
0.0.0.0
Yes (configurable through etsi-production.properties)
0.0.0.0
Yes (configurable through etsi-production.properties)
0.0.0.0
0.0.0.0
Protocol
Multicast
VRRP
TCP
TCP
TCP
TCP
TCP
Port
N/A
8250
8251
8252
8253
For ESC 5.2
and later,
8060
For ESC 5.1
and earlier,
60000
Local only ETSI Health
API
Internal
External D-MONA
REST API
Consul
Service
External
Consul
Service
ConfD
PostgreSQL
External
External
No
No
No
No for A/A set
No for A/A set
0.0.0.0
0.0.0.0
0.0.0.0
TCP
Limited to
ESC node
IPs
TCP
Limited to
ESC node
IPs
TCP
8443
TCP
TCP and
UDP
8300, 8301,
8302
8301
8302
8600
4565
7878
184
Cisco Elastic Services Controller 5.6 Install and Upgrade Guide
Cisco Elastic Services Controller Installer Arguments
Cisco Elastic Services Controller Installer Arguments
20
21
22
23
24
25
Service Visibility
ESCManager
RMI
Registry
External
ESCManager
RMI Service
External
Optional?
No for A/A set
Interface
Limited to
ESC node
IPs
Protocol
TCP
No for A/A set Limited to
ESC node
IPs
TCP
ESCManager
Prometheus
Metrics
External
MONA
Prometheus
External
VIMManager
Prometheus
Metrics
External
DHCP
Yes.
(application.properties)
Yes.
(application.properties)
Yes.
(application.properties)
External
DHCP is limited to resolving IP addresses for
ESC interfaces.
No
0.0.0.0
0.0.0.0
0.0.0.0
0.0.0.0
TCP
TCP
TCP
UDP
7
8
5
6
3
4
1
2
9
10
11
Only needed for A/A ESC set. Otherwise, the port will not listen.
Only needed for A/A ESC set. Otherwise, the port will not listen.
Introduced only since ESC 5.0
ESC A/A set (3 VMs)
Introduced only since ESC 5.0
ESC A/A set (3 VMs)
Only needed for A/A ESC set. Otherwise, the port is not listened.
Only needed for A/A ESC set. Otherwise, the port is not listened.
ESC 5.2 and later
ESC 5.2 and later
ESC 5.2 and later
Port
8679
8680
8088
8092
8097
66,67
Cisco Elastic Services Controller 5.6 Install and Upgrade Guide
185
Cisco Elastic Services Controller Installer Arguments
Cisco Elastic Services Controller Installer Arguments
186
Cisco Elastic Services Controller 5.6 Install and Upgrade Guide
A P P E N D I X
B
List of Variables Used in CSP 2100 Sample Files
To create the user-data file, to configure the ESC you must have values ready for the following list of variables used in the sample files:
Table 9: List of Variables
Variable Name
VAR_TIMEZONE
VAR_SERVICE_NAME
VAR_NTP_SERVER
VAR_NETWORK1_NETMASK
VAR_NETWORK1_NAME
VAR_NETWORK1_IPADDR
VAR_NETWORK1_GATEWAY
VAR_NETWORK0_NETMASK
VAR_NETWORK0_NAME
VAR_NETWORK0_KADVRI
VAR_NETWORK0_KADVIP
VAR_NETWORK0_IPADDR2
Purpose
The timezone for the ESC clock to use
The name of the ESC service on the CSP
The IP address of an NTP server
The netmask for the eth1 interface (Dual Interface
ESC)
The name of the network on the CSP where ESC's eth1 interface exists (Dual Interface ESC)
The IP address for the eth1 interface (Dual Interface
ESC)
The gateway for the eth1 interface (Dual Interface
ESC)
The netmask for the eth0 interface
The name of the network on the CSP where ESC's eth0 interface exists
The VRRP ID used for HA. Must be unique in the subnet for the HA pair and the same value used on both ESCs
Range is from 1 to 254
The VIP for the HA pair that connects to the current
Active ESC
The IP address for the other ESC's eth0 interface
Cisco Elastic Services Controller 5.6 Install and Upgrade Guide
187
List of Variables Used in CSP 2100 Sample Files
Variable Name
VAR_NETWORK0_IPADDR
VAR_NETWORK0_GATEWAY
VAR_NAMESERVER_IP
VAR_LOCAL_HOSTNAME
CSP_IP_ADDRESS
List of Variables Used in CSP 2100 Sample Files
Purpose
The IP address for ESC (eth0 interface)
The gateway for the eth0 interface
The IP address of a DNS server
The hostname for ESC
IP address of the CSP 2100 to be used
188
Cisco Elastic Services Controller 5.6 Install and Upgrade Guide
Изтегляне
Реклама