++ LOG_DIR=/var/log/contrail ++ export CONTAINER_LOG_DIR=/var/log/contrail/config-api ++ CONTAINER_LOG_DIR=/var/log/contrail/config-api ++ mkdir -p /var/log/contrail/config-api ++ log_file=/var/log/contrail/config-api/console.log ++ touch /var/log/contrail/config-api/console.log ++ chmod 600 /var/log/contrail/config-api/console.log ++ exec +++ tee -a /var/log/contrail/config-api/console.log +++ date ++ echo 'INFO: =================== Mon Jan 12 03:43:50 UTC 2026 ===================' INFO: =================== Mon Jan 12 03:43:50 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=ens3 ++++ [[ ens3 == \l\o ]] ++++ echo ens3 +++ local nic=ens3 +++ get_ip_for_nic ens3 +++ local nic=ens3 +++ get_cidr_for_nic ens3 +++ command -v ip +++ local nic=ens3 +++ cut -d / -f 1 +++ awk '{print $2}' +++ head -n 1 +++ grep 'inet ' +++ ip addr show dev ens3 ++ DEFAULT_LOCAL_IP=10.0.0.50 ++ 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.50,10.0.0.33 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.50,10.0.0.33 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.50,10.0.0.33 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.50,10.0.0.33 ++ 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.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.33 +++ local server_address=10.0.0.33 +++ extended_server_list+='10.0.0.33:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.50:8081 10.0.0.33:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.50:8081 10.0.0.33:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.50:8081 10.0.0.33: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.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.33 +++ local server_address=10.0.0.33 +++ extended_server_list+='10.0.0.33:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.50:9042 10.0.0.33:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.50:9042 10.0.0.33:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.50:9042 10.0.0.33:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.50,10.0.0.33 ++ 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.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.33 +++ local server_address=10.0.0.33 +++ extended_server_list+='10.0.0.33:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.50:8086 10.0.0.33:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.50:8086 10.0.0.33:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.50:8086 10.0.0.33: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.50,10.0.0.33 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.50,10.0.0.33 ++ 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.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.33 +++ local server_address=10.0.0.33 +++ extended_server_list+='10.0.0.33:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.50:8082 10.0.0.33:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.50:8082 10.0.0.33:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.50:8082 10.0.0.33: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.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.33 +++ local server_address=10.0.0.33 +++ extended_server_list+='10.0.0.33:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.50:9161 10.0.0.33:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.50:9161 10.0.0.33:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.50:9161 10.0.0.33: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.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.33 +++ local server_address=10.0.0.33 +++ extended_server_list+='10.0.0.33:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.50:9041 10.0.0.33:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.50:9041 10.0.0.33:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.50:9041 10.0.0.33: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.17,10.20.0.254,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.17,10.20.0.254,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.50,10.0.0.33 ++ 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.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.33 +++ local server_address=10.0.0.33 +++ extended_server_list+=10.0.0.33:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.50:2181,10.0.0.33:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.50:2181,10.0.0.33:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.50:2181,10.0.0.33: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.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.33 +++ local server_address=10.0.0.33 +++ extended_server_list+='10.0.0.33:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.50:2181 10.0.0.33:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.50:2181 10.0.0.33:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.50:2181 10.0.0.33:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.50,10.0.0.33 ++ 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.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.33 +++ local server_address=10.0.0.33 +++ extended_server_list+=10.0.0.33:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.50:5673,10.0.0.33:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.50:5673,10.0.0.33:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.50:5673,10.0.0.33: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.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.33 +++ local server_address=10.0.0.33 +++ extended_server_list+='10.0.0.33:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.50:6379 10.0.0.33:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.50:6379 10.0.0.33:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.50:6379 10.0.0.33: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.50,10.0.0.33 ++ 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.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.33 +++ local server_address=10.0.0.33 +++ extended_server_list+='10.0.0.33:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.50:9092 10.0.0.33:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.50:9092 10.0.0.33:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.50:9092 10.0.0.33: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.50,10.0.0.33 ++ 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_CRYPT_INTERFACE=crypt0 ++ VROUTER_DECRYPT_INTERFACE=decrypt0 ++ VROUTER_DECRYPT_KEY=15 ++ 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.50,10.0.0.33 ++ 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.50,10.0.0.33 + 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 +++ 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.50,10.0.0.33 +++ local servers=10.0.0.38,10.0.0.50,10.0.0.33 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ tr '\n' , ++++ get_local_ips ++++ uniq ++++ grep -vi host ++++ cat /proc/net/fib_trie ++++ awk '/32 host/ { print f } {f=$2}' ++++ sort +++ local local_ips=,10.0.0.50,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.50,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ (( ord+=1 )) +++ for server in '"${server_list[@]}"' +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.50'\''))' +++ local server_ip=10.0.0.50 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.50 ]] +++ [[ ,10.0.0.50,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.50, ]] +++ echo 10.0.0.50 2 +++ return ++ local ip=10.0.0.50 ++ [[ -z 10.0.0.50 ]] ++ echo 10.0.0.50 + host_ip=10.0.0.50 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.50:9041 10.0.0.33:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.50:9041 10.0.0.33:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.50: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 ++ grep '^API__.*__.*=.*$' ++ set -o posix ++ set ++ sort + local vars= + local section= + (( ++index )) + (( index < CONFIG_API_WORKER_COUNT )) + (( CONFIG_API_WORKER_COUNT > 1 )) + service_cmd='/usr/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/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/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/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.6/site-packages/keystonemiddleware/auth_token/_memcache_crypt.py:42: CryptographyDeprecationWarning: Python 3.6 is no longer supported by the Python core team. Therefore, support for it is deprecated in cryptography. The next release of cryptography will remove support for Python 3.6. from cryptography.hazmat import backends as crypto_backends 01/12/2026 03:43:59.332 7f63748f1f08 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 01/12/2026 03:43:59.376 7f63748f1f08 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 01/12/2026 03:43:59.398 7f63748f1f08 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 01/12/2026 03:43:59.398 7f63748f1f08 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] HttpError Python 3.6.8: /usr/bin/python3 Mon Jan 12 03:44: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/bin/contrail-api in () 29 30 31 if __name__ == '__main__': 32 sys.argv[0] = re.sub(r'(-script\.pyw?|\.exe)?$', '', sys.argv[0]) 33 sys.exit(load_entry_point('contrail-api-server==0.1.dev0', 'console_scripts', 'contrail-api')()) sys = sys.exit = load_entry_point = /usr/lib/python3.6/site-packages/vnc_cfg_api_server/api_server.py in server_main(args_str=None) 5361 vnc_cgitb.enable(format='text') 5362 5363 main(args_str, VncApiServer(args_str)) 5364 #server_main 5365 global main = args_str = None global VncApiServer = /usr/lib/python3.6/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') 2205 else: 2206 self._db_connect(self._args.reset_config) 2207 self._db_init_entries() 2208 2209 self._initialize_quota_counters() self = self._db_init_entries = > /usr/lib/python3.6/site-packages/vnc_cfg_api_server/api_server.py in _db_init_entries(self=) 3742 # create singleton defaults if they don't exist already in db 3743 gsc = self.create_singleton_entry(GlobalSystemConfig( 3744 autonomous_system=64512, config_version=CONFIG_VERSION)) 3745 self._gsc_uuid = gsc.uuid 3746 gvc = self.create_singleton_entry(GlobalVrouterConfig( autonomous_system undefined config_version undefined global CONFIG_VERSION = '1.0' /usr/lib/python3.6/site-packages/vnc_cfg_api_server/api_server.py in create_singleton_entry(self=, singleton_obj=, user_visible=True) 4007 if not ok: 4008 (code, msg) = result 4009 raise cfgm_common.exceptions.HttpError(code, msg) 4010 obj_id = result 4011 s_obj.uuid = obj_id global cfgm_common = cfgm_common.exceptions = cfgm_common.exceptions.HttpError = code = 409 msg = 'FQ Name: /fq-name-to-uuid/global_system_config:d...f02c2bcc-442a-496a-8b38-3a8b35f9cebf at zookeeper' HttpError: HTTP Status: 409 Content: FQ Name: /fq-name-to-uuid/global_system_config:default-global-system-config exists already with ID: f02c2bcc-442a-496a-8b38-3a8b35f9cebf at zookeeper __cause__ = None __class__ = __context__ = NoIdError('global_system_config default-global-system-config',) __delattr__ = __dict__ = {'content': 'FQ Name: /fq-name-to-uuid/global_system_config:d...f02c2bcc-442a-496a-8b38-3a8b35f9cebf at zookeeper', 'status_code': 409} __dir__ = __doc__ = None __eq__ = __format__ = __ge__ = __getattribute__ = __gt__ = __hash__ = __init__ = __init_subclass__ = __le__ = __lt__ = __module__ = 'vnc_api.exceptions' __ne__ = __new__ = __reduce__ = __reduce_ex__ = __repr__ = __setattr__ = __setstate__ = __sizeof__ = __str__ = __subclasshook__ = __suppress_context__ = False __traceback__ = __weakref__ = None args = (409, 'FQ Name: /fq-name-to-uuid/global_system_config:d...f02c2bcc-442a-496a-8b38-3a8b35f9cebf at zookeeper') content = 'FQ Name: /fq-name-to-uuid/global_system_config:d...f02c2bcc-442a-496a-8b38-3a8b35f9cebf at zookeeper' status_code = 409 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/lib/python3.6/site-packages/vnc_cfg_api_server/api_server.py", line 3992, in create_singleton_entry s_obj.uuid = self._db_conn.fq_name_to_uuid(obj_type, fq_name) File "/usr/lib/python3.6/site-packages/vnc_cfg_api_server/vnc_db.py", line 2499, in fq_name_to_uuid obj_uuid = self._object_db.fq_name_to_uuid(obj_type, fq_name) File "/usr/lib/python3.6/site-packages/cfgm_common/datastore/drivers/cassandra_cql.py", line 1031, in wrapper return func(*args, **kwargs) File "/usr/lib/python3.6/site-packages/cfgm_common/vnc_cassandra.py", line 1199, in fq_name_to_uuid raise NoIdError('%s %s' % (obj_type, fq_name_str)) vnc_api.exceptions.NoIdError: Unknown id: global_system_config default-global-system-config During handling of the above exception, another exception occurred: Traceback (most recent call last): File "/usr/bin/contrail-api", line 33, in sys.exit(load_entry_point('contrail-api-server==0.1.dev0', 'console_scripts', 'contrail-api')()) File "/usr/lib/python3.6/site-packages/vnc_cfg_api_server/api_server.py", line 5363, in server_main main(args_str, VncApiServer(args_str)) File "/usr/lib/python3.6/site-packages/vnc_cfg_api_server/api_server.py", line 2207, in __init__ self._db_init_entries() File "/usr/lib/python3.6/site-packages/vnc_cfg_api_server/api_server.py", line 3744, in _db_init_entries autonomous_system=64512, config_version=CONFIG_VERSION)) File "/usr/lib/python3.6/site-packages/vnc_cfg_api_server/api_server.py", line 4009, in create_singleton_entry raise cfgm_common.exceptions.HttpError(code, msg) vnc_api.exceptions.HttpError: HTTP Status: 409 Content: FQ Name: /fq-name-to-uuid/global_system_config:default-global-system-config exists already with ID: f02c2bcc-442a-496a-8b38-3a8b35f9cebf at zookeeper ++ LOG_DIR=/var/log/contrail ++ export CONTAINER_LOG_DIR=/var/log/contrail/config-api ++ CONTAINER_LOG_DIR=/var/log/contrail/config-api ++ mkdir -p /var/log/contrail/config-api ++ log_file=/var/log/contrail/config-api/console.log ++ touch /var/log/contrail/config-api/console.log ++ chmod 600 /var/log/contrail/config-api/console.log ++ exec +++ tee -a /var/log/contrail/config-api/console.log +++ date ++ echo 'INFO: =================== Mon Jan 12 03:44:17 UTC 2026 ===================' INFO: =================== Mon Jan 12 03:44:17 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=ens3 ++++ [[ ens3 == \l\o ]] ++++ echo ens3 +++ local nic=ens3 +++ get_ip_for_nic ens3 +++ local nic=ens3 +++ get_cidr_for_nic ens3 +++ command -v ip +++ local nic=ens3 +++ ip addr show dev ens3 +++ grep 'inet ' +++ head -n 1 +++ cut -d / -f 1 +++ awk '{print $2}' ++ DEFAULT_LOCAL_IP=10.0.0.50 ++ 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.50,10.0.0.33 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.38,10.0.0.50,10.0.0.33 ++ ANALYTICSDB_NODES=10.0.0.38,10.0.0.50,10.0.0.33 ++ ANALYTICS_SNMP_NODES=10.0.0.38,10.0.0.50,10.0.0.33 ++ 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.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8081 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.33 +++ local server_address=10.0.0.33 +++ extended_server_list+='10.0.0.33:8081 ' +++ '[' -n '10.0.0.38:8081 10.0.0.50:8081 10.0.0.33:8081 ' ']' +++ echo '10.0.0.38:8081 10.0.0.50:8081 10.0.0.33:8081' ++ ANALYTICS_SERVERS='10.0.0.38:8081 10.0.0.50:8081 10.0.0.33: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.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9042 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.33 +++ local server_address=10.0.0.33 +++ extended_server_list+='10.0.0.33:9042 ' +++ '[' -n '10.0.0.38:9042 10.0.0.50:9042 10.0.0.33:9042 ' ']' +++ echo '10.0.0.38:9042 10.0.0.50:9042 10.0.0.33:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.38:9042 10.0.0.50:9042 10.0.0.33:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.38,10.0.0.50,10.0.0.33 ++ 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.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8086 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.33 +++ local server_address=10.0.0.33 +++ extended_server_list+='10.0.0.33:8086 ' +++ '[' -n '10.0.0.38:8086 10.0.0.50:8086 10.0.0.33:8086 ' ']' +++ echo '10.0.0.38:8086 10.0.0.50:8086 10.0.0.33:8086' ++ COLLECTOR_SERVERS='10.0.0.38:8086 10.0.0.50:8086 10.0.0.33: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.50,10.0.0.33 ++ CONFIGDB_NODES=10.0.0.38,10.0.0.50,10.0.0.33 ++ 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.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:8082 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.33 +++ local server_address=10.0.0.33 +++ extended_server_list+='10.0.0.33:8082 ' +++ '[' -n '10.0.0.38:8082 10.0.0.50:8082 10.0.0.33:8082 ' ']' +++ echo '10.0.0.38:8082 10.0.0.50:8082 10.0.0.33:8082' ++ CONFIG_SERVERS='10.0.0.38:8082 10.0.0.50:8082 10.0.0.33: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.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9161 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.33 +++ local server_address=10.0.0.33 +++ extended_server_list+='10.0.0.33:9161 ' +++ '[' -n '10.0.0.38:9161 10.0.0.50:9161 10.0.0.33:9161 ' ']' +++ echo '10.0.0.38:9161 10.0.0.50:9161 10.0.0.33:9161' ++ CONFIGDB_SERVERS='10.0.0.38:9161 10.0.0.50:9161 10.0.0.33: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.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9041 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.33 +++ local server_address=10.0.0.33 +++ extended_server_list+='10.0.0.33:9041 ' +++ '[' -n '10.0.0.38:9041 10.0.0.50:9041 10.0.0.33:9041 ' ']' +++ echo '10.0.0.38:9041 10.0.0.50:9041 10.0.0.33:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.38:9041 10.0.0.50:9041 10.0.0.33: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.17,10.20.0.254,10.20.0.14 ++ CONTROL_INTROSPECT_PORT=8083 ++ DNS_NODES=10.20.0.17,10.20.0.254,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.50,10.0.0.33 ++ 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.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:2181, +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.33 +++ local server_address=10.0.0.33 +++ extended_server_list+=10.0.0.33:2181, +++ '[' -n 10.0.0.38:2181,10.0.0.50:2181,10.0.0.33:2181, ']' +++ echo 10.0.0.38:2181,10.0.0.50:2181,10.0.0.33:2181 ++ ZOOKEEPER_SERVERS=10.0.0.38:2181,10.0.0.50:2181,10.0.0.33: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.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:2181 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.33 +++ local server_address=10.0.0.33 +++ extended_server_list+='10.0.0.33:2181 ' +++ '[' -n '10.0.0.38:2181 10.0.0.50:2181 10.0.0.33:2181 ' ']' +++ echo '10.0.0.38:2181 10.0.0.50:2181 10.0.0.33:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.38:2181 10.0.0.50:2181 10.0.0.33:2181' ++ RABBITMQ_NODES=10.0.0.38,10.0.0.50,10.0.0.33 ++ 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.50 +++ local server_address=10.0.0.50 +++ extended_server_list+=10.0.0.50:5673, +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.33 +++ local server_address=10.0.0.33 +++ extended_server_list+=10.0.0.33:5673, +++ '[' -n 10.0.0.38:5673,10.0.0.50:5673,10.0.0.33:5673, ']' +++ echo 10.0.0.38:5673,10.0.0.50:5673,10.0.0.33:5673 ++ RABBITMQ_SERVERS=10.0.0.38:5673,10.0.0.50:5673,10.0.0.33: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.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:6379 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.33 +++ local server_address=10.0.0.33 +++ extended_server_list+='10.0.0.33:6379 ' +++ '[' -n '10.0.0.38:6379 10.0.0.50:6379 10.0.0.33:6379 ' ']' +++ echo '10.0.0.38:6379 10.0.0.50:6379 10.0.0.33:6379' ++ REDIS_SERVERS='10.0.0.38:6379 10.0.0.50:6379 10.0.0.33: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.50,10.0.0.33 ++ 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.50 +++ local server_address=10.0.0.50 +++ extended_server_list+='10.0.0.50:9092 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.33 +++ local server_address=10.0.0.33 +++ extended_server_list+='10.0.0.33:9092 ' +++ '[' -n '10.0.0.38:9092 10.0.0.50:9092 10.0.0.33:9092 ' ']' +++ echo '10.0.0.38:9092 10.0.0.50:9092 10.0.0.33:9092' ++ KAFKA_SERVERS='10.0.0.38:9092 10.0.0.50:9092 10.0.0.33: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.50,10.0.0.33 ++ 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_CRYPT_INTERFACE=crypt0 ++ VROUTER_DECRYPT_INTERFACE=decrypt0 ++ VROUTER_DECRYPT_KEY=15 ++ 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.50,10.0.0.33 ++ 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.50,10.0.0.33 + 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.50,10.0.0.33 +++ cut -d ' ' -f 1 +++ local servers=10.0.0.38,10.0.0.50,10.0.0.33 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ get_local_ips ++++ tr '\n' , ++++ cat /proc/net/fib_trie ++++ sort ++++ uniq ++++ awk '/32 host/ { print f } {f=$2}' ++++ grep -vi host +++ local local_ips=,10.0.0.50,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.50,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.38, ]] +++ (( ord+=1 )) +++ for server in '"${server_list[@]}"' +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.50'\''))' +++ local server_ip=10.0.0.50 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.50 ]] +++ [[ ,10.0.0.50,10.20.0.254,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.50, ]] +++ echo 10.0.0.50 2 +++ return ++ local ip=10.0.0.50 ++ [[ -z 10.0.0.50 ]] ++ echo 10.0.0.50 + host_ip=10.0.0.50 + [[ cql == \c\q\l ]] ++ echo 10.0.0.38:9041 10.0.0.50:9041 10.0.0.33:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.38:9041 10.0.0.50:9041 10.0.0.33:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.50: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/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/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/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/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.6/site-packages/keystonemiddleware/auth_token/_memcache_crypt.py:42: CryptographyDeprecationWarning: Python 3.6 is no longer supported by the Python core team. Therefore, support for it is deprecated in cryptography. The next release of cryptography will remove support for Python 3.6. from cryptography.hazmat import backends as crypto_backends 01/12/2026 03:44:25.221 7f5bc4c6c988 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 01/12/2026 03:44:25.253 7f5bc4c6c988 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 01/12/2026 03:44:25.268 7f5bc4c6c988 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 01/12/2026 03:44:25.268 7f5bc4c6c988 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log]