cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
1060
Views
5
Helpful
2
Comments
renjithg
Cisco Employee
Cisco Employee
 

Introduction

This document describes the solution to the problem that occurs when Smart Software Manager On-Prem 7.x  Cerberus ip address conflict with internal ip address subnet.

Cerberus IP is currently hardcoded in 3 places.  Following is a set of instructions for how to change this IP address to allow Cerberus to function using a different IP address

 

Cerberus runs on the host and exposes an API to the backend container to provide host-functionality.  Docker containers do not have access to the host network information out of the box, so to make this communication work, several pieces are implemented by hardcoding 10.254.254.254 address.   For these example steps, we'll be changing the IP address to 11.254.254.254

Components

Platform: KVM, OVA, ISO based deployment

Software: Smart Software Manager On-Prem Release 7 Release 

Solution

Step 1. Change IP alias added to the loopback (lo) interface on the host

 

# ip addr show lo
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet 10.254.254.254/32 scope global lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever

When On-Prem is installed, as part of the provisioning step, following script is added.

The /sbin/ifup-local script runs automatically whenever the lo interface is brought online.

 

# cat /sbin/ifup-local
#!/bin/sh
if [[ "$1" == "lo" ]]
then
ip addr add 10.254.254.254 dev lo
fi

Edit this script and change references of 10.254.254.254 to 11.254.254.254, and restart the network service.

systemctl restart network

Step 2.  Cerberus service only listens to 10.254.254.254

Inspect Cerberus configuration and validate ip address configured.

# cerberus config:get BIND
10.254.254.254

Change the Cerberus ip configuration and restart Cerberus service.

cerberus config:set BIND=11.254.254.254
cerberus restart

Step 3. References to 10.254.254.254 in docker-compose-up.yml

docker-compose-up.yml file pass the Cerberus ip address to respective containers so they can communicate with host.

Edit the docker-compose-up.yml file with newly modified Cerberus ip address 

backend:
extra_hosts:
- "dockerhost:11.254.254.254"
environment:
- CERBERUS_URL=http://11.254.254.254:6000

Step 4. Restart satellite service.

systemctl restart satellite

Post all services are online, verify UI access to Smart Software Manager On-Prem 7.x . 

Change ip address to network interface ens192 of Smart Software Manager On-Prem 7.x now.

Comments
renjithg
Cisco Employee
Cisco Employee

This procedure is not recommended if Smart Software Manager On-Prem Release 7 is deploying as HA pair since SSH_HOST_TUNNEL is established with Cerberus old ip address.

Martin L
VIP
VIP

Thanks for sharing!

Getting Started

Find answers to your questions by entering keywords or phrases in the Search bar above. New here? Use these resources to familiarize yourself with the community:

Review Cisco Networking for a $25 gift card