+++ date ++ echo 'INFO: =================== Mon Sep 14 02:28:22 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:28:22 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ grep -o 'dev.*' +++++ awk '{print $2}' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ cut -d / -f 1 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ local nic=enp1s0 +++ ip addr show dev enp1s0 +++ grep 'inet ' +++ awk '{print $2}' +++ head -n 1 ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ awk '/pagesize=2M/{print($3)}' +++ tail -n 1 ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ cut -d ' ' -f 1 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ tr '\n' , ++++ get_local_ips ++++ grep -vi host ++++ uniq ++++ cat /proc/net/fib_trie ++++ sort ++++ awk '/32 host/ { print f } {f=$2}' +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ set ++ grep '^API__.*__.*=.*$' ++ sort ++ sed 's/^API__//g' ++ cut -d = -f 1 + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:28:33.188 7ff698d46e40 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:28:33.372 7ff698d46e40 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:28:33.387 7ff698d46e40 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:28:33.388 7ff698d46e40 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:28:48 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7ff6957d36a0>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7ff6957d36a0>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:28:49 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:28:49 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ awk '{print $2}' +++++ grep -o 'dev.*' +++++ ip route get 1 ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ cut -d / -f 1 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ local nic=enp1s0 +++ head -n 1 +++ grep 'inet ' +++ awk '{print $2}' +++ ip addr show dev enp1s0 ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ tail -n 1 +++ awk '/pagesize=2M/{print($3)}' +++ mount -t hugetlbfs ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ cut -d , -f 1 ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + nc -z 10.0.0.38 9041 + echo -e '\035\nquit' + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list +++ cut -d ' ' -f 1 ++++ get_local_ips ++++ uniq ++++ tr '\n' , ++++ awk '/32 host/ { print f } {f=$2}' ++++ sort ++++ grep -vi host ++++ cat /proc/net/fib_trie +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ sed 's/,/ /g' ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ set ++ sort ++ sed 's/^API__//g' ++ grep '^API__.*__.*=.*$' ++ cut -d = -f 1 + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:29:00.748 7f979f0b4900 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:29:01.055 7f979f0b4900 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:29:01.078 7f979f0b4900 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:29:01.078 7f979f0b4900 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:29:16 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f979b54f700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f979b54f700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:29:16 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:29:16 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ grep -o 'dev.*' +++++ ip route get 1 +++++ awk '{print $2}' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ cut -d / -f 1 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ local nic=enp1s0 +++ head -n 1 +++ grep 'inet ' +++ awk '{print $2}' +++ ip addr show dev enp1s0 ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ tail -n 1 +++ awk '/pagesize=2M/{print($3)}' +++ mount -t hugetlbfs ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list +++ cut -d ' ' -f 1 ++++ tr '\n' , ++++ get_local_ips ++++ cat /proc/net/fib_trie ++++ awk '/32 host/ { print f } {f=$2}' ++++ sort ++++ uniq ++++ grep -vi host +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ sort ++ sed 's/^API__//g' ++ cut -d = -f 1 ++ set -o posix ++ grep '^API__.*__.*=.*$' ++ set + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:29:28.433 7f2fab151ac0 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:29:28.591 7f2fab151ac0 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:29:28.607 7f2fab151ac0 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:29:28.608 7f2fab151ac0 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:29:43 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f2fa7b8a700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f2fa7b8a700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:29:44 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:29:44 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ grep -o 'dev.*' +++++ awk '{print $2}' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ local nic=enp1s0 +++ cut -d / -f 1 +++ awk '{print $2}' +++ ip addr show dev enp1s0 +++ grep 'inet ' +++ head -n 1 ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ awk '/pagesize=2M/{print($3)}' +++ tail -n 1 +++ mount -t hugetlbfs ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ cut -d ' ' -f 1 +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ tr '\n' , ++++ get_local_ips ++++ cat /proc/net/fib_trie ++++ awk '/32 host/ { print f } {f=$2}' ++++ grep -vi host ++++ uniq ++++ sort +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ cut -d = -f 1 ++ sed 's/^API__//g' ++ grep '^API__.*__.*=.*$' ++ sort ++ set -o posix ++ set + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:29:55.397 7f4771ee09c0 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:29:55.641 7f4771ee09c0 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:29:55.672 7f4771ee09c0 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:29:55.672 7f4771ee09c0 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:30:10 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f476e917700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f476e917700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:30:11 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:30:11 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ awk '{print $2}' +++++ grep -o 'dev.*' +++++ ip route get 1 ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ cut -d / -f 1 +++ local nic=enp1s0 +++ grep 'inet ' +++ head -n 1 +++ awk '{print $2}' +++ ip addr show dev enp1s0 ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ awk '/pagesize=2M/{print($3)}' +++ tail -n 1 ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + nc -z 10.0.0.38 9041 + echo -e '\035\nquit' + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ get_local_ips ++++ tr '\n' , ++++ cat /proc/net/fib_trie ++++ awk '/32 host/ { print f } {f=$2}' ++++ sort +++ cut -d ' ' -f 1 ++++ grep -vi host ++++ uniq +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ sed 's/,/ /g' ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ grep '^API__.*__.*=.*$' ++ set ++ sort ++ cut -d = -f 1 ++ sed 's/^API__//g' + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:30:22.218 7f0c18e8fc40 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:30:22.378 7f0c18e8fc40 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:30:22.392 7f0c18e8fc40 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:30:22.392 7f0c18e8fc40 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:30:37 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f0c158b6700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f0c158b6700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:30:39 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:30:39 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ grep -o 'dev.*' +++++ awk '{print $2}' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ local nic=enp1s0 +++ ip addr show dev enp1s0 +++ head -n 1 +++ awk '{print $2}' +++ grep 'inet ' +++ cut -d / -f 1 ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ tail -n 1 +++ awk '/pagesize=2M/{print($3)}' +++ mount -t hugetlbfs ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list +++ cut -d ' ' -f 1 ++++ get_local_ips ++++ cat /proc/net/fib_trie ++++ tr '\n' , ++++ sort ++++ uniq ++++ grep -vi host ++++ awk '/32 host/ { print f } {f=$2}' +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ sort ++ grep '^API__.*__.*=.*$' ++ cut -d = -f 1 ++ sed 's/^API__//g' ++ set -o posix ++ set + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:30:49.100 7f7d8badb240 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:30:49.274 7f7d8badb240 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:30:49.288 7f7d8badb240 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:30:49.288 7f7d8badb240 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:31:04 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f7d88458700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f7d88458700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:31:05 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:31:05 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ grep -o 'dev.*' +++++ awk '{print $2}' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ local nic=enp1s0 +++ ip addr show dev enp1s0 +++ head -n 1 +++ awk '{print $2}' +++ grep 'inet ' +++ cut -d / -f 1 ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ awk '/pagesize=2M/{print($3)}' +++ tail -n 1 ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ cut -d ' ' -f 1 +++ IFS=, +++ read -ra server_list ++++ tr '\n' , ++++ get_local_ips ++++ cat /proc/net/fib_trie ++++ awk '/32 host/ { print f } {f=$2}' ++++ grep -vi host ++++ sort ++++ uniq +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ set ++ grep '^API__.*__.*=.*$' ++ sort ++ sed 's/^API__//g' ++ cut -d = -f 1 + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:31:13.945 7f6a4703a0c0 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:31:14.086 7f6a4703a0c0 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:31:14.098 7f6a4703a0c0 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:31:14.098 7f6a4703a0c0 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:31:29 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f6a43ac6700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f6a43ac6700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:31:30 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:31:30 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ grep -o 'dev.*' +++++ awk '{print $2}' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ cut -d / -f 1 +++ command -v ip +++ local nic=enp1s0 +++ grep 'inet ' +++ head -n 1 +++ ip addr show dev enp1s0 +++ awk '{print $2}' ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ tail -n 1 +++ awk '/pagesize=2M/{print($3)}' +++ mount -t hugetlbfs ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list +++ cut -d ' ' -f 1 ++++ get_local_ips ++++ tr '\n' , ++++ grep -vi host ++++ cat /proc/net/fib_trie ++++ sort ++++ uniq ++++ awk '/32 host/ { print f } {f=$2}' +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ grep '^API__.*__.*=.*$' ++ set -o posix ++ set ++ sed 's/^API__//g' ++ sort ++ cut -d = -f 1 + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:31:39.714 7f2246c3cd80 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:31:39.876 7f2246c3cd80 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:31:39.891 7f2246c3cd80 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:31:39.892 7f2246c3cd80 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:31:54 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f22436a8700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f22436a8700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:31:55 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:31:55 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ grep -o 'dev.*' +++++ awk '{print $2}' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ cut -d / -f 1 +++ local nic=enp1s0 +++ ip addr show dev enp1s0 +++ awk '{print $2}' +++ grep 'inet ' +++ head -n 1 ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ tail -n 1 +++ awk '/pagesize=2M/{print($3)}' ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list +++ cut -d ' ' -f 1 ++++ get_local_ips ++++ tr '\n' , ++++ cat /proc/net/fib_trie ++++ sort ++++ awk '/32 host/ { print f } {f=$2}' ++++ grep -vi host ++++ uniq +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ set ++ grep '^API__.*__.*=.*$' ++ cut -d = -f 1 ++ sort ++ sed 's/^API__//g' + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:32:04.763 7f4184eb2e40 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:32:04.992 7f4184eb2e40 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:32:05.014 7f4184eb2e40 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:32:05.014 7f4184eb2e40 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:32:20 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f41818cf6a0>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f41818cf6a0>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:32:20 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:32:20 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ awk '{print $2}' +++++ grep -o 'dev.*' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ local nic=enp1s0 +++ head -n 1 +++ awk '{print $2}' +++ cut -d / -f 1 +++ ip addr show dev enp1s0 +++ grep 'inet ' ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ awk '/pagesize=2M/{print($3)}' +++ tail -n 1 ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ cut -d , -f 1 ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + nc -z 10.0.0.38 9041 + echo -e '\035\nquit' + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ cut -d ' ' -f 1 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ get_local_ips ++++ tr '\n' , ++++ sort ++++ cat /proc/net/fib_trie ++++ awk '/32 host/ { print f } {f=$2}' ++++ uniq ++++ grep -vi host +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ set ++ grep '^API__.*__.*=.*$' ++ cut -d = -f 1 ++ sort ++ sed 's/^API__//g' + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:32:30.035 7f838eb4ef40 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:32:30.197 7f838eb4ef40 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:32:30.210 7f838eb4ef40 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:32:30.211 7f838eb4ef40 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:32:45 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f838b5da700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f838b5da700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:32:46 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:32:46 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ awk '{print $2}' +++++ grep -o 'dev.*' +++++ ip route get 1 ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ cut -d / -f 1 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ local nic=enp1s0 +++ grep 'inet ' +++ ip addr show dev enp1s0 +++ awk '{print $2}' +++ head -n 1 ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ awk '/pagesize=2M/{print($3)}' +++ tail -n 1 ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list +++ cut -d ' ' -f 1 ++++ tr '\n' , ++++ get_local_ips ++++ cat /proc/net/fib_trie ++++ sort ++++ awk '/32 host/ { print f } {f=$2}' ++++ grep -vi host ++++ uniq +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ grep '^API__.*__.*=.*$' ++ set -o posix ++ set ++ sed 's/^API__//g' ++ cut -d = -f 1 ++ sort + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:32:56.221 7f5b3ea7cb40 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:32:56.374 7f5b3ea7cb40 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:32:56.388 7f5b3ea7cb40 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:32:56.388 7f5b3ea7cb40 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:33:11 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f5b3b40b700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f5b3b40b700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:33:12 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:33:12 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ grep -o 'dev.*' +++++ awk '{print $2}' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ local nic=enp1s0 +++ awk '{print $2}' +++ head -n 1 +++ grep 'inet ' +++ ip addr show dev enp1s0 +++ cut -d / -f 1 ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ tail -n 1 +++ awk '/pagesize=2M/{print($3)}' ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ cut -d , -f 1 ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ cut -d ' ' -f 1 +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ get_local_ips ++++ tr '\n' , ++++ cat /proc/net/fib_trie ++++ sort ++++ uniq ++++ grep -vi host ++++ awk '/32 host/ { print f } {f=$2}' +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ set ++ grep '^API__.*__.*=.*$' ++ cut -d = -f 1 ++ sed 's/^API__//g' ++ sort + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:33:20.847 7f78564c1600 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:33:21.031 7f78564c1600 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:33:21.054 7f78564c1600 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:33:21.054 7f78564c1600 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:33:36 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f7852ece700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f7852ece700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:33:36 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:33:36 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ grep -o 'dev.*' +++++ ip route get 1 +++++ awk '{print $2}' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ local nic=enp1s0 +++ ip addr show dev enp1s0 +++ head -n 1 +++ cut -d / -f 1 +++ grep 'inet ' +++ awk '{print $2}' ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ tail -n 1 +++ awk '/pagesize=2M/{print($3)}' ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ cut -d ' ' -f 1 +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ get_local_ips ++++ cat /proc/net/fib_trie ++++ awk '/32 host/ { print f } {f=$2}' ++++ uniq ++++ tr '\n' , ++++ sort ++++ grep -vi host +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ set ++ grep '^API__.*__.*=.*$' ++ cut -d = -f 1 ++ sort ++ sed 's/^API__//g' + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:33:45.895 7f52ffae0040 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:33:46.065 7f52ffae0040 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:33:46.080 7f52ffae0040 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:33:46.080 7f52ffae0040 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:34:01 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f52fc505700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f52fc505700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:34:02 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:34:02 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ grep -o 'dev.*' +++++ awk '{print $2}' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ local nic=enp1s0 +++ cut -d / -f 1 +++ ip addr show dev enp1s0 +++ head -n 1 +++ awk '{print $2}' +++ grep 'inet ' ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ awk '/pagesize=2M/{print($3)}' +++ tail -n 1 ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ cut -d ' ' -f 1 +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ get_local_ips ++++ tr '\n' , ++++ cat /proc/net/fib_trie ++++ grep -vi host ++++ awk '/32 host/ { print f } {f=$2}' ++++ sort ++++ uniq +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ set ++ sort ++ cut -d = -f 1 ++ grep '^API__.*__.*=.*$' ++ sed 's/^API__//g' + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:34:12.614 7fb6cf58b780 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:34:12.957 7fb6cf58b780 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:34:12.976 7fb6cf58b780 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:34:12.976 7fb6cf58b780 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:34:28 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7fb6cc018700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7fb6cc018700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:34:28 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:34:28 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ grep -o 'dev.*' +++++ awk '{print $2}' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ local nic=enp1s0 +++ cut -d / -f 1 +++ ip addr show dev enp1s0 +++ grep 'inet ' +++ awk '{print $2}' +++ head -n 1 ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ tail -n 1 +++ awk '/pagesize=2M/{print($3)}' ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + nc -z 10.0.0.38 9041 + echo -e '\035\nquit' + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ cut -d ' ' -f 1 +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ get_local_ips ++++ cat /proc/net/fib_trie ++++ awk '/32 host/ { print f } {f=$2}' ++++ uniq ++++ tr '\n' , ++++ grep -vi host ++++ sort +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ set ++ sort ++ grep '^API__.*__.*=.*$' ++ sed 's/^API__//g' ++ cut -d = -f 1 + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:34:39.820 7f241589e440 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:34:40.228 7f241589e440 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:34:40.253 7f241589e440 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:34:40.253 7f241589e440 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:34:55 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f241230e700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f241230e700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:34:55 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:34:55 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ grep -o 'dev.*' +++++ awk '{print $2}' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ cut -d / -f 1 +++ local nic=enp1s0 +++ grep 'inet ' +++ ip addr show dev enp1s0 +++ awk '{print $2}' +++ head -n 1 ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ awk '/pagesize=2M/{print($3)}' +++ tail -n 1 ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ cut -d ' ' -f 1 +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ tr '\n' , ++++ get_local_ips ++++ awk '/32 host/ { print f } {f=$2}' ++++ cat /proc/net/fib_trie ++++ grep -vi host ++++ sort ++++ uniq +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ grep '^API__.*__.*=.*$' ++ sed 's/^API__//g' ++ set -o posix ++ set ++ sort ++ cut -d = -f 1 + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:35:05.739 7f3486f7ca40 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:35:05.882 7f3486f7ca40 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:35:05.898 7f3486f7ca40 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:35:05.898 7f3486f7ca40 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:35:20 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f3483a78700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f3483a78700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:35:21 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:35:21 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ grep -o 'dev.*' +++++ awk '{print $2}' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ cut -d / -f 1 +++ local nic=enp1s0 +++ ip addr show dev enp1s0 +++ awk '{print $2}' +++ head -n 1 +++ grep 'inet ' ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ tail -n 1 +++ awk '/pagesize=2M/{print($3)}' ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list +++ cut -d ' ' -f 1 ++++ get_local_ips ++++ cat /proc/net/fib_trie ++++ tr '\n' , ++++ sort ++++ grep -vi host ++++ awk '/32 host/ { print f } {f=$2}' ++++ uniq +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ sed 's/,/ /g' ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ set ++ sort ++ sed 's/^API__//g' ++ cut -d = -f 1 ++ grep '^API__.*__.*=.*$' + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:35:30.778 7f2492c16c00 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:35:30.926 7f2492c16c00 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:35:30.938 7f2492c16c00 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:35:30.938 7f2492c16c00 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:35:45 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f248f64d700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f248f64d700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:35:46 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:35:46 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ awk '{print $2}' +++++ grep -o 'dev.*' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ cut -d / -f 1 +++ command -v ip +++ local nic=enp1s0 +++ grep 'inet ' +++ awk '{print $2}' +++ ip addr show dev enp1s0 +++ head -n 1 ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ tail -n 1 +++ awk '/pagesize=2M/{print($3)}' +++ mount -t hugetlbfs ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ cut -d , -f 1 ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + nc -z 10.0.0.38 9041 + echo -e '\035\nquit' + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ get_local_ips ++++ tr '\n' , ++++ cat /proc/net/fib_trie ++++ grep -vi host +++ cut -d ' ' -f 1 ++++ uniq ++++ awk '/32 host/ { print f } {f=$2}' ++++ sort +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ set ++ sort ++ sed 's/^API__//g' ++ grep '^API__.*__.*=.*$' ++ cut -d = -f 1 + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:35:56.556 7fc13dca80c0 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:35:56.750 7fc13dca80c0 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:35:56.764 7fc13dca80c0 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:35:56.764 7fc13dca80c0 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:36:11 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7fc13a719700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7fc13a719700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:36:12 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:36:12 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ awk '{print $2}' +++++ grep -o 'dev.*' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ cut -d / -f 1 +++ local nic=enp1s0 +++ ip addr show dev enp1s0 +++ head -n 1 +++ grep 'inet ' +++ awk '{print $2}' ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ awk '/pagesize=2M/{print($3)}' +++ tail -n 1 ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ cut -d ' ' -f 1 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ get_local_ips ++++ tr '\n' , ++++ cat /proc/net/fib_trie ++++ uniq ++++ awk '/32 host/ { print f } {f=$2}' ++++ grep -vi host ++++ sort +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ set ++ grep '^API__.*__.*=.*$' ++ sed 's/^API__//g' ++ cut -d = -f 1 ++ sort + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:36:21.753 7f68c42903c0 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:36:21.980 7f68c42903c0 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:36:22.008 7f68c42903c0 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:36:22.008 7f68c42903c0 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:36:37 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f68c0d05700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f68c0d05700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:36:37 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:36:37 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ grep -o 'dev.*' +++++ awk '{print $2}' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ local nic=enp1s0 +++ ip addr show dev enp1s0 +++ awk '{print $2}' +++ cut -d / -f 1 +++ grep 'inet ' +++ head -n 1 ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ tail -n 1 +++ awk '/pagesize=2M/{print($3)}' ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list +++ cut -d ' ' -f 1 ++++ get_local_ips ++++ cat /proc/net/fib_trie ++++ tr '\n' , ++++ grep -vi host ++++ sort ++++ awk '/32 host/ { print f } {f=$2}' ++++ uniq +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ set ++ sort ++ grep '^API__.*__.*=.*$' ++ cut -d = -f 1 ++ sed 's/^API__//g' + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:36:47.111 7f2f8f76c380 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:36:47.260 7f2f8f76c380 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:36:47.273 7f2f8f76c380 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:36:47.273 7f2f8f76c380 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:37:02 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f2f8c207700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f2f8c207700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:37:03 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:37:03 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ grep -o 'dev.*' +++++ awk '{print $2}' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ local nic=enp1s0 +++ ip addr show dev enp1s0 +++ cut -d / -f 1 +++ awk '{print $2}' +++ head -n 1 +++ grep 'inet ' ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ awk '/pagesize=2M/{print($3)}' +++ tail -n 1 ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ cut -d ' ' -f 1 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ get_local_ips ++++ tr '\n' , ++++ cat /proc/net/fib_trie ++++ sort ++++ grep -vi host ++++ awk '/32 host/ { print f } {f=$2}' ++++ uniq +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ grep '^API__.*__.*=.*$' ++ sort ++ cut -d = -f 1 ++ set -o posix ++ set ++ sed 's/^API__//g' + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:37:12.983 7f53ce5b7b40 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:37:13.151 7f53ce5b7b40 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:37:13.170 7f53ce5b7b40 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:37:13.171 7f53ce5b7b40 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:37:28 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f53cafbe700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f53cafbe700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:37:29 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:37:29 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ awk '{print $2}' +++++ grep -o 'dev.*' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ cut -d / -f 1 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ local nic=enp1s0 +++ ip addr show dev enp1s0 +++ grep 'inet ' +++ awk '{print $2}' +++ head -n 1 ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ tail -n 1 +++ awk '/pagesize=2M/{print($3)}' ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ cut -d ' ' -f 1 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ get_local_ips ++++ cat /proc/net/fib_trie ++++ uniq ++++ sort ++++ tr '\n' , ++++ grep -vi host ++++ awk '/32 host/ { print f } {f=$2}' +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ sed 's/,/ /g' ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ grep '^API__.*__.*=.*$' ++ cut -d = -f 1 ++ sed 's/^API__//g' ++ set -o posix ++ set ++ sort + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:37:38.639 7f5474a66180 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:37:38.777 7f5474a66180 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:37:38.791 7f5474a66180 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:37:38.792 7f5474a66180 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:37:53 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f547146f700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f547146f700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:37:54 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:37:54 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ grep -o 'dev.*' +++++ awk '{print $2}' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ local nic=enp1s0 +++ head -n 1 +++ grep 'inet ' +++ ip addr show dev enp1s0 +++ awk '{print $2}' +++ cut -d / -f 1 ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ tail -n 1 +++ awk '/pagesize=2M/{print($3)}' ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ cut -d ' ' -f 1 +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ get_local_ips ++++ cat /proc/net/fib_trie ++++ uniq ++++ awk '/32 host/ { print f } {f=$2}' ++++ tr '\n' , ++++ grep -vi host ++++ sort +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ sed 's/,/ /g' ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ set ++ grep '^API__.*__.*=.*$' ++ cut -d = -f 1 ++ sort ++ sed 's/^API__//g' + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:38:04.211 7fa42c052940 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:38:04.413 7fa42c052940 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:38:04.443 7fa42c052940 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:38:04.443 7fa42c052940 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:38:19 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7fa428a73700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7fa428a73700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:38:20 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:38:20 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ grep -o 'dev.*' +++++ awk '{print $2}' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ cut -d / -f 1 +++ local nic=enp1s0 +++ ip addr show dev enp1s0 +++ grep 'inet ' +++ head -n 1 +++ awk '{print $2}' ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ awk '/pagesize=2M/{print($3)}' +++ tail -n 1 ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ cut -d ' ' -f 1 +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ tr '\n' , ++++ get_local_ips ++++ cat /proc/net/fib_trie ++++ awk '/32 host/ { print f } {f=$2}' ++++ uniq ++++ sort ++++ grep -vi host +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ sed 's/,/ /g' ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ set ++ grep '^API__.*__.*=.*$' ++ sort ++ cut -d = -f 1 ++ sed 's/^API__//g' + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:38:30.030 7fd868d8ef00 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:38:30.197 7fd868d8ef00 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:38:30.210 7fd868d8ef00 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:38:30.211 7fd868d8ef00 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:38:45 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7fd8657b5700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7fd8657b5700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:38:45 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:38:45 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ grep -o 'dev.*' +++++ awk '{print $2}' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ local nic=enp1s0 +++ cut -d / -f 1 +++ awk '{print $2}' +++ ip addr show dev enp1s0 +++ head -n 1 +++ grep 'inet ' ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ awk '/pagesize=2M/{print($3)}' +++ tail -n 1 ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ cut -d ' ' -f 1 +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ get_local_ips ++++ cat /proc/net/fib_trie ++++ awk '/32 host/ { print f } {f=$2}' ++++ uniq ++++ sort ++++ tr '\n' , ++++ grep -vi host +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ sort ++ sed 's/^API__//g' ++ set -o posix ++ set ++ grep '^API__.*__.*=.*$' ++ cut -d = -f 1 + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:38:55.549 7f99a35abbc0 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:38:55.771 7f99a35abbc0 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:38:55.825 7f99a35abbc0 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:38:55.834 7f99a35abbc0 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:39:10 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f99a0032700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f99a0032700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:39:11 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:39:11 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ awk '{print $2}' +++++ grep -o 'dev.*' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ local nic=enp1s0 +++ grep 'inet ' +++ ip addr show dev enp1s0 +++ awk '{print $2}' +++ head -n 1 +++ cut -d / -f 1 ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ awk '/pagesize=2M/{print($3)}' +++ tail -n 1 ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ get_local_ips ++++ cat /proc/net/fib_trie +++ cut -d ' ' -f 1 ++++ tr '\n' , ++++ awk '/32 host/ { print f } {f=$2}' ++++ grep -vi host ++++ sort ++++ uniq +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ set ++ sed 's/^API__//g' ++ cut -d = -f 1 ++ sort ++ grep '^API__.*__.*=.*$' + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:39:21.362 7f7cd7949f40 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:39:21.588 7f7cd7949f40 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:39:21.613 7f7cd7949f40 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:39:21.614 7f7cd7949f40 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:39:36 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f7cd43d6700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f7cd43d6700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:39:37 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:39:37 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ grep -o 'dev.*' +++++ awk '{print $2}' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ cut -d / -f 1 +++ command -v ip +++ local nic=enp1s0 +++ ip addr show dev enp1s0 +++ awk '{print $2}' +++ head -n 1 +++ grep 'inet ' ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ awk '/pagesize=2M/{print($3)}' +++ tail -n 1 ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + nc -z 10.0.0.38 9041 + echo -e '\035\nquit' + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ cut -d ' ' -f 1 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ get_local_ips ++++ cat /proc/net/fib_trie ++++ tr '\n' , ++++ sort ++++ grep -vi host ++++ awk '/32 host/ { print f } {f=$2}' ++++ uniq +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ set ++ grep '^API__.*__.*=.*$' ++ sed 's/^API__//g' ++ sort ++ cut -d = -f 1 + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:39:47.442 7f0627451340 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:39:47.675 7f0627451340 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:39:47.691 7f0627451340 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:39:47.691 7f0627451340 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:40:02 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f0623e72700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f0623e72700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:40:03 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:40:03 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ grep -o 'dev.*' +++++ awk '{print $2}' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ cut -d / -f 1 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ local nic=enp1s0 +++ ip addr show dev enp1s0 +++ grep 'inet ' +++ awk '{print $2}' +++ head -n 1 ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ awk '/pagesize=2M/{print($3)}' +++ tail -n 1 ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ cut -d , -f 1 ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + nc -z 10.0.0.38 9041 + echo -e '\035\nquit' + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list +++ cut -d ' ' -f 1 ++++ get_local_ips ++++ tr '\n' , ++++ cat /proc/net/fib_trie ++++ grep -vi host ++++ sort ++++ uniq ++++ awk '/32 host/ { print f } {f=$2}' +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ sed 's/,/ /g' ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ grep '^API__.*__.*=.*$' ++ sort ++ set -o posix ++ set ++ sed 's/^API__//g' ++ cut -d = -f 1 + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:40:13.013 7f4a97084c40 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:40:13.171 7f4a97084c40 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:40:13.185 7f4a97084c40 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:40:13.185 7f4a97084c40 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:40:28 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f4a932cd700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f4a932cd700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:40:29 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:40:29 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ awk '{print $2}' +++++ grep -o 'dev.*' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ cut -d / -f 1 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ local nic=enp1s0 +++ awk '{print $2}' +++ head -n 1 +++ ip addr show dev enp1s0 +++ grep 'inet ' ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ awk '/pagesize=2M/{print($3)}' +++ tail -n 1 ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ cut -d , -f 1 ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list +++ cut -d ' ' -f 1 ++++ get_local_ips ++++ tr '\n' , ++++ uniq ++++ cat /proc/net/fib_trie ++++ sort ++++ awk '/32 host/ { print f } {f=$2}' ++++ grep -vi host +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ set ++ grep '^API__.*__.*=.*$' ++ cut -d = -f 1 ++ sed 's/^API__//g' ++ sort + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:40:38.188 7fe3427a3f40 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:40:38.366 7fe3427a3f40 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:40:38.378 7fe3427a3f40 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:40:38.379 7fe3427a3f40 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:40:53 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7fe33f1c5700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7fe33f1c5700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:40:54 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:40:54 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ awk '{print $2}' +++++ grep -o 'dev.*' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ local nic=enp1s0 +++ cut -d / -f 1 +++ grep 'inet ' +++ awk '{print $2}' +++ head -n 1 +++ ip addr show dev enp1s0 ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ tail -n 1 +++ awk '/pagesize=2M/{print($3)}' ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ cut -d , -f 1 ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + nc -z 10.0.0.38 9041 + echo -e '\035\nquit' + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ cut -d ' ' -f 1 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ get_local_ips ++++ awk '/32 host/ { print f } {f=$2}' ++++ uniq ++++ sort ++++ cat /proc/net/fib_trie ++++ grep -vi host ++++ tr '\n' , +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ sed 's/,/ /g' ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ set ++ sort ++ cut -d = -f 1 ++ sed 's/^API__//g' ++ grep '^API__.*__.*=.*$' + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:41:04.259 7f6872df46c0 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:41:04.436 7f6872df46c0 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:41:04.451 7f6872df46c0 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:41:04.451 7f6872df46c0 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:41:19 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f686f819700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f686f819700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:41:20 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:41:20 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ grep -o 'dev.*' +++++ awk '{print $2}' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ cut -d / -f 1 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ local nic=enp1s0 +++ grep 'inet ' +++ ip addr show dev enp1s0 +++ awk '{print $2}' +++ head -n 1 ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ tail -n 1 +++ awk '/pagesize=2M/{print($3)}' ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ cut -d ' ' -f 1 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ get_local_ips ++++ cat /proc/net/fib_trie ++++ sort ++++ uniq ++++ tr '\n' , ++++ grep -vi host ++++ awk '/32 host/ { print f } {f=$2}' +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ set ++ grep '^API__.*__.*=.*$' ++ sort ++ cut -d = -f 1 ++ sed 's/^API__//g' + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:41:29.827 7f3ac1342600 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:41:30.023 7f3ac1342600 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:41:30.040 7f3ac1342600 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:41:30.040 7f3ac1342600 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:41:45 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f3abdd62700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f3abdd62700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:41:46 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:41:46 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ grep -o 'dev.*' +++++ awk '{print $2}' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ cut -d / -f 1 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ local nic=enp1s0 +++ ip addr show dev enp1s0 +++ grep 'inet ' +++ awk '{print $2}' +++ head -n 1 ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ awk '/pagesize=2M/{print($3)}' +++ tail -n 1 +++ mount -t hugetlbfs ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ cut -d ' ' -f 1 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ get_local_ips ++++ awk '/32 host/ { print f } {f=$2}' ++++ tr '\n' , ++++ cat /proc/net/fib_trie ++++ grep -vi host ++++ sort ++++ uniq +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ set ++ sort ++ cut -d = -f 1 ++ grep '^API__.*__.*=.*$' ++ sed 's/^API__//g' + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:41:56.212 7fd23a41d2c0 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:41:56.377 7fd23a41d2c0 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:41:56.391 7fd23a41d2c0 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:41:56.391 7fd23a41d2c0 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:42:11 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7fd236ea9700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7fd236ea9700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:42:12 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:42:12 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ awk '{print $2}' +++++ ip route get 1 +++++ grep -o 'dev.*' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ local nic=enp1s0 +++ cut -d / -f 1 +++ grep 'inet ' +++ ip addr show dev enp1s0 +++ head -n 1 +++ awk '{print $2}' ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ tail -n 1 +++ awk '/pagesize=2M/{print($3)}' ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ cut -d , -f 1 ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ cut -d ' ' -f 1 +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ get_local_ips ++++ cat /proc/net/fib_trie ++++ sort ++++ uniq ++++ grep -vi host ++++ awk '/32 host/ { print f } {f=$2}' ++++ tr '\n' , +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ set ++ grep '^API__.*__.*=.*$' ++ sed 's/^API__//g' ++ sort ++ cut -d = -f 1 + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:42:22.422 7fabf25d5980 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:42:22.594 7fabf25d5980 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:42:22.608 7fabf25d5980 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:42:22.608 7fabf25d5980 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:42:37 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7fabef046700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7fabef046700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:42:38 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:42:38 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ grep -o 'dev.*' +++++ awk '{print $2}' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ cut -d / -f 1 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ local nic=enp1s0 +++ grep 'inet ' +++ head -n 1 +++ awk '{print $2}' +++ ip addr show dev enp1s0 ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ tail -n 1 +++ mount -t hugetlbfs +++ awk '/pagesize=2M/{print($3)}' ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ cut -d ' ' -f 1 +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ get_local_ips ++++ tr '\n' , ++++ cat /proc/net/fib_trie ++++ grep -vi host ++++ awk '/32 host/ { print f } {f=$2}' ++++ sort ++++ uniq +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ set ++ sed 's/^API__//g' ++ cut -d = -f 1 ++ grep '^API__.*__.*=.*$' ++ sort + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:42:47.275 7fed967fb940 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:42:47.420 7fed967fb940 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:42:47.432 7fed967fb940 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:42:47.432 7fed967fb940 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:43:02 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7fed9326d700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7fed9326d700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:43:03 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:43:03 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ awk '{print $2}' +++++ grep -o 'dev.*' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ cut -d / -f 1 +++ command -v ip +++ local nic=enp1s0 +++ grep 'inet ' +++ awk '{print $2}' +++ head -n 1 +++ ip addr show dev enp1s0 ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ awk '/pagesize=2M/{print($3)}' +++ tail -n 1 ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ cut -d ' ' -f 1 +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ get_local_ips ++++ tr '\n' , ++++ cat /proc/net/fib_trie ++++ sort ++++ grep -vi host ++++ uniq ++++ awk '/32 host/ { print f } {f=$2}' +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ set ++ grep '^API__.*__.*=.*$' ++ sort ++ sed 's/^API__//g' ++ cut -d = -f 1 + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:43:12.290 7f2519efeb80 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:43:12.434 7f2519efeb80 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:43:12.446 7f2519efeb80 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:43:12.447 7f2519efeb80 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:43:27 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f2516938700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f2516938700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:43:28 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:43:28 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ grep -o 'dev.*' +++++ awk '{print $2}' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ local nic=enp1s0 +++ ip addr show dev enp1s0 +++ head -n 1 +++ awk '{print $2}' +++ cut -d / -f 1 +++ grep 'inet ' ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ awk '/pagesize=2M/{print($3)}' +++ mount -t hugetlbfs +++ tail -n 1 ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ cut -d , -f 1 ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + nc -z 10.0.0.38 9041 + echo -e '\035\nquit' + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list +++ cut -d ' ' -f 1 ++++ get_local_ips ++++ tr '\n' , ++++ cat /proc/net/fib_trie ++++ sort ++++ uniq ++++ grep -vi host ++++ awk '/32 host/ { print f } {f=$2}' +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ grep '^API__.*__.*=.*$' ++ set -o posix ++ set ++ sort ++ sed 's/^API__//g' ++ cut -d = -f 1 + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:43:37.689 7f0a779e7ac0 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:43:37.989 7f0a779e7ac0 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:43:38.021 7f0a779e7ac0 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:43:38.028 7f0a779e7ac0 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:43:53 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f0a74411700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f0a74411700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:43:53 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:43:53 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ grep -o 'dev.*' +++++ awk '{print $2}' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ local nic=enp1s0 +++ grep 'inet ' +++ head -n 1 +++ ip addr show dev enp1s0 +++ cut -d / -f 1 +++ awk '{print $2}' ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ tail -n 1 +++ awk '/pagesize=2M/{print($3)}' ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ cut -d , -f 1 ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list +++ cut -d ' ' -f 1 ++++ get_local_ips ++++ cat /proc/net/fib_trie ++++ uniq ++++ tr '\n' , ++++ sort ++++ grep -vi host ++++ awk '/32 host/ { print f } {f=$2}' +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ set ++ grep '^API__.*__.*=.*$' ++ sort ++ cut -d = -f 1 ++ sed 's/^API__//g' + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:44:03.324 7f6f810096c0 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:44:03.504 7f6f810096c0 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:44:03.516 7f6f810096c0 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:44:03.517 7f6f810096c0 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:44:18 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f6f7da2e700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f6f7da2e700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:44:19 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:44:19 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ grep -o 'dev.*' +++++ awk '{print $2}' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ cut -d / -f 1 +++ command -v ip +++ local nic=enp1s0 +++ ip addr show dev enp1s0 +++ awk '{print $2}' +++ head -n 1 +++ grep 'inet ' ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ awk '/pagesize=2M/{print($3)}' +++ tail -n 1 ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ cut -d ' ' -f 1 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ get_local_ips ++++ tr '\n' , ++++ awk '/32 host/ { print f } {f=$2}' ++++ grep -vi host ++++ cat /proc/net/fib_trie ++++ sort ++++ uniq +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ set ++ grep '^API__.*__.*=.*$' ++ cut -d = -f 1 ++ sed 's/^API__//g' ++ sort + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:44:28.285 7f643fac2d40 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:44:28.475 7f643fac2d40 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:44:28.489 7f643fac2d40 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:44:28.489 7f643fac2d40 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:44:43 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f643c2c1700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f643c2c1700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:44:44 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:44:44 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ awk '{print $2}' +++++ grep -o 'dev.*' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ cut -d / -f 1 +++ local nic=enp1s0 +++ ip addr show dev enp1s0 +++ awk '{print $2}' +++ head -n 1 +++ grep 'inet ' ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ tail -n 1 +++ awk '/pagesize=2M/{print($3)}' ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ cut -d ' ' -f 1 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ get_local_ips ++++ tr '\n' , ++++ cat /proc/net/fib_trie ++++ grep -vi host ++++ awk '/32 host/ { print f } {f=$2}' ++++ sort ++++ uniq +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ set ++ sort ++ grep '^API__.*__.*=.*$' ++ cut -d = -f 1 ++ sed 's/^API__//g' + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:44:55.259 7fd1c8fa2640 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:44:55.553 7fd1c8fa2640 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:44:55.572 7fd1c8fa2640 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:44:55.573 7fd1c8fa2640 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:45:10 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7fd1c5a42700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7fd1c5a42700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:45:11 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:45:11 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ grep -o 'dev.*' +++++ awk '{print $2}' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ local nic=enp1s0 +++ cut -d / -f 1 +++ grep 'inet ' +++ ip addr show dev enp1s0 +++ awk '{print $2}' +++ head -n 1 ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ tail -n 1 +++ awk '/pagesize=2M/{print($3)}' ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list +++ cut -d ' ' -f 1 ++++ tr '\n' , ++++ get_local_ips ++++ cat /proc/net/fib_trie ++++ sort ++++ awk '/32 host/ { print f } {f=$2}' ++++ grep -vi host ++++ uniq +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ set ++ cut -d = -f 1 ++ sed 's/^API__//g' ++ grep '^API__.*__.*=.*$' ++ sort + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:45:20.174 7ff12565ddc0 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:45:20.328 7ff12565ddc0 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:45:20.346 7ff12565ddc0 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:45:20.346 7ff12565ddc0 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:45:35 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7ff122084700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7ff122084700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:45:36 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:45:36 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ grep -o 'dev.*' +++++ ip route get 1 +++++ awk '{print $2}' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ local nic=enp1s0 +++ cut -d / -f 1 +++ awk '{print $2}' +++ head -n 1 +++ grep 'inet ' +++ ip addr show dev enp1s0 ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ tail -n 1 +++ awk '/pagesize=2M/{print($3)}' ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ cut -d ' ' -f 1 +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ get_local_ips ++++ tr '\n' , ++++ awk '/32 host/ { print f } {f=$2}' ++++ grep -vi host ++++ cat /proc/net/fib_trie ++++ sort ++++ uniq +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ set ++ grep '^API__.*__.*=.*$' ++ cut -d = -f 1 ++ sort ++ sed 's/^API__//g' + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:45:45.547 7ff92a16d140 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:45:45.802 7ff92a16d140 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:45:45.829 7ff92a16d140 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:45:45.830 7ff92a16d140 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:46:00 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7ff926bfa700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7ff926bfa700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:46:01 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:46:01 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ grep -o 'dev.*' +++++ awk '{print $2}' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ cut -d / -f 1 +++ local nic=enp1s0 +++ ip addr show dev enp1s0 +++ head -n 1 +++ grep 'inet ' +++ awk '{print $2}' ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ awk '/pagesize=2M/{print($3)}' +++ tail -n 1 ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ cut -d ' ' -f 1 +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ get_local_ips ++++ awk '/32 host/ { print f } {f=$2}' ++++ tr '\n' , ++++ uniq ++++ sort ++++ cat /proc/net/fib_trie ++++ grep -vi host +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ grep '^API__.*__.*=.*$' ++ sort ++ sed 's/^API__//g' ++ cut -d = -f 1 ++ set -o posix ++ set + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:46:12.002 7fdd89626dc0 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:46:12.287 7fdd89626dc0 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:46:12.327 7fdd89626dc0 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:46:12.327 7fdd89626dc0 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:46:27 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7fdd859b4700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7fdd859b4700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:46:28 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:46:28 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ grep -o 'dev.*' +++++ awk '{print $2}' +++++ ip route get 1 ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ local nic=enp1s0 +++ grep 'inet ' +++ ip addr show dev enp1s0 +++ awk '{print $2}' +++ cut -d / -f 1 +++ head -n 1 ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ awk '/pagesize=2M/{print($3)}' +++ tail -n 1 ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ cut -d ' ' -f 1 +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ get_local_ips ++++ tr '\n' , ++++ cat /proc/net/fib_trie ++++ grep -vi host ++++ awk '/32 host/ { print f } {f=$2}' ++++ uniq ++++ sort +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ set ++ cut -d = -f 1 ++ sort ++ sed 's/^API__//g' ++ grep '^API__.*__.*=.*$' + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:46:39.147 7f8df7d12580 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:46:39.317 7f8df7d12580 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:46:39.331 7f8df7d12580 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:46:39.331 7f8df7d12580 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:46:54 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f8df4739700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f8df4739700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:46:55 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:46:55 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ grep -o 'dev.*' +++++ awk '{print $2}' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ cut -d / -f 1 +++ command -v ip +++ local nic=enp1s0 +++ awk '{print $2}' +++ grep 'inet ' +++ head -n 1 +++ ip addr show dev enp1s0 ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ awk '/pagesize=2M/{print($3)}' +++ tail -n 1 ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list +++ cut -d ' ' -f 1 ++++ get_local_ips ++++ tr '\n' , ++++ cat /proc/net/fib_trie ++++ uniq ++++ awk '/32 host/ { print f } {f=$2}' ++++ grep -vi host ++++ sort +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ sed 's/^API__//g' ++ cut -d = -f 1 ++ sort ++ grep '^API__.*__.*=.*$' ++ set -o posix ++ set + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:47:05.669 7f22f0f6fc40 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:47:05.855 7f22f0f6fc40 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:47:05.871 7f22f0f6fc40 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:47:05.871 7f22f0f6fc40 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:47:20 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f22ed990700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f22ed990700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:47:21 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:47:21 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ awk '{print $2}' +++++ grep -o 'dev.*' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ cut -d / -f 1 +++ local nic=enp1s0 +++ grep 'inet ' +++ awk '{print $2}' +++ head -n 1 +++ ip addr show dev enp1s0 ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ tail -n 1 +++ awk '/pagesize=2M/{print($3)}' ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list +++ cut -d ' ' -f 1 ++++ get_local_ips ++++ tr '\n' , ++++ cat /proc/net/fib_trie ++++ awk '/32 host/ { print f } {f=$2}' ++++ grep -vi host ++++ sort ++++ uniq +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ sort ++ sed 's/^API__//g' ++ grep '^API__.*__.*=.*$' ++ cut -d = -f 1 ++ set -o posix ++ set + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:47:32.318 7fc42fc0c340 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:47:32.520 7fc42fc0c340 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:47:32.537 7fc42fc0c340 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:47:32.537 7fc42fc0c340 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:47:47 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7fc42c617700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7fc42c617700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:47:48 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:47:48 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ grep -o 'dev.*' +++++ awk '{print $2}' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ local nic=enp1s0 +++ cut -d / -f 1 +++ ip addr show dev enp1s0 +++ head -n 1 +++ awk '{print $2}' +++ grep 'inet ' ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ tail -n 1 +++ awk '/pagesize=2M/{print($3)}' ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list +++ cut -d ' ' -f 1 ++++ tr '\n' , ++++ get_local_ips ++++ cat /proc/net/fib_trie ++++ grep -vi host ++++ uniq ++++ awk '/32 host/ { print f } {f=$2}' ++++ sort +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ grep '^API__.*__.*=.*$' ++ set -o posix ++ set ++ sed 's/^API__//g' ++ sort ++ cut -d = -f 1 + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:47:58.549 7f2371ab2bc0 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:47:58.732 7f2371ab2bc0 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:47:58.748 7f2371ab2bc0 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:47:58.748 7f2371ab2bc0 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:48:13 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f236e541700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f236e541700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:48:14 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:48:14 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ ip route get 1 +++++ awk '{print $2}' +++++ grep -o 'dev.*' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ local nic=enp1s0 +++ cut -d / -f 1 +++ awk '{print $2}' +++ grep 'inet ' +++ ip addr show dev enp1s0 +++ head -n 1 ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ tail -n 1 +++ awk '/pagesize=2M/{print($3)}' ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.38 9041 + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ cut -d ' ' -f 1 +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ get_local_ips ++++ tr '\n' , ++++ awk '/32 host/ { print f } {f=$2}' ++++ cat /proc/net/fib_trie ++++ uniq ++++ grep -vi host ++++ sort +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ set ++ sort ++ grep '^API__.*__.*=.*$' ++ cut -d = -f 1 ++ sed 's/^API__//g' + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:48:23.670 7f4179b41c80 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:48:23.833 7f4179b41c80 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:48:23.846 7f4179b41c80 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:48:23.846 7f4179b41c80 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:48:38 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f41765d5700>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f41765d5700>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:48:39 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:48:39 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ grep -o 'dev.*' +++++ ip route get 1 +++++ awk '{print $2}' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ command -v ip +++ local nic=enp1s0 +++ grep 'inet ' +++ cut -d / -f 1 +++ awk '{print $2}' +++ ip addr show dev enp1s0 +++ head -n 1 ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ mount -t hugetlbfs +++ awk '/pagesize=2M/{print($3)}' +++ tail -n 1 ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 ++ cut -d , -f 1 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + nc -z 10.0.0.38 9041 + echo -e '\035\nquit' + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ cut -d ' ' -f 1 +++ read -ra server_list ++++ tr '\n' , ++++ get_local_ips ++++ cat /proc/net/fib_trie ++++ awk '/32 host/ { print f } {f=$2}' ++++ grep -vi host ++++ sort ++++ uniq +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ set ++ sort ++ sed 's/^API__//g' ++ grep '^API__.*__.*=.*$' ++ cut -d = -f 1 + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:48:50.136 7f1d3e073900 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:48:50.283 7f1d3e073900 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:48:50.295 7f1d3e073900 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:48:50.295 7f1d3e073900 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] [Introspect:8084]10.0.0.38 - - [2026-09-14 02:49:04] "GET /Snh_SandeshUVECacheReq?x=ConfigApiWorker HTTP/1.1" 200 314 0.000785 AttributeError Python 3.9.25: /usr/bin/python3 Mon Sep 14 02:49:05 2026 A problem occurred in a Python script. Here is the sequence of function calls leading up to the error, in the order they occurred. /usr/local/bin/contrail-api in 4 import sys 5 from vnc_cfg_api_server.api_server import server_main 6 if __name__ == '__main__': 7 sys.argv[0] = re.sub(r'(-script\.pyw|\.exe)?$', '', sys.argv[0]) 8 sys.exit(server_main()) sys = sys.exit = server_main = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5373 vnc_cgitb.enable(format='text') 5374 5375 main(args_str, VncApiServer(args_str)) 5376 #server_main 5377 global main = args_str = None global VncApiServer = /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in __init__(self=, args_str='--conf_file /etc/contrail/contrail-api-0.conf --...ontrail/contrail-keystone-auth.conf --worker_id 0') 2215 self._db_connect(True) 2216 else: 2217 self._db_connect(self._args.reset_config) 2218 self._db_init_entries() 2219 self = self._db_connect = > self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f1d3aa9b6a0>) self._args.reset_config = False /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py in _db_connect(self=, reset_config=False) 3539 db_server_list = cass_server_list 3540 3541 self._db_conn = VncDbClient( 3542 self, db_server_list, rabbit_servers, rabbit_port, rabbit_user, 3543 rabbit_password, rabbit_vhost, rabbit_ha_mode, self._args.listen_ip_addr, self = self._db_conn = None global VncDbClient = db_server_list = ['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'] rabbit_servers = '10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673' rabbit_port = '5672' rabbit_user = 'guest' rabbit_password = '***' rabbit_vhost = '/' rabbit_ha_mode = False self._args = Namespace(conf_file=['/etc/contrail/contrail-api...esh_base.SandeshConfig object at 0x7f1d3aa9b6a0>) self._args.listen_ip_addr = '10.0.0.38' reset_config = False zk_server = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' self._args.cluster_id = '' db_credential undefined cred = None db_engine = 'cassandra' rabbit_use_ssl undefined self._args.rabbit_use_ssl = 'false' kombu_ssl_version undefined self._args.kombu_ssl_version = '' kombu_ssl_keyfile undefined self._args.kombu_ssl_keyfile = '' kombu_ssl_certfile undefined self._args.kombu_ssl_certfile = '' kombu_ssl_ca_certs undefined self._args.kombu_ssl_ca_certs = '' obj_cache_entries = 10000 obj_cache_exclude_types = [''] debug_obj_cache_types = [''] filter_optimization_enabled = False cassandra_use_ssl = False self._args.cassandra_use_ssl = False cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' self._args.cassandra_ca_certs = '/etc/contrail/ssl/certs/ca-cert.pem' cassandra_driver undefined self._args.cassandra_driver = 'cql' zk_ssl_enable undefined self._args.zookeeper_ssl_enable = False zk_ssl_keyfile undefined self._args.zookeeper_ssl_keyfile = None zk_ssl_certificate undefined self._args.zookeeper_ssl_certificate = None zk_ssl_ca_cert undefined self._args.zookeeper_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, api_svr_mgr=, db_srv_list=['10.0.0.38:9041', '10.0.0.189:9041', '10.0.0.50:9041'], rabbit_servers='10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673', rabbit_port='5672', rabbit_user='guest', rabbit_password='***', rabbit_vhost='/', rabbit_ha_mode=False, host_ip='10.0.0.38', reset_config=False, zk_servers='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', db_prefix='', db_credential=None, obj_cache_entries=10000, obj_cache_exclude_types=[''], debug_obj_cache_types=[''], db_engine='cassandra', cassandra_use_ssl=False, cassandra_ca_certs='/etc/contrail/ssl/certs/ca-cert.pem', cassandra_driver='cql', zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None, filter_optimization_enabled=False, **kwargs={'kombu_ssl_ca_certs': '', 'kombu_ssl_certfile': '', 'kombu_ssl_keyfile': '', 'kombu_ssl_version': '', 'rabbit_use_ssl': 'false'}) 1226 1227 if db_engine == 'cassandra': 1228 self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), 1229 zk_servers, host_ip, 1230 reset_config, db_prefix, self.config_log, self = self._zk_db undefined global VncZkClient = api_svr_mgr = api_svr_mgr.get_worker_id = > zk_servers = '10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181' host_ip = '10.0.0.38' reset_config = False db_prefix = '' self.config_log = > log_response_time undefined self.log_zk_response_time = functools.partial(>, 'ZK') zk_ssl_enable = False zk_ssl_keyfile = None zk_ssl_certificate = None zk_ssl_ca_cert = None /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py in __init__(self=, instance_id=0, zk_server_ip='10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181', host_ip='10.0.0.38', reset_config=False, db_prefix='', sandesh_hdl=>, log_response_time=functools.partial(>, 'ZK'), zk_ssl_enable=False, zk_ssl_keyfile=None, zk_ssl_certificate=None, zk_ssl_ca_cert=None) 522 self._zk_client.set_lost_cb(self.reconnect_zk) 523 break 524 except gevent.event.Timeout as e: 525 self._sandesh._logger.warn( 526 f"Timeout occurred while trying to connect to Zookeeper for client {client_name}: {str(e)}" global gevent = gevent.event = gevent.event.Timeout undefined e undefined AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' __cause__ = None __class__ = __context__ = AttributeError("module 'gevent._gevent_cevent' has no attribute 'Timeout'") __delattr__ = __dict__ = {} __dir__ = __doc__ = 'Attribute not found.' __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = args = ("module 'gevent._gevent_cevent' has no attribute 'Timeout'",) with_traceback = The above is a description of an error in a Python program. Here is the original traceback: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 497, in connect self._zk_client.start() File "/usr/local/lib/python3.9/site-packages/kazoo/client.py", line 673, in start raise self.handler.timeout_exception("Connection time-out") kazoo.handlers.gevent.SequentialGeventHandler.timeout_exception During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 514, in __init__ self._zk_client = ZookeeperClient(client_name, zk_server_ip, File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 478, in __init__ self.connect() File "/usr/local/lib/python3.9/site-packages/cfgm_common/zkclient.py", line 499, in connect except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/local/bin/contrail-api", line 8, in sys.exit(server_main()) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 5375, in server_main main(args_str, VncApiServer(args_str)) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 2217, in __init__ self._db_connect(self._args.reset_config) File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/api_server.py", line 3541, in _db_connect self._db_conn = VncDbClient( File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 1228, in __init__ self._zk_db = VncZkClient(api_svr_mgr.get_worker_id(), File "/usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_db.py", line 524, in __init__ except gevent.event.Timeout as e: AttributeError: module 'gevent._gevent_cevent' has no attribute 'Timeout' +++ date ++ echo 'INFO: =================== Mon Sep 14 02:49:06 AM UTC 2026 ===================' INFO: =================== Mon Sep 14 02:49:06 AM UTC 2026 =================== ++ LOG_LOCAL=1 ++ source /functions.sh ++ source /contrail-functions.sh +++ get_default_ip ++++ get_default_nic ++++ get_gateway_nic_for_ip 1 ++++ command -v ip ++++ local ip=1 +++++ grep -o 'dev.*' +++++ ip route get 1 +++++ awk '{print $2}' ++++ local iface=enp1s0 ++++ [[ enp1s0 == \l\o ]] ++++ echo enp1s0 +++ local nic=enp1s0 +++ get_ip_for_nic enp1s0 +++ local nic=enp1s0 +++ get_cidr_for_nic enp1s0 +++ cut -d / -f 1 +++ command -v ip +++ local nic=enp1s0 +++ awk '{print $2}' +++ head -n 1 +++ grep 'inet ' +++ ip addr show dev enp1s0 ++ DEFAULT_LOCAL_IP=10.0.0.38 ++ ENCAP_PRIORITY=MPLSoUDP,MPLSoGRE,VXLAN ++ VXLAN_VN_ID_MODE=automatic ++ DPDK_UIO_DRIVER=uio_pci_generic ++ CPU_CORE_MASK=0x01 ++ SERVICE_CORE_MASK= ++ DPDK_CTRL_THREAD_MASK= ++ HUGE_PAGES= ++ HUGE_PAGES_DIR=/dev/hugepages ++ HUGE_PAGES_1GB=0 ++ HUGE_PAGES_2MB=256 ++ HUGE_PAGES_1GB_DIR= ++ HUGE_PAGES_2MB_DIR= ++ [[ 0 != 0 ]] ++ [[ 0 != 256 ]] ++ [[ -z '' ]] +++ awk '/pagesize=2M/{print($3)}' +++ mount -t hugetlbfs +++ tail -n 1 ++ HUGE_PAGES_2MB_DIR= ++ DPDK_MEM_PER_SOCKET=1024 ++ DPDK_COMMAND_ADDITIONAL_ARGS= ++ NIC_OFFLOAD_ENABLE=False ++ DPDK_ENABLE_VLAN_FWRD=False ++ DIST_SNAT_PROTO_PORT_LIST= ++ CLOUD_ORCHESTRATOR=openstack ++ CLOUD_ADMIN_ROLE=admin ++ AAA_MODE=rbac ++ AUTH_MODE=keystone ++ AUTH_PARAMS= ++ SSL_ENABLE=false ++ SSL_INSECURE=True ++ SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ SERVER_CA_KEYFILE=/etc/contrail/ssl/private/ca-key.pem ++ SELFSIGNED_CERTS_WITH_IPS=True ++ CONTROLLER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ANALYTICS_API_PORT=8081 ++ ANALYTICS_API_INTROSPECT_PORT=8090 ++ ANALYTICSDB_PORT=9160 ++ ANALYTICSDB_CQL_PORT=9042 ++ TOPOLOGY_INTROSPECT_PORT=5921 ++ QUERYENGINE_INTROSPECT_PORT=8091 +++ get_server_list ANALYTICS ':8081 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8081 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8081 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.189:8081 10.0.0.50:8081' +++ get_server_list ANALYTICSDB ':9042 ' +++ local server_typ=ANALYTICSDB_NODES +++ local 'port_with_delim=:9042 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9042 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.189:9042 10.0.0.50:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ALARMGEN_INTROSPECT_PORT=5995 ++ BGP_PORT=179 ++ BGP_AUTO_MESH=true ++ BGP_ASN=64512 ++ ENABLE_4BYTE_AS=false ++ APPLY_DEFAULTS=true ++ COLLECTOR_PORT=8086 ++ COLLECTOR_INTROSPECT_PORT=8089 ++ COLLECTOR_SYSLOG_PORT=514 ++ COLLECTOR_SFLOW_PORT=6343 ++ COLLECTOR_IPFIX_PORT=4739 ++ COLLECTOR_PROTOBUF_PORT=3333 ++ COLLECTOR_STRUCTURED_SYSLOG_PORT=3514 ++ SNMPCOLLECTOR_INTROSPECT_PORT=5920 +++ get_server_list ANALYTICS ':8086 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:8086 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8086 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.189:8086 10.0.0.50:8086' ++ CASSANDRA_PORT=9160 ++ CASSANDRA_CQL_PORT=9042 ++ CASSANDRA_SSL_STORAGE_PORT=7011 ++ CASSANDRA_STORAGE_PORT=7010 ++ CASSANDRA_JMX_LOCAL_PORT=7200 ++ CONFIGDB_CASSANDRA_DRIVER=cql ++ CONFIG_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ CONFIG_API_PORT=8082 ++ CONFIG_API_INTROSPECT_PORT=8084 ++ CONFIG_API_ADMIN_PORT=8095 ++ CONFIGDB_PORT=9161 ++ CONFIGDB_CQL_PORT=9041 +++ get_server_list CONFIG ':8082 ' +++ local server_typ=CONFIG_NODES +++ local 'port_with_delim=:8082 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:8082 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.189:8082 10.0.0.50:8082' +++ get_server_list CONFIGDB ':9161 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9161 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9161 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.189:9161 10.0.0.50:9161' +++ get_server_list CONFIGDB ':9041 ' +++ local server_typ=CONFIGDB_NODES +++ local 'port_with_delim=:9041 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9041 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' ++ CONFIG_API_VIP= ++ CONFIG_API_SSL_ENABLE=false ++ CONFIG_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CONFIG_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CONFIG_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CONFIG_API_WORKER_COUNT=1 ++ CONFIG_API_MAX_REQUESTS=1024 ++ ANALYTICS_API_SSL_ENABLE=false ++ ANALYTICS_API_SSL_INSECURE=True ++ ANALYTICS_API_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ ANALYTICS_API_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ ANALYTICS_API_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_ENABLE=false ++ CASSANDRA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ CASSANDRA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ CASSANDRA_SSL_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ CASSANDRA_SSL_KEYSTORE_PASSWORD=astrophytum ++ CASSANDRA_SSL_TRUSTSTORE_PASSWORD=ornatum ++ CASSANDRA_SSL_PROTOCOL=TLS ++ CASSANDRA_SSL_ALGORITHM=SunX509 ++ CASSANDRA_SSL_CIPHER_SUITES='[TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA]' ++ CASSANDRA_CONFIG_MEMTABLE_FLUSH_WRITER=4 ++ CASSANDRA_CONFIG_CONCURRECT_COMPACTORS=4 ++ CASSANDRA_CONFIG_COMPACTION_THROUGHPUT_MB_PER_SEC=256 ++ CASSANDRA_CONFIG_CONCURRECT_READS=64 ++ CASSANDRA_CONFIG_CONCURRECT_WRITES=64 ++ CASSANDRA_CONFIG_MEMTABLE_ALLOCATION_TYPE=offheap_objects ++ CASSANDRA_REAPER_ENABLED=false ++ CASSANDRA_REAPER_JMX_KEY=reaperJmxKey ++ CASSANDRA_REAPER_JMX_AUTH_USERNAME=reaperUser ++ CASSANDRA_REAPER_JMX_AUTH_PASSWORD=reaperPass ++ CASSANDRA_REAPER_APP_PORT=8071 ++ CASSANDRA_REAPER_ADM_PORT=8072 ++ CONTROL_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.254,10.20.0.25,10.20.0.14 ++ DNS_SERVER_PORT=53 ++ DNS_INTROSPECT_PORT=8092 ++ RNDC_KEY=xvysmOR8lnUQRBcunkC6vg== ++ USE_EXTERNAL_TFTP=False ++ ZOOKEEPER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ ZOOKEEPER_PORT=2181 ++ ZOOKEEPER_PORTS=2888:3888 +++ get_server_list ZOOKEEPER :2181, +++ local server_typ=ZOOKEEPER_NODES +++ local port_with_delim=:2181, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:2181, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.189:2181,10.0.0.50:2181 +++ get_server_list ZOOKEEPER ':2181 ' +++ local server_typ=ZOOKEEPER_NODES +++ local 'port_with_delim=:2181 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:2181 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.189:2181 10.0.0.50:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ RABBITMQ_NODE_PORT=5673 +++ get_server_list RABBITMQ :5673, +++ local server_typ=RABBITMQ_NODES +++ local port_with_delim=:5673, +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+=10.0.0.38:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+=10.0.0.189:5673, +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.189:5673,10.0.0.50:5673 ++ RABBITMQ_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_SSL_FAIL_IF_NO_PEER_CERT=true ++ RABBITMQ_VHOST=/ ++ RABBITMQ_USER=guest ++ RABBITMQ_PASSWORD=guest ++ RABBITMQ_USE_SSL=false ++ RABBITMQ_SSL_VER=tlsv1.2 ++ RABBITMQ_CLIENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ RABBITMQ_CLIENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ RABBITMQ_CLIENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ RABBITMQ_HEARTBEAT_INTERVAL=60 ++ RABBITMQ_CLUSTER_PARTITION_HANDLING=autoheal ++ RABBITMQ_MIRRORED_QUEUE_MODE=all ++ REDIS_SERVER_PORT=6379 ++ REDIS_SERVER_PASSWORD= +++ get_server_list ANALYTICS ':6379 ' +++ local server_typ=ANALYTICS_NODES +++ local 'port_with_delim=:6379 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:6379 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.189:6379 10.0.0.50:6379' ++ REDIS_LISTEN_ADDRESS= ++ REDIS_PROTECTED_MODE= ++ REDIS_SSL_ENABLE=false ++ REDIS_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ REDIS_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ REDIS_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ redis_ssl_config= ++ KAFKA_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KAFKA_PORT=9092 +++ get_server_list KAFKA ':9092 ' +++ local server_typ=KAFKA_NODES +++ local 'port_with_delim=:9092 ' +++ local server_list= +++ IFS=, +++ read -ra server_list +++ local extended_server_list= +++ for server in "${server_list[@]}" ++++ echo 10.0.0.38 +++ local server_address=10.0.0.38 +++ extended_server_list+='10.0.0.38:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.189 +++ local server_address=10.0.0.189 +++ extended_server_list+='10.0.0.189:9092 ' +++ for server in "${server_list[@]}" ++++ echo 10.0.0.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.189:9092 10.0.0.50:9092' ++ KAFKA_SSL_ENABLE=false ++ KAFKA_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ KAFKA_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ KAFKA_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ KEYSTONE_AUTH_ADMIN_TENANT=admin ++ KEYSTONE_AUTH_ADMIN_USER=admin ++ KEYSTONE_AUTH_ADMIN_PASSWORD=contrail123 ++ KEYSTONE_AUTH_PROJECT_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_USER_DOMAIN_NAME=Default ++ KEYSTONE_AUTH_REGION_NAME=RegionOne ++ KEYSTONE_AUTH_URL_VERSION=/v3 ++ KEYSTONE_AUTH_HOST=10.0.0.38 ++ KEYSTONE_AUTH_PROTO=http ++ KEYSTONE_AUTH_ADMIN_PORT=5000 ++ KEYSTONE_AUTH_PUBLIC_PORT=5000 ++ KEYSTONE_AUTH_URL_TOKENS=/v3/auth/tokens ++ KEYSTONE_AUTH_INSECURE=True ++ KEYSTONE_AUTH_CERTFILE= ++ KEYSTONE_AUTH_KEYFILE= ++ KEYSTONE_AUTH_CA_CERTFILE= ++ KEYSTONE_AUTH_ENDPOINT_TYPE= ++ KEYSTONE_AUTH_SYNC_ON_DEMAND= ++ KEYSTONE_AUTH_INTERFACE=public ++ KUBEMANAGER_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ KUBERNETES_CLUSTER_NAME=k8s ++ KUBERNETES_CNI_META_PLUGIN=multus ++ METADATA_PROXY_SECRET=contrail ++ BARBICAN_TENANT_NAME=service ++ BARBICAN_USER=barbican ++ BARBICAN_PASSWORD=contrail123 ++ AGENT_MODE=kernel ++ EXTERNAL_ROUTERS= ++ SUBCLUSTER= ++ VROUTER_COMPUTE_NODE_ADDRESS= ++ VROUTER_MODULE_OPTIONS= ++ FABRIC_SNAT_HASH_TABLE_SIZE=4096 ++ TSN_EVPN_MODE=False ++ TSN_NODES='[]' ++ PRIORITY_ID= ++ PRIORITY_BANDWIDTH= ++ PRIORITY_SCHEDULING= ++ QOS_QUEUE_ID= ++ QOS_LOGICAL_QUEUES= ++ QOS_DEF_HW_QUEUE=False ++ PRIORITY_TAGGING=True ++ SLO_DESTINATION=collector ++ '[' -n '' ']' ++ SAMPLE_DESTINATION=collector ++ FLOW_EXPORT_RATE=0 ++ WEBUI_NODES=10.0.0.38,10.0.0.189,10.0.0.50 ++ WEBUI_JOB_SERVER_PORT=3000 ++ KUE_UI_PORT=3002 ++ WEBUI_HTTP_LISTEN_PORT=8180 ++ WEBUI_HTTPS_LISTEN_PORT=8143 ++ WEBUI_SSL_KEY_FILE=/etc/contrail/webui_ssl/cs-key.pem ++ WEBUI_SSL_CERT_FILE=/etc/contrail/webui_ssl/cs-cert.pem ++ WEBUI_SSL_CIPHERS=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:AES256-SHA ++ WEBUI_STATIC_AUTH_USER=admin ++ WEBUI_STATIC_AUTH_PASSWORD=contrail123 ++ WEBUI_STATIC_AUTH_ROLE=cloudAdmin ++ XMPP_SERVER_PORT=5269 ++ XMPP_SSL_ENABLE=false ++ XMPP_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ XMPP_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ XMPP_SERVER_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ LINKLOCAL_SERVICE_PORT=80 ++ LINKLOCAL_SERVICE_NAME=metadata ++ LINKLOCAL_SERVICE_IP=169.254.169.254 ++ IPFABRIC_SERVICE_PORT=8775 ++ INTROSPECT_SSL_ENABLE=false ++ INTROSPECT_SSL_INSECURE=True ++ INTROSPECT_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ INTROSPECT_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ INTROSPECT_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ INTROSPECT_LISTEN_ALL=True ++ SANDESH_SSL_ENABLE=false ++ SANDESH_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_SERVER_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ SANDESH_SERVER_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ SANDESH_CA_CERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ METADATA_SSL_ENABLE=false ++ METADATA_SSL_CERTFILE= ++ METADATA_SSL_KEYFILE= ++ METADATA_SSL_CA_CERTFILE= ++ METADATA_SSL_CERT_TYPE= ++ CONFIGURE_IPTABLES=false ++ FWAAS_ENABLE=False ++ CONTAINERD_NAMESPACE=k8s.io ++ TOR_AGENT_OVS_KA=10000 ++ TOR_TYPE=ovs ++ TOR_OVS_PROTOCOL=tcp ++ TORAGENT_SSL_CERTFILE=/etc/contrail/ssl/certs/server.pem ++ TORAGENT_SSL_KEYFILE=/etc/contrail/ssl/private/server-privkey.pem ++ TORAGENT_SSL_CACERTFILE=/etc/contrail/ssl/certs/ca-cert.pem ++ [[ /v3 == \/\v\2\.\0 ]] ++ [[ openstack == \o\p\e\n\s\t\a\c\k ]] ++ AUTH_MODE=keystone ++ [[ keystone == \k\e\y\s\t\o\n\e ]] ++ AUTH_PARAMS='--admin_password contrail123' ++ AUTH_PARAMS+=' --admin_tenant_name admin' ++ AUTH_PARAMS+=' --admin_user admin' ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ read -r -d '' sandesh_client_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ xmpp_certs_config= ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ analytics_api_ssl_opts= ++ read -r -d '' rabbitmq_config ++ true ++ read -r -d '' rabbit_config ++ true ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ is_enabled false ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ kafka_ssl_config= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z '' ]] ++ is_enabled False ++ local val=false ++ [[ false == \t\r\u\e ]] ++ [[ false == \y\e\s ]] ++ [[ false == \e\n\a\b\l\e\d ]] ++ export TSN_AGENT_MODE= ++ TSN_AGENT_MODE= ++ [[ -n '' ]] ++ collector_stats_config= ++ [[ -z x ]] ++ RSYSLOGD_XFLOW_LISTEN_PORT=9898 + pre_start_init + wait_certs_if_ssl_enabled + is_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_config_api_certs_if_ssl_enabled + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + return + wait_for_cassandra ++ cut -d , -f 1 ++ echo 10.0.0.38,10.0.0.189,10.0.0.50 + local cassandra=10.0.0.38 + (( i=1 )) + (( i<=30 )) + nc -z 10.0.0.38 9041 + echo -e '\035\nquit' + echo 'INFO: Cassandra is connected' INFO: Cassandra is connected + sleep 5 + return 0 + host_ip=0.0.0.0 + is_enabled + local val= + [[ '' == \t\r\u\e ]] + [[ '' == \y\e\s ]] + [[ '' == \e\n\a\b\l\e\d ]] ++ get_listen_ip_for_node CONFIG +++ find_my_ip_and_order_for_node CONFIG +++ local server_typ=CONFIG_NODES +++ find_my_ip_and_order_for_node_list 10.0.0.38,10.0.0.189,10.0.0.50 +++ cut -d ' ' -f 1 +++ local servers=10.0.0.38,10.0.0.189,10.0.0.50 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ get_local_ips ++++ awk '/32 host/ { print f } {f=$2}' ++++ grep -vi host ++++ sort ++++ cat /proc/net/fib_trie ++++ uniq ++++ tr '\n' , +++ local local_ips=,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, +++ local ord=1 +++ for server in "${server_list[@]}" +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.38'\''))' +++ local server_ip=10.0.0.38 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.38 ]] +++ [[ ,10.0.0.38,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ echo 10.0.0.38 1 +++ return ++ local ip=10.0.0.38 ++ [[ -z 10.0.0.38 ]] ++ echo 10.0.0.38 + host_ip=10.0.0.38 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.189:9041 10.0.0.50:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.38:8082' + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + is_enabled False + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + neutron_section= + mkdir -p /etc/contrail + introspect_port_list=("${CONFIG_API_INTROSPECT_PORT}") + admin_port_list=("${CONFIG_API_ADMIN_PORT}") + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT-1 )) + (( index=0 )) + (( index < CONFIG_API_WORKER_COUNT )) + cat ++ get_introspect_listen_ip_for_node CONFIG ++ local ip=0.0.0.0 ++ is_enabled True ++ local val=true ++ [[ true == \t\r\u\e ]] ++ echo 0.0.0.0 + add_ini_params_from_env API /etc/contrail/contrail-api-0.conf + local service_name=API + local cfg_path=/etc/contrail/contrail-api-0.conf + local delim=__ ++ set -o posix ++ set ++ cut -d = -f 1 ++ sort ++ sed 's/^API__//g' ++ grep '^API__.*__.*=.*$' + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0' + set_third_party_auth_config + [[ keystone != \k\e\y\s\t\o\n\e ]] + local tmp_file=/etc/contrail/contrail-keystone-auth.conf.tmp + cat + [[ /v3 == \/\v\3 ]] + cat + [[ http == \h\t\t\p\s ]] + [[ -n '' ]] + [[ -n '' ]] + [[ -n public ]] + echo 'interface = public' + mv -f /etc/contrail/contrail-keystone-auth.conf.tmp /etc/contrail/contrail-keystone-auth.conf + set_vnc_api_lib_ini + local tmp_file=/etc/contrail/vnc_api_lib.ini.tmp + cat + is_enabled false + local val=false + [[ false == \t\r\u\e ]] + [[ false == \y\e\s ]] + [[ false == \e\n\a\b\l\e\d ]] + [[ keystone == \k\e\y\s\t\o\n\e ]] + cat + [[ http == \h\t\t\p\s ]] + mv -f /etc/contrail/vnc_api_lib.ini.tmp /etc/contrail/vnc_api_lib.ini + upgrade_old_logs contrail-api + local template=contrail-api ++ dirname /var/log/contrail/config-api + local old_dir=/var/log/contrail + mkdir -p /var/log/contrail/config-api + chmod 755 /var/log/contrail/config-api + mv -n '/var/log/contrail/*contrail-api.log*' /var/log/contrail/config-api/ + true + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + chown 1999:1999 /var/log/contrail/config-api + find /var/log/contrail/config-api -uid 0 -exec chown 1999:1999 '{}' + + run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + local owner_opts=1999:1999 + mkdir -p /etc/contrail /var/lib/contrail + chown 1999:1999 /etc/contrail /var/lib/contrail + find /etc/contrail -uid 0 -exec chown 1999:1999 '{}' + + chmod 755 /etc/contrail + do_run_service /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 + [[ -n 1999 ]] + [[ -n 1999 ]] + mkdir -p /var/crashes + chmod 777 /var/crashes ++ id -un 1999 + local user_name=contrail + export HOME=/home/contrail + HOME=/home/contrail + mkdir -p /home/contrail + chown -R 1999:1999 /home/contrail + exec setpriv --reuid 1999 --regid 1999 --clear-groups --no-new-privs /usr/local/bin/contrail-api --conf_file /etc/contrail/contrail-api-0.conf --conf_file /etc/contrail/contrail-keystone-auth.conf --worker_id 0 /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:287: SyntaxWarning: "is not" with a literal. Did you mean "!="? if ip_alloc_unit is not 1: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1113: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: /usr/local/lib/python3.9/site-packages/vnc_cfg_api_server/vnc_addr_mgmt.py:1910: SyntaxWarning: "is" with a literal. Did you mean "=="? if len(ipam_subnets) is 0: 09/14/2026 02:49:16.765 7fddce854a00 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/14/2026 02:49:17.011 7fddce854a00 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/14/2026 02:49:17.032 7fddce854a00 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/14/2026 02:49:17.032 7fddce854a00 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log]