++ 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: =================== Thu Sep 11 04:15:57 UTC 2025 ===================' INFO: =================== Thu Sep 11 04:15:57 UTC 2025 =================== ++ 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=ens3 ++++ [[ ens3 == \l\o ]] ++++ echo ens3 +++ local nic=ens3 +++ get_ip_for_nic ens3 +++ local nic=ens3 +++ cut -d / -f 1 +++ get_cidr_for_nic ens3 +++ command -v ip +++ local nic=ens3 +++ head -n 1 +++ ip addr show dev ens3 +++ awk '{print $2}' +++ grep 'inet ' ++ DEFAULT_LOCAL_IP=10.0.0.48 ++ 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.254,10.0.0.22,10.0.0.48 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.254,10.0.0.22,10.0.0.48 ++ ANALYTICSDB_NODES=10.0.0.254,10.0.0.22,10.0.0.48 ++ ANALYTICS_SNMP_NODES=10.0.0.254,10.0.0.22,10.0.0.48 ++ 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.254 +++ local server_address=10.0.0.254 +++ extended_server_list+='10.0.0.254:8081 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.22 +++ local server_address=10.0.0.22 +++ extended_server_list+='10.0.0.22:8081 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.48 +++ local server_address=10.0.0.48 +++ extended_server_list+='10.0.0.48:8081 ' +++ '[' -n '10.0.0.254:8081 10.0.0.22:8081 10.0.0.48:8081 ' ']' +++ echo '10.0.0.254:8081 10.0.0.22:8081 10.0.0.48:8081' ++ ANALYTICS_SERVERS='10.0.0.254:8081 10.0.0.22:8081 10.0.0.48: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.254 +++ local server_address=10.0.0.254 +++ extended_server_list+='10.0.0.254:9042 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.22 +++ local server_address=10.0.0.22 +++ extended_server_list+='10.0.0.22:9042 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.48 +++ local server_address=10.0.0.48 +++ extended_server_list+='10.0.0.48:9042 ' +++ '[' -n '10.0.0.254:9042 10.0.0.22:9042 10.0.0.48:9042 ' ']' +++ echo '10.0.0.254:9042 10.0.0.22:9042 10.0.0.48:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.254:9042 10.0.0.22:9042 10.0.0.48:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.254,10.0.0.22,10.0.0.48 ++ 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.254 +++ local server_address=10.0.0.254 +++ extended_server_list+='10.0.0.254:8086 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.22 +++ local server_address=10.0.0.22 +++ extended_server_list+='10.0.0.22:8086 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.48 +++ local server_address=10.0.0.48 +++ extended_server_list+='10.0.0.48:8086 ' +++ '[' -n '10.0.0.254:8086 10.0.0.22:8086 10.0.0.48:8086 ' ']' +++ echo '10.0.0.254:8086 10.0.0.22:8086 10.0.0.48:8086' ++ COLLECTOR_SERVERS='10.0.0.254:8086 10.0.0.22:8086 10.0.0.48: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.254,10.0.0.22,10.0.0.48 ++ CONFIGDB_NODES=10.0.0.254,10.0.0.22,10.0.0.48 ++ 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.254 +++ local server_address=10.0.0.254 +++ extended_server_list+='10.0.0.254:8082 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.22 +++ local server_address=10.0.0.22 +++ extended_server_list+='10.0.0.22:8082 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.48 +++ local server_address=10.0.0.48 +++ extended_server_list+='10.0.0.48:8082 ' +++ '[' -n '10.0.0.254:8082 10.0.0.22:8082 10.0.0.48:8082 ' ']' +++ echo '10.0.0.254:8082 10.0.0.22:8082 10.0.0.48:8082' ++ CONFIG_SERVERS='10.0.0.254:8082 10.0.0.22:8082 10.0.0.48: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.254 +++ local server_address=10.0.0.254 +++ extended_server_list+='10.0.0.254:9161 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.22 +++ local server_address=10.0.0.22 +++ extended_server_list+='10.0.0.22:9161 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.48 +++ local server_address=10.0.0.48 +++ extended_server_list+='10.0.0.48:9161 ' +++ '[' -n '10.0.0.254:9161 10.0.0.22:9161 10.0.0.48:9161 ' ']' +++ echo '10.0.0.254:9161 10.0.0.22:9161 10.0.0.48:9161' ++ CONFIGDB_SERVERS='10.0.0.254:9161 10.0.0.22:9161 10.0.0.48: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.254 +++ local server_address=10.0.0.254 +++ extended_server_list+='10.0.0.254:9041 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.22 +++ local server_address=10.0.0.22 +++ extended_server_list+='10.0.0.22:9041 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.48 +++ local server_address=10.0.0.48 +++ extended_server_list+='10.0.0.48:9041 ' +++ '[' -n '10.0.0.254:9041 10.0.0.22:9041 10.0.0.48:9041 ' ']' +++ echo '10.0.0.254:9041 10.0.0.22:9041 10.0.0.48:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.254:9041 10.0.0.22:9041 10.0.0.48: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.254,10.0.0.22,10.0.0.48 ++ 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.254 +++ local server_address=10.0.0.254 +++ extended_server_list+=10.0.0.254:2181, +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.22 +++ local server_address=10.0.0.22 +++ extended_server_list+=10.0.0.22:2181, +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.48 +++ local server_address=10.0.0.48 +++ extended_server_list+=10.0.0.48:2181, +++ '[' -n 10.0.0.254:2181,10.0.0.22:2181,10.0.0.48:2181, ']' +++ echo 10.0.0.254:2181,10.0.0.22:2181,10.0.0.48:2181 ++ ZOOKEEPER_SERVERS=10.0.0.254:2181,10.0.0.22:2181,10.0.0.48: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.254 +++ local server_address=10.0.0.254 +++ extended_server_list+='10.0.0.254:2181 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.22 +++ local server_address=10.0.0.22 +++ extended_server_list+='10.0.0.22:2181 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.48 +++ local server_address=10.0.0.48 +++ extended_server_list+='10.0.0.48:2181 ' +++ '[' -n '10.0.0.254:2181 10.0.0.22:2181 10.0.0.48:2181 ' ']' +++ echo '10.0.0.254:2181 10.0.0.22:2181 10.0.0.48:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.254:2181 10.0.0.22:2181 10.0.0.48:2181' ++ RABBITMQ_NODES=10.0.0.254,10.0.0.22,10.0.0.48 ++ 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.254 +++ local server_address=10.0.0.254 +++ extended_server_list+=10.0.0.254:5673, +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.22 +++ local server_address=10.0.0.22 +++ extended_server_list+=10.0.0.22:5673, +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.48 +++ local server_address=10.0.0.48 +++ extended_server_list+=10.0.0.48:5673, +++ '[' -n 10.0.0.254:5673,10.0.0.22:5673,10.0.0.48:5673, ']' +++ echo 10.0.0.254:5673,10.0.0.22:5673,10.0.0.48:5673 ++ RABBITMQ_SERVERS=10.0.0.254:5673,10.0.0.22:5673,10.0.0.48: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.254 +++ local server_address=10.0.0.254 +++ extended_server_list+='10.0.0.254:6379 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.22 +++ local server_address=10.0.0.22 +++ extended_server_list+='10.0.0.22:6379 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.48 +++ local server_address=10.0.0.48 +++ extended_server_list+='10.0.0.48:6379 ' +++ '[' -n '10.0.0.254:6379 10.0.0.22:6379 10.0.0.48:6379 ' ']' +++ echo '10.0.0.254:6379 10.0.0.22:6379 10.0.0.48:6379' ++ REDIS_SERVERS='10.0.0.254:6379 10.0.0.22:6379 10.0.0.48: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.254,10.0.0.22,10.0.0.48 ++ 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.254 +++ local server_address=10.0.0.254 +++ extended_server_list+='10.0.0.254:9092 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.22 +++ local server_address=10.0.0.22 +++ extended_server_list+='10.0.0.22:9092 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.48 +++ local server_address=10.0.0.48 +++ extended_server_list+='10.0.0.48:9092 ' +++ '[' -n '10.0.0.254:9092 10.0.0.22:9092 10.0.0.48:9092 ' ']' +++ echo '10.0.0.254:9092 10.0.0.22:9092 10.0.0.48:9092' ++ KAFKA_SERVERS='10.0.0.254:9092 10.0.0.22:9092 10.0.0.48: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.254 ++ 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.254,10.0.0.22,10.0.0.48 ++ 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.254,10.0.0.22,10.0.0.48 ++ 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.254,10.0.0.22,10.0.0.48 + local cassandra=10.0.0.254 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.254 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.254,10.0.0.22,10.0.0.48 +++ local servers=10.0.0.254,10.0.0.22,10.0.0.48 +++ 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 +++ cut -d ' ' -f 1 ++++ sort +++ local local_ips=,10.0.0.48,10.20.0.14,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.254'\''))' +++ local server_ip=10.0.0.254 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.254 ]] +++ [[ ,10.0.0.48,10.20.0.14,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.254, ]] +++ (( ord+=1 )) +++ for server in '"${server_list[@]}"' +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.22'\''))' +++ local server_ip=10.0.0.22 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.22 ]] +++ [[ ,10.0.0.48,10.20.0.14,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.22, ]] +++ (( ord+=1 )) +++ for server in '"${server_list[@]}"' +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.48'\''))' +++ local server_ip=10.0.0.48 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.48 ]] +++ [[ ,10.0.0.48,10.20.0.14,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.48, ]] +++ echo 10.0.0.48 3 +++ return ++ local ip=10.0.0.48 ++ [[ -z 10.0.0.48 ]] ++ echo 10.0.0.48 + host_ip=10.0.0.48 + [[ cql == \c\q\l ]] ++ echo 10.0.0.254:9041 10.0.0.22:9041 10.0.0.48:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.254:9041 10.0.0.22:9041 10.0.0.48:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.48: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/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 09/11/2025 04:16:05.844 7f6d09c92688 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/11/2025 04:16:05.870 7f6d09c92688 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/11/2025 04:16:05.884 7f6d09c92688 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/11/2025 04:16:05.885 7f6d09c92688 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] HttpError Python 3.6.8: /usr/bin/python3 Thu Sep 11 04:16:21 2025 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=) 3745 self._gsc_uuid = gsc.uuid 3746 gvc = self.create_singleton_entry(GlobalVrouterConfig( 3747 parent_obj=gsc)) 3748 domain = self.create_singleton_entry(Domain()) 3749 self._default_domain = domain.serialize_to_json() parent_obj undefined gsc = /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_vrouter_config:...b6b25520-beae-4e43-885e-8e9d517df70c at zookeeper' HttpError: HTTP Status: 409 Content: FQ Name: /fq-name-to-uuid/global_vrouter_config:default-global-system-config:default-global-vrouter-config exists already with ID: b6b25520-beae-4e43-885e-8e9d517df70c at zookeeper __cause__ = None __class__ = __context__ = NoIdError('global_vrouter_config default-global-system-config:default-global-vrouter-config',) __delattr__ = __dict__ = {'content': 'FQ Name: /fq-name-to-uuid/global_vrouter_config:...b6b25520-beae-4e43-885e-8e9d517df70c 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_vrouter_config:...b6b25520-beae-4e43-885e-8e9d517df70c at zookeeper') content = 'FQ Name: /fq-name-to-uuid/global_vrouter_config:...b6b25520-beae-4e43-885e-8e9d517df70c 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_vrouter_config default-global-system-config:default-global-vrouter-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 3747, in _db_init_entries parent_obj=gsc)) 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_vrouter_config:default-global-system-config:default-global-vrouter-config exists already with ID: b6b25520-beae-4e43-885e-8e9d517df70c 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: =================== Thu Sep 11 04:16:23 UTC 2025 ===================' INFO: =================== Thu Sep 11 04:16:23 UTC 2025 =================== ++ 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 +++ ip addr show dev ens3 +++ head -n 1 +++ awk '{print $2}' +++ grep 'inet ' ++ DEFAULT_LOCAL_IP=10.0.0.48 ++ 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.254,10.0.0.22,10.0.0.48 ++ ANALYTICS_ALARM_ENABLE=True ++ ANALYTICS_SNMP_ENABLE=True ++ ANALYTICSDB_ENABLE=True ++ ANALYTICS_NODES=10.0.0.254,10.0.0.22,10.0.0.48 ++ ANALYTICSDB_NODES=10.0.0.254,10.0.0.22,10.0.0.48 ++ ANALYTICS_SNMP_NODES=10.0.0.254,10.0.0.22,10.0.0.48 ++ 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.254 +++ local server_address=10.0.0.254 +++ extended_server_list+='10.0.0.254:8081 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.22 +++ local server_address=10.0.0.22 +++ extended_server_list+='10.0.0.22:8081 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.48 +++ local server_address=10.0.0.48 +++ extended_server_list+='10.0.0.48:8081 ' +++ '[' -n '10.0.0.254:8081 10.0.0.22:8081 10.0.0.48:8081 ' ']' +++ echo '10.0.0.254:8081 10.0.0.22:8081 10.0.0.48:8081' ++ ANALYTICS_SERVERS='10.0.0.254:8081 10.0.0.22:8081 10.0.0.48: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.254 +++ local server_address=10.0.0.254 +++ extended_server_list+='10.0.0.254:9042 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.22 +++ local server_address=10.0.0.22 +++ extended_server_list+='10.0.0.22:9042 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.48 +++ local server_address=10.0.0.48 +++ extended_server_list+='10.0.0.48:9042 ' +++ '[' -n '10.0.0.254:9042 10.0.0.22:9042 10.0.0.48:9042 ' ']' +++ echo '10.0.0.254:9042 10.0.0.22:9042 10.0.0.48:9042' ++ ANALYTICSDB_CQL_SERVERS='10.0.0.254:9042 10.0.0.22:9042 10.0.0.48:9042' ++ ANALYTICS_API_VIP= ++ ANALYTICS_ALARM_NODES=10.0.0.254,10.0.0.22,10.0.0.48 ++ 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.254 +++ local server_address=10.0.0.254 +++ extended_server_list+='10.0.0.254:8086 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.22 +++ local server_address=10.0.0.22 +++ extended_server_list+='10.0.0.22:8086 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.48 +++ local server_address=10.0.0.48 +++ extended_server_list+='10.0.0.48:8086 ' +++ '[' -n '10.0.0.254:8086 10.0.0.22:8086 10.0.0.48:8086 ' ']' +++ echo '10.0.0.254:8086 10.0.0.22:8086 10.0.0.48:8086' ++ COLLECTOR_SERVERS='10.0.0.254:8086 10.0.0.22:8086 10.0.0.48: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.254,10.0.0.22,10.0.0.48 ++ CONFIGDB_NODES=10.0.0.254,10.0.0.22,10.0.0.48 ++ 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.254 +++ local server_address=10.0.0.254 +++ extended_server_list+='10.0.0.254:8082 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.22 +++ local server_address=10.0.0.22 +++ extended_server_list+='10.0.0.22:8082 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.48 +++ local server_address=10.0.0.48 +++ extended_server_list+='10.0.0.48:8082 ' +++ '[' -n '10.0.0.254:8082 10.0.0.22:8082 10.0.0.48:8082 ' ']' +++ echo '10.0.0.254:8082 10.0.0.22:8082 10.0.0.48:8082' ++ CONFIG_SERVERS='10.0.0.254:8082 10.0.0.22:8082 10.0.0.48: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.254 +++ local server_address=10.0.0.254 +++ extended_server_list+='10.0.0.254:9161 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.22 +++ local server_address=10.0.0.22 +++ extended_server_list+='10.0.0.22:9161 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.48 +++ local server_address=10.0.0.48 +++ extended_server_list+='10.0.0.48:9161 ' +++ '[' -n '10.0.0.254:9161 10.0.0.22:9161 10.0.0.48:9161 ' ']' +++ echo '10.0.0.254:9161 10.0.0.22:9161 10.0.0.48:9161' ++ CONFIGDB_SERVERS='10.0.0.254:9161 10.0.0.22:9161 10.0.0.48: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.254 +++ local server_address=10.0.0.254 +++ extended_server_list+='10.0.0.254:9041 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.22 +++ local server_address=10.0.0.22 +++ extended_server_list+='10.0.0.22:9041 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.48 +++ local server_address=10.0.0.48 +++ extended_server_list+='10.0.0.48:9041 ' +++ '[' -n '10.0.0.254:9041 10.0.0.22:9041 10.0.0.48:9041 ' ']' +++ echo '10.0.0.254:9041 10.0.0.22:9041 10.0.0.48:9041' ++ CONFIGDB_CQL_SERVERS='10.0.0.254:9041 10.0.0.22:9041 10.0.0.48: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.254,10.0.0.22,10.0.0.48 ++ 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.254 +++ local server_address=10.0.0.254 +++ extended_server_list+=10.0.0.254:2181, +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.22 +++ local server_address=10.0.0.22 +++ extended_server_list+=10.0.0.22:2181, +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.48 +++ local server_address=10.0.0.48 +++ extended_server_list+=10.0.0.48:2181, +++ '[' -n 10.0.0.254:2181,10.0.0.22:2181,10.0.0.48:2181, ']' +++ echo 10.0.0.254:2181,10.0.0.22:2181,10.0.0.48:2181 ++ ZOOKEEPER_SERVERS=10.0.0.254:2181,10.0.0.22:2181,10.0.0.48: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.254 +++ local server_address=10.0.0.254 +++ extended_server_list+='10.0.0.254:2181 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.22 +++ local server_address=10.0.0.22 +++ extended_server_list+='10.0.0.22:2181 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.48 +++ local server_address=10.0.0.48 +++ extended_server_list+='10.0.0.48:2181 ' +++ '[' -n '10.0.0.254:2181 10.0.0.22:2181 10.0.0.48:2181 ' ']' +++ echo '10.0.0.254:2181 10.0.0.22:2181 10.0.0.48:2181' ++ ZOOKEEPER_SERVERS_SPACE_DELIM='10.0.0.254:2181 10.0.0.22:2181 10.0.0.48:2181' ++ RABBITMQ_NODES=10.0.0.254,10.0.0.22,10.0.0.48 ++ 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.254 +++ local server_address=10.0.0.254 +++ extended_server_list+=10.0.0.254:5673, +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.22 +++ local server_address=10.0.0.22 +++ extended_server_list+=10.0.0.22:5673, +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.48 +++ local server_address=10.0.0.48 +++ extended_server_list+=10.0.0.48:5673, +++ '[' -n 10.0.0.254:5673,10.0.0.22:5673,10.0.0.48:5673, ']' +++ echo 10.0.0.254:5673,10.0.0.22:5673,10.0.0.48:5673 ++ RABBITMQ_SERVERS=10.0.0.254:5673,10.0.0.22:5673,10.0.0.48: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.254 +++ local server_address=10.0.0.254 +++ extended_server_list+='10.0.0.254:6379 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.22 +++ local server_address=10.0.0.22 +++ extended_server_list+='10.0.0.22:6379 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.48 +++ local server_address=10.0.0.48 +++ extended_server_list+='10.0.0.48:6379 ' +++ '[' -n '10.0.0.254:6379 10.0.0.22:6379 10.0.0.48:6379 ' ']' +++ echo '10.0.0.254:6379 10.0.0.22:6379 10.0.0.48:6379' ++ REDIS_SERVERS='10.0.0.254:6379 10.0.0.22:6379 10.0.0.48: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.254,10.0.0.22,10.0.0.48 ++ 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.254 +++ local server_address=10.0.0.254 +++ extended_server_list+='10.0.0.254:9092 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.22 +++ local server_address=10.0.0.22 +++ extended_server_list+='10.0.0.22:9092 ' +++ for server in '"${server_list[@]}"' ++++ echo 10.0.0.48 +++ local server_address=10.0.0.48 +++ extended_server_list+='10.0.0.48:9092 ' +++ '[' -n '10.0.0.254:9092 10.0.0.22:9092 10.0.0.48:9092 ' ']' +++ echo '10.0.0.254:9092 10.0.0.22:9092 10.0.0.48:9092' ++ KAFKA_SERVERS='10.0.0.254:9092 10.0.0.22:9092 10.0.0.48: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.254 ++ 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.254,10.0.0.22,10.0.0.48 ++ 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.254,10.0.0.22,10.0.0.48 ++ 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.254,10.0.0.22,10.0.0.48 ++ cut -d , -f 1 + local cassandra=10.0.0.254 + (( i=1 )) + (( i<=30 )) + echo -e '\035\nquit' + nc -z 10.0.0.254 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.254,10.0.0.22,10.0.0.48 +++ local servers=10.0.0.254,10.0.0.22,10.0.0.48 +++ local server_list= +++ IFS=, +++ read -ra server_list ++++ get_local_ips ++++ tr '\n' , ++++ cat /proc/net/fib_trie ++++ grep -vi host ++++ uniq ++++ sort ++++ awk '/32 host/ { print f } {f=$2}' +++ local local_ips=,10.0.0.48,10.20.0.14,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.254'\''))' +++ local server_ip=10.0.0.254 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.254 ]] +++ [[ ,10.0.0.48,10.20.0.14,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.254, ]] +++ (( ord+=1 )) +++ for server in '"${server_list[@]}"' +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.22'\''))' +++ local server_ip=10.0.0.22 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.22 ]] +++ [[ ,10.0.0.48,10.20.0.14,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.22, ]] +++ (( ord+=1 )) +++ for server in '"${server_list[@]}"' +++ local ret=0 ++++ python3 -c 'import socket; print(socket.gethostbyname('\''10.0.0.48'\''))' +++ local server_ip=10.0.0.48 +++ [[ 0 == 0 ]] +++ [[ -n 10.0.0.48 ]] +++ [[ ,10.0.0.48,10.20.0.14,127.0.0.1,172.17.0.1,, =~ ,10\.0\.0\.48, ]] +++ echo 10.0.0.48 3 +++ return ++ local ip=10.0.0.48 ++ [[ -z 10.0.0.48 ]] ++ echo 10.0.0.48 + host_ip=10.0.0.48 + [[ cql == \c\q\l ]] ++ echo 10.0.0.254:9041 10.0.0.22:9041 10.0.0.48:9041 ++ sed 's/,/ /g' + cassandra_server_list='10.0.0.254:9041 10.0.0.22:9041 10.0.0.48:9041' + config_api_certs_config= + uwsgi_socket='protocol = http\nsocket = 10.0.0.48: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/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 09/11/2025 04:16:30.751 7fa6773f7388 [contrail-api] [INFO]: SANDESH: CONNECT TO COLLECTOR: True 09/11/2025 04:16:30.779 7fa6773f7388 [contrail-api] [INFO]: SANDESH: INTROSPECT IS ON: 0.0.0.0:8084 09/11/2025 04:16:30.792 7fa6773f7388 [contrail-api] [INFO]: SANDESH: Logging: LEVEL: [SYS_INFO] -> [SYS_DEBUG] 09/11/2025 04:16:30.792 7fa6773f7388 [contrail-api] [INFO]: SANDESH: Logging: FILE: [None] -> [/var/log/contrail/config-api/contrail-api-0.log] ovl: Error while doing RPMdb copy-up: [Errno 13] Permission denied: '/var/lib/rpm/__db.003' The option "admin_port" is not known to keystonemiddleware The option "max_requests" is not known to keystonemiddleware The option "signing_dir" is not known to keystonemiddleware The option "auth_url" is not known to keystonemiddleware The option "username" is not known to keystonemiddleware The option "password" is not known to keystonemiddleware The option "user_domain_name" is not known to keystonemiddleware The option "project_domain_name" is not known to keystonemiddleware The option "project_name" is not known to keystonemiddleware AuthToken middleware is set with keystone_authtoken.service_token_roles_required set to False. This is backwards compatible but deprecated behaviour. Please set this to True. Configuring www_authenticate_uri to point to the public identity endpoint is required; clients may not be able to authenticate against an admin endpoint Bottle v0.12.25 server starting up (using GeventPoolServer(spawn=))... Listening on http://localhost:8095/ Hit Ctrl-C to quit. Bottle v0.12.25 server starting up (using GeventPoolServer(spawn=))... Listening on http://10.0.0.48:8082/ Hit Ctrl-C to quit. 10.0.0.48 - - [2025-09-11 04:16:31] "GET / HTTP/1.1" 200 45871 0.001546 10.0.0.48 - - [2025-09-11 04:16:31] "GET / HTTP/1.1" 200 45871 0.001454 Using the in-process token cache is deprecated as of the 4.2.0 release and may be removed in the 5.0.0 release or the 'O' development cycle. The in-process cache causes inconsistent results and high memory usage. When the feature is removed the auth_token middleware will not cache tokens by default which may result in performance issues. It is recommended to use memcache for the auth_token token cache by setting the memcached_servers option. 10.0.0.48 - - [2025-09-11 04:16:31] "POST /fqname-to-id HTTP/1.1" 401 293 0.000535 10.0.0.48 - - [2025-09-11 04:16:31] "GET /domains?detail=False&count=False&shared=False HTTP/1.1" 401 293 0.000291 10.0.0.48 - - [2025-09-11 04:16:34] "GET /domains?detail=False&count=False&shared=False HTTP/1.1" 200 315 1.532244 10.0.0.48 - - [2025-09-11 04:16:34] "GET /projects?detail=False&count=False&shared=False HTTP/1.1" 200 336 0.005049 10.0.0.48 - - [2025-09-11 04:16:34] "POST /fqname-to-id HTTP/1.1" 200 156 1.901959 10.0.0.48 - - [2025-09-11 04:16:34] "POST /fqname-to-id HTTP/1.1" 200 156 0.004544 /usr/local/lib/python3.6/site-packages/keystoneauth1/adapter.py:244: UserWarning: Using keystoneclient sessions has been deprecated. Please update your software to use keystoneauth1. warnings.warn('Using keystoneclient sessions has been deprecated. ' 10.0.0.254 - - [2025-09-11 04:16:49] "POST /fqname-to-id HTTP/1.1" 200 156 11.031465 10.0.0.48 - - [2025-09-11 04:17:10] "GET /global-system-configs HTTP/1.1" 200 322 10.579790 10.0.0.254 - - [2025-09-11 04:17:10] "POST /access-control-lists HTTP/1.1" 200 587 0.034432 10.0.0.254 - - [2025-09-11 04:17:10] "POST /route-targets HTTP/1.1" 200 327 0.015626 10.0.0.254 - - [2025-09-11 04:17:11] "POST /ref-update HTTP/1.1" 200 156 0.023562 10.0.0.48 - - [2025-09-11 04:17:11] "GET /global-system-configs HTTP/1.1" 200 322 9.228623 10.0.0.254 - - [2025-09-11 04:17:11] "POST /route-targets HTTP/1.1" 200 327 0.032209 10.0.0.254 - - [2025-09-11 04:17:11] "POST /access-control-lists HTTP/1.1" 200 551 0.076828 10.0.0.22 - - [2025-09-11 04:17:11] "GET /global-system-configs HTTP/1.1" 200 322 7.597466 10.0.0.254 - - [2025-09-11 04:17:12] "GET /global-system-configs HTTP/1.1" 200 322 6.071828 10.0.0.22 - - [2025-09-11 04:17:12] "GET /global-system-configs HTTP/1.1" 200 322 4.192050 10.0.0.254 - - [2025-09-11 04:17:12] "GET /global-system-configs HTTP/1.1" 200 322 2.170571 10.0.0.254 - - [2025-09-11 04:17:13] "POST /ref-update HTTP/1.1" 200 156 0.062894 The option "admin_port" is not known to keystonemiddleware The option "max_requests" is not known to keystonemiddleware The option "signing_dir" is not known to keystonemiddleware The option "auth_url" is not known to keystonemiddleware The option "username" is not known to keystonemiddleware The option "password" is not known to keystonemiddleware The option "user_domain_name" is not known to keystonemiddleware The option "project_domain_name" is not known to keystonemiddleware The option "project_name" is not known to keystonemiddleware AuthToken middleware is set with keystone_authtoken.service_token_roles_required set to False. This is backwards compatible but deprecated behaviour. Please set this to True. Configuring www_authenticate_uri to point to the public identity endpoint is required; clients may not be able to authenticate against an admin endpoint Using the in-process token cache is deprecated as of the 4.2.0 release and may be removed in the 5.0.0 release or the 'O' development cycle. The in-process cache causes inconsistent results and high memory usage. When the feature is removed the auth_token middleware will not cache tokens by default which may result in performance issues. It is recommended to use memcache for the auth_token token cache by setting the memcached_servers option.