Setting up Node Network Configuration Policy
Rederence: See Section 3.4. Preparing RHOCP for RHOSP network isolation from Deploying Red Hat OpenStack Platform 18.0 Development Preview 3 on Red Hat OpenShift Container Platform guide.
- 
Create required projects for the Openstack Operator installation. The next installation step for the OpenStack Operators involves creating the openstack-operators and openstack projects for the RHOSO operators. oc new-project openstack-operators oc new-project openstack
- 
get list of worker nodes in your ocp cluster. oc get nodes -l node-role.kubernetes.io/worker -o jsonpath="{.items[*].metadata.name}"Sample outputocp4-worker1.aio.example.com ocp4-worker2.aio.example.com ocp4-worker3.aio.example.com 
- 
Copy sample nncp configuration from step #4 in the documentation link provided on the section page. or use the provided sample configuration file single-nic-vlan-nncp.sample.
- 
Create a copy of sample config for one of your nodes. cp single-nic-vlan-nncp.sample osp-ng-nncp-worker1.yaml
- 
Edit the file for use with the relevant node. Refer to the network configuration table you have created earlier. vi osp-ng-nncp-worker1.yaml
- 
Customize the copy of sample configuration as per requirement. - 
Change the metadata name to reflect the node name and interface name strings. 
- 
Change the name of the interface as per the network configuration table. 
- 
Change the vlan id as per your setup. 
- 
Change the ipaddress of the interface as per the network configuration table. 
- 
Repeat above steps for all network configuration blocks: internalapi, storage, tenant and interface configuration. 
- 
Change the hostname under nodeselector to match your hostname. 
 
- 
- 
Apply the configuration oc apply -f osp-ng-nncp-worker1.yaml
- 
Create copy of your current edited file for other nodes, it will be easier to edit. cp osp-ng-nncp-worker1.yaml osp-ng-nncp-worker2.yaml cp osp-ng-nncp-worker1.yaml osp-ng-nncp-worker3.yaml
- 
Edit the other files with relevant network configuration as per network configuration table. 
- 
Most likely you will need to change only the metadata name, the ip addresses and nodeselector hostname configuration. 
- 
Apply newly configured yamls indivdually: oc apply -f osp-ng-nncp-worker2.yaml oc apply -f osp-ng-nncp-worker3.yaml
- 
Wait until they are in an available state before proceeding: oc get nncp -wSample OutputNAME STATUS REASON osp-enp1s0-worker-ocp4-worker1 Available SuccessfullyConfigured osp-enp1s0-worker-ocp4-worker2 Available SuccessfullyConfigured osp-enp1s0-worker-ocp4-worker3 Available SuccessfullyConfigured
- 
Verify that the network settings are applied on the relevant node by listing ip settings on the node. - 
Connect to node: oc debug node/ocp4-worker1.aio.example.comSample outputTemporary namespace openshift-debug-cp7xd is created for debugging node... Starting pod/ocp4-master1aioexamplecom-debug ... To use host binaries, run `chroot /host` Pod IP: 192.168.123.101 If you don't see a command prompt, try pressing enter. sh-4.4# 
- 
Check IP address listing to verify the desired settings are applied. ip address showSample output. . . 66: enp1s0.20@enp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000 link/ether de:ad:be:ef:00:01 brd ff:ff:ff:ff:ff:ff inet 172.17.0.10/24 brd 172.17.0.255 scope global noprefixroute enp1s0.20 valid_lft forever preferred_lft forever 67: enp1s0.21@enp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000 link/ether de:ad:be:ef:00:01 brd ff:ff:ff:ff:ff:ff inet 172.18.0.10/24 brd 172.18.0.255 scope global noprefixroute enp1s0.21 valid_lft forever preferred_lft forever 68: enp1s0.22@enp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000 link/ether de:ad:be:ef:00:01 brd ff:ff:ff:ff:ff:ff inet 172.19.0.10/24 brd 172.19.0.255 scope global noprefixroute enp1s0.22 . . .
 
-