Sommario

Introduzione

Problema

Prerequisiti

Soluzione

Introduzione

In questo documento viene descritto il processo per attivare la modifica del bridge di rete predefinito nel programma di installazione in modo che non sia in conflitto con una rete privata e l'installazione possa essere completata.

Problema

Il bridge di docker suite predefinito utilizza l'intervallo IP 172.18.0.0/16 e ciò può interferire con una rete privata. Quando il programma di installazione viene caricato, è possibile che non sia più possibile eseguire il routing tra il programma di installazione e la rete privata. Questo ponte si può vedere attraverso:

ip address show

Quando si accede alla VM del programma di installazione. Questo bridge è visibile anche in docker tramite:

docker network ls

Dovrebbe essere simile alla seguente:

[root@rcdn-ccs-repo ~]# docker network ls

NETWORK ID          NAME                DRIVER              SCOPE

eadee20d76ce        bridge              bridge              local

3a009a3d7747        host                host                local

f4ca595dfac5        none                null                local

5b0dbc510082        suite               bridge              local

Prerequisiti

1. Quando si distribuisce VM installer (ova o qws2), è necessario essere in grado di accedere a esso, quindi se si utilizza VMware, è necessario modificare l'ID istanza predefinita e il nome host quando si distribuisce l'OVA e aggiungere una chiave pubblica o una password.

2. Se usi Openstack, passa semplicemente una chiave.

Soluzione

Passaggio 1. Accedere al programma di installazione.

Passaggio 2. Scollegare i contenitori del programma di installazione suite dal bridge corrente tramite:

docker network disconnect suite suite-prod-mgmt

docker network disconnect suite suite-nginx

docker network disconnect suite suite-installer-ui

docker network disconnect suite suite-k8s-mgmt

Passaggio 3. Se al bridge suite sono connessi altri contenitori, è necessario disconnetterli in modo analogo.

Passaggio 4. Dopo aver disconnesso tutti i container dal bridge, è necessario rimuovere il bridge tramite:

docker network rm suite

Passaggio 5. È ora necessario creare un nuovo bridge di docker con lo stesso nome ma con una rete /16 diversa per evitare conflitti con la rete privata. Nell'esempio di comando, viene usato 192.168.0.0/16:

docker network create --driver=bridge --subnet=192.168.0.0/16 --gateway=192.168.0.1 suite

Nota: Deve essere una rete /16 e deve essere denominata suite.

Passaggio 6. Riavviare la VM del programma di installazione tramite:

shutdown -r now

Passaggio 7. Accedere nuovamente alla VM.

Passaggio 8. Verificare che i contenitori del programma di installazione suite siano attivi e in esecuzione tramite:

docker ps

Il formato dovrebbe essere simile al seguente:

[root@rcdn-ccs-repo ~]# docker ps

CONTAINER ID        IMAGE                                                                            COMMAND             CREATED             STATUS              PORTS                                      NAMES

8d437dab65b9        devhub-docker.cisco.com/multicloudsuite-release/suite-nginx:5.0.0-RC2.8          "/entrypoint.sh"    13 days ago         Up 13 days          0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp   suite-nginx

6bbffff3c248        devhub-docker.cisco.com/multicloudsuite-release/suite-prod-mgmt:5.0.0-RC2.8      "/entrypoint.sh"    13 days ago         Up 13 days          8080/tcp                                   suite-prod-mgmt

515754611a28        devhub-docker.cisco.com/multicloudsuite-release/suite-k8s-mgmt:5.0.0-RC2.8       "/entrypoint.sh"    13 days ago         Up 13 days          8080/tcp                                   suite-k8s-mgmt

8cd9d0c6ddb4        devhub-docker.cisco.com/multicloudsuite-release/suite-installer-ui:5.0.0-RC2.8   "npm start"         13 days ago         Up 13 days          8080/tcp                                   suite-installer-ui

Passaggio 9. È quindi possibile verificare che il bridge *NEW* suite funzioni correttamente con:

docker network inspect suite

Dovrebbe essere simile a questo con il tuo *NUOVO* intervallo ip come indirizzi IPv4:

[root@rcdn-ccs-repo ~]# docker network inspect suite

[

{

"Name": "suite",

"Id": "5b0dbc51008296cccbc766cfd44da1ce95e2cc803fd208e28af60b7931737485",

"Created": "2019-02-14T20:41:25.323694587Z",

"Scope": "local",

"Driver": "bridge",

"EnableIPv6": false,

"IPAM": {

"Driver": "default",

"Options": {},

"Config": [

{

"Subnet": "192.168.0.0/16",

"Gateway": "192.168.0.1"

}

]

},

"Internal": false,

"Attachable": false,

"Containers": {

"515754611a28d25ad43cb028ca133755fe7fe97609efe62f142c77607167844b": {

"Name": "suite-k8s-mgmt",

"EndpointID": "9e9e3860e284548a8634eef0dfc208da26532a0d5f696ad60aba0edf9a05ba73",

"MacAddress": "02:42:ac:12:00:03",

"IPv4Address": "192.168.0.3/16",

"IPv6Address": ""

},

"6bbffff3c24848028c0ea9b4294dcf47e78486acdaa0895747adbaed93aee83a": {

"Name": "suite-prod-mgmt",

"EndpointID": "d3f7b14f0c5101df9a17ca857d7b6fb1bbbd47063d3538cdfcad982c01f120e0",

"MacAddress": "02:42:ac:12:00:04",

"IPv4Address": "192.168.0.4/16",

"IPv6Address": ""

},

"8cd9d0c6ddb4424af25898131b68d22ca531c954c032d345981a25c90e9a3777": {

"Name": "suite-installer-ui",

"EndpointID": "47bf559917bb044b4a06a1010685b2388a670c29979fa4201d922445f31da63e",

"MacAddress": "02:42:ac:12:00:02",

"IPv4Address": "192.168.0.2/16",

"IPv6Address": ""

},

"8d437dab65b9ec19307f194ed50201163c486f5f2aff5133d8ecd4a7c014a656": {

"Name": "suite-nginx",

"EndpointID": "1a445b1b0d7208921e29fd64605992b259c5d1071513434768ec39ca68509cd9",

"MacAddress": "02:42:ac:12:00:05",

"IPv4Address": "192.168.0.5/16",

"IPv6Address": ""

}

},

"Options": {},

"Labels": {}

}

]

Passaggio 10. Da qui dovrebbe essere possibile andare a https://<INSTALLER_VM_IP> e caricare il programma di installazione e non avere conflitti di rete privati/interni.