mirror of
https://github.com/Telecominfraproject/ols-nos.git
synced 2025-11-01 10:38:02 +00:00
Support for connecting to DB in namespace via TCP port in multi-asic platform. (#4779)
* Support for connecting to DB in namespace via IP:port ( using docker bridge network ) for applications in multi-asic platform. * Added the default IP as 127.0.0.1 if the IPaddress derivation from interface fails. Moved the localhost loopback IP binding logic into the supervisor.j2 file.
This commit is contained in:
@@ -1,12 +1,29 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# For linux host namespace, in both single and multi ASIC platform use the loopback interface
|
||||
# For other namespaces, use eth0 interface which is connected to the docker0 bridge in the host.
|
||||
if [[ $NAMESPACE_ID == "" ]]
|
||||
then
|
||||
INTFC=lo
|
||||
else
|
||||
INTFC=eth0
|
||||
fi
|
||||
|
||||
# Get the ip address of the interface
|
||||
# if the ip address was not retrieved correctly, put localhost(127.0.0.1) as the default.
|
||||
host_ip=$(ip -4 -o addr show $INTFC | awk '{print $4}' | cut -d'/' -f1 | head -1)
|
||||
if [[ $host_ip == "" ]]
|
||||
then
|
||||
host_ip=127.0.0.1
|
||||
fi
|
||||
|
||||
REDIS_DIR=/var/run/redis$NAMESPACE_ID
|
||||
mkdir -p $REDIS_DIR/sonic-db
|
||||
|
||||
if [ -f /etc/sonic/database_config$NAMESPACE_ID.json ]; then
|
||||
cp /etc/sonic/database_config$NAMESPACE_ID.json $REDIS_DIR/sonic-db/database_config.json
|
||||
else
|
||||
j2 /usr/share/sonic/templates/database_config.json.j2 > $REDIS_DIR/sonic-db/database_config.json
|
||||
HOST_IP=$host_ip j2 /usr/share/sonic/templates/database_config.json.j2 > $REDIS_DIR/sonic-db/database_config.json
|
||||
fi
|
||||
|
||||
mkdir -p /etc/supervisor/conf.d/
|
||||
|
||||
Reference in New Issue
Block a user