Skip to content

Commit 1100a50

Browse files
Merge pull request #403 from gmarcian/add_worker_unidelta_ipv6
Add worker node to run test operator on uni04delta-ipv6 deployments In order to run disruptive tests on the uni04delta env, We need to have a worker node dedicated for the test operator. Thus we can ensure that test pods won't be affected by the failures. Running disruptive tests is part of HA testing of the system. Please see OSPRH-7602 Reviewed-by: Andrew Bays <[email protected]> Reviewed-by: John Fulton <[email protected]>
2 parents 5f1fef5 + 88e97a0 commit 1100a50

File tree

6 files changed

+349
-0
lines changed

6 files changed

+349
-0
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,3 +2,4 @@ examples/dt/uni*/control-plane/control-plane.yaml
22
examples/dt/uni*/control-plane/nncp/nncp.yaml
33
examples/dt/uni*/data-plane.yaml
44
examples/dt/uni*/networker/edpm-networker.yaml
5+
.idea/

automation/net-env/uni04delta-ipv6.yaml

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -428,6 +428,63 @@ instances:
428428
skip_nm: false
429429
trunk_parent: ctlplane
430430
vlan_id: 22
431+
ocp-3:
432+
hostname: worker-0
433+
name: ocp-3
434+
networks:
435+
ctlplane:
436+
interface_name: enp7s0
437+
ip_v6: 2620:cf:cf:aaaa::13
438+
is_trunk_parent: true
439+
mac_addr: 52:54:02:18:86:bc
440+
mtu: 1500
441+
network_name: ctlplane
442+
prefix_length_v6: 64
443+
skip_nm: false
444+
internalapi:
445+
interface_name: enp7s0.20
446+
ip_v6: 2620:cf:cf:bbbb::13
447+
is_trunk_parent: false
448+
mac_addr: 52:54:00:04:df:88
449+
mtu: 1500
450+
network_name: internalapi
451+
parent_interface: enp7s0
452+
prefix_length_v6: 64
453+
skip_nm: false
454+
trunk_parent: ctlplane
455+
vlan_id: 20
456+
ironic:
457+
interface_name: enp8s0
458+
ip_v6: 2620:cf:cf:ffff::13
459+
mac_addr: 52:54:00:c2:32:a3
460+
mtu: 1500
461+
network_name: ironic
462+
prefix_length_v6: 64
463+
skip_nm: false
464+
storage:
465+
interface_name: enp7s0.21
466+
ip_v6: 2620:cf:cf:cccc::13
467+
is_trunk_parent: false
468+
mac_addr: 52:54:00:7e:b2:1d
469+
mtu: 1500
470+
network_name: storage
471+
parent_interface: enp7s0
472+
prefix_length_v6: 64
473+
skip_nm: false
474+
trunk_parent: ctlplane
475+
vlan_id: 21
476+
tenant:
477+
interface_name: enp7s0.22
478+
ip_v6: 2620:cf:cf:eeee::13
479+
is_trunk_parent: false
480+
mac_addr: 52:54:00:12:d1:e2
481+
mtu: 1500
482+
network_name: tenant
483+
parent_interface: enp7s0
484+
prefix_length_v6: 64
485+
skip_nm: false
486+
trunk_parent: ctlplane
487+
vlan_id: 22
431488
networks:
432489
ctlplane:
433490
dns_v4: []

dt/uni04delta-ipv6/nncp/kustomization.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,7 @@ patches:
118118
name: master-2
119119
patch: *routes
120120

121+
121122
replacements:
122123

123124
- source:

examples/dt/uni04delta-ipv6/control-plane/nncp/kustomization.yaml

Lines changed: 274 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,3 +5,277 @@ components:
55
- ../../../../../dt/uni04delta-ipv6/nncp
66
resources:
77
- values.yaml
8+
- ocp_worker_nodes.yaml
9+
10+
patches:
11+
- target:
12+
kind: NodeNetworkConfigurationPolicy
13+
name: node-3
14+
patch: |-
15+
- op: add
16+
path: /spec/desiredState/interfaces/-
17+
value:
18+
description: Ironic bridge
19+
ipv6:
20+
enabled: true
21+
address:
22+
- ip: _replaced_
23+
prefix-length: _replaced_
24+
ipv4:
25+
enabled: false
26+
mtu: 1500
27+
name: ironic
28+
type: linux-bridge
29+
bridge:
30+
options:
31+
stp:
32+
enabled: false
33+
port:
34+
- name: _replaced_
35+
36+
- target:
37+
kind: NodeNetworkConfigurationPolicy
38+
name: node-3
39+
patch: |-
40+
- op: add
41+
path: /spec/desiredState/interfaces/-
42+
value:
43+
description: Ironic VRF
44+
name: ironicvrf
45+
type: vrf
46+
state: up
47+
vrf:
48+
port:
49+
- ironic
50+
route-table-id: 10
51+
52+
- target:
53+
kind: NodeNetworkConfigurationPolicy
54+
name: node-3
55+
patch: |-
56+
- op: add
57+
path: /spec/desiredState/routes/config/-
58+
value:
59+
destination: "::/0"
60+
metric: 150
61+
next-hop-address: _replaced_
62+
next-hop-interface: ironic
63+
table-id: 10
64+
- op: add
65+
path: /spec/desiredState/routes/config/-
66+
value:
67+
destination: _replaced_
68+
metric: 150
69+
next-hop-address: _replaced_
70+
next-hop-interface: ospbr
71+
- op: add
72+
path: /spec/desiredState/routes/config/-
73+
value:
74+
destination: "::/0"
75+
metric: 150
76+
next-hop-address: _replaced_
77+
next-hop-interface: ospbr
78+
79+
# master roles:
80+
- target:
81+
kind: NodeNetworkConfigurationPolicy
82+
name: master-0
83+
patch: |-
84+
- op: add
85+
path: /spec/nodeSelector/node-role.kubernetes.io~1master
86+
value: ""
87+
- op: remove
88+
path: /spec/nodeSelector/node-role.kubernetes.io~1worker
89+
- target:
90+
kind: NodeNetworkConfigurationPolicy
91+
name: master-1
92+
patch: |-
93+
- op: add
94+
path: /spec/nodeSelector/node-role.kubernetes.io~1master
95+
value: ""
96+
- op: remove
97+
path: /spec/nodeSelector/node-role.kubernetes.io~1worker
98+
- target:
99+
kind: NodeNetworkConfigurationPolicy
100+
name: master-2
101+
patch: |-
102+
- op: add
103+
path: /spec/nodeSelector/node-role.kubernetes.io~1master
104+
value: ""
105+
- op: remove
106+
path: /spec/nodeSelector/node-role.kubernetes.io~1worker
107+
108+
replacements:
109+
110+
- source:
111+
kind: ConfigMap
112+
name: network-values
113+
fieldPath: data.ironic.base_iface
114+
targets:
115+
- select:
116+
kind: NodeNetworkConfigurationPolicy
117+
name: node-3
118+
fieldPaths:
119+
- spec.desiredState.interfaces.[name=ironic].bridge.port.0.name
120+
121+
# Static Node IPs: node-3
122+
- source:
123+
kind: ConfigMap
124+
name: network-values
125+
fieldPath: data.node_3.internalapi_ip
126+
targets:
127+
- select:
128+
kind: NodeNetworkConfigurationPolicy
129+
name: node-3
130+
fieldPaths:
131+
- spec.desiredState.interfaces.[name=internalapi].ipv6.address.0.ip
132+
- source:
133+
kind: ConfigMap
134+
name: network-values
135+
fieldPath: data.node_3.tenant_ip
136+
targets:
137+
- select:
138+
kind: NodeNetworkConfigurationPolicy
139+
name: node-3
140+
fieldPaths:
141+
- spec.desiredState.interfaces.[name=tenant].ipv6.address.0.ip
142+
- source:
143+
kind: ConfigMap
144+
name: network-values
145+
fieldPath: data.node_3.ctlplane_ip
146+
targets:
147+
- select:
148+
kind: NodeNetworkConfigurationPolicy
149+
name: node-3
150+
fieldPaths:
151+
- spec.desiredState.interfaces.[type=linux-bridge].ipv6.address.0.ip
152+
- source:
153+
kind: ConfigMap
154+
name: network-values
155+
fieldPath: data.node_3.storage_ip
156+
targets:
157+
- select:
158+
kind: NodeNetworkConfigurationPolicy
159+
name: node-3
160+
fieldPaths:
161+
- spec.desiredState.interfaces.[name=storage].ipv6.address.0.ip
162+
- source:
163+
kind: ConfigMap
164+
name: network-values
165+
fieldPath: data.node_3.ironic_ip
166+
targets:
167+
- select:
168+
kind: NodeNetworkConfigurationPolicy
169+
name: node-3
170+
fieldPaths:
171+
- spec.desiredState.interfaces.[name=ironic].ipv6.address.0.ip
172+
173+
174+
# prefix-length: node-3
175+
- source:
176+
kind: ConfigMap
177+
name: network-values
178+
fieldPath: data.ctlplane.prefix-length
179+
targets:
180+
- select:
181+
kind: NodeNetworkConfigurationPolicy
182+
name: node-3
183+
fieldPaths:
184+
- spec.desiredState.interfaces.[type=linux-bridge].ipv6.address.0.prefix-length
185+
- source:
186+
kind: ConfigMap
187+
name: network-values
188+
fieldPath: data.internalapi.prefix-length
189+
targets:
190+
- select:
191+
kind: NodeNetworkConfigurationPolicy
192+
name: node-3
193+
fieldPaths:
194+
- spec.desiredState.interfaces.[name=internalapi].ipv6.address.0.prefix-length
195+
- source:
196+
kind: ConfigMap
197+
name: network-values
198+
fieldPath: data.tenant.prefix-length
199+
targets:
200+
- select:
201+
kind: NodeNetworkConfigurationPolicy
202+
name: node-3
203+
fieldPaths:
204+
- spec.desiredState.interfaces.[name=tenant].ipv6.address.0.prefix-length
205+
- source:
206+
kind: ConfigMap
207+
name: network-values
208+
fieldPath: data.storage.prefix-length
209+
targets:
210+
- select:
211+
kind: NodeNetworkConfigurationPolicy
212+
name: node-3
213+
fieldPaths:
214+
- spec.desiredState.interfaces.[name=storage].ipv6.address.0.prefix-length
215+
216+
- source:
217+
kind: ConfigMap
218+
name: network-values
219+
fieldPath: data.ironic.prefix-length
220+
targets:
221+
- select:
222+
kind: NodeNetworkConfigurationPolicy
223+
name:
224+
fieldPaths:
225+
- spec.desiredState.interfaces.[name=ironic].ipv6.address.0.prefix-length
226+
227+
- source:
228+
kind: ConfigMap
229+
name: network-values
230+
fieldPath: data.node_3.name
231+
targets:
232+
- select:
233+
kind: NodeNetworkConfigurationPolicy
234+
name: node-3
235+
fieldPaths:
236+
- metadata.name
237+
238+
- source:
239+
kind: ConfigMap
240+
name: network-values
241+
fieldPath: data.node_3.node_name
242+
targets:
243+
- select:
244+
kind: NodeNetworkConfigurationPolicy
245+
name: node-3
246+
fieldPaths:
247+
- spec.nodeSelector.[kubernetes.io/hostname]
248+
249+
- source:
250+
kind: ConfigMap
251+
name: network-values
252+
fieldPath: data.ironic.gateway
253+
targets:
254+
- select:
255+
kind: NodeNetworkConfigurationPolicy
256+
name: node-3
257+
fieldPaths:
258+
- spec.desiredState.routes.config.0.next-hop-address
259+
260+
- source:
261+
kind: ConfigMap
262+
name: network-values
263+
fieldPath: data.ctlplane.subnets.0.gateway
264+
targets:
265+
- select:
266+
kind: NodeNetworkConfigurationPolicy
267+
name: node-3
268+
fieldPaths:
269+
- spec.desiredState.routes.config.1.next-hop-address
270+
- spec.desiredState.routes.config.2.next-hop-address
271+
272+
- source:
273+
kind: ConfigMap
274+
name: network-values
275+
fieldPath: data.ironic.cidr
276+
targets:
277+
- select:
278+
kind: NodeNetworkConfigurationPolicy
279+
name: node-3
280+
fieldPaths:
281+
- spec.desiredState.routes.config.1.destination
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
apiVersion: nmstate.io/v1
3+
kind: NodeNetworkConfigurationPolicy
4+
metadata:
5+
name: node-3
6+
labels:
7+
osp/nncm-config-type: standard

examples/dt/uni04delta-ipv6/control-plane/nncp/values.yaml

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,15 @@ data:
3232
ctlplane_ip: "2620:cf:cf:aaaa::12"
3333
storage_ip: "2620:cf:cf:cccc::12"
3434
ironic_ip: "2620:cf:cf:ffff::12"
35+
node_3:
36+
name: worker-0
37+
node_name: worker-0.ocp.openstack.lab
38+
internalapi_ip: "2620:cf:cf:bbbb::13"
39+
tenant_ip: "2620:cf:cf:eeee::13"
40+
ctlplane_ip: "2620:cf:cf:aaaa::13"
41+
storage_ip: "2620:cf:cf:cccc::13"
42+
ironic_ip: "2620:cf:cf:ffff::13"
43+
3544
# networks
3645
ctlplane:
3746
dnsDomain: ctlplane.example.com

0 commit comments

Comments
 (0)