You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+23-21Lines changed: 23 additions & 21 deletions
Original file line number
Diff line number
Diff line change
@@ -140,16 +140,16 @@ $ go build cmd/main.go
140
140
Ansible based automation
141
141
------------------------
142
142
143
-
You can use the Ansible playbooks and roles at <https://github.com/rh-nfv-int/nfv-example-cnf-deploy> to automate the use of the Example CNF.
143
+
You can use the Ansible playbooks and roles at <https://github.com/redhatci/ansible-collection-redhatci-ocp/blob/main/roles/example_cnf_deploy/README.md> to automate the use of the Example CNF.
144
144
145
145
Load balancer mode vs. direct mode
146
146
------------------------
147
147
148
-
There are two different ways of deploying example-cnf, depending on the `enable_lb` flag (default to `true`):
148
+
There are two different ways of deploying example-cnf, depending on the `ecd_enable_lb` flag (default to `true`):
149
149
150
-
- Load balancer mode (`enable_lb: true`):
150
+
- Load balancer mode (`ecd_enable_lb: true`):
151
151
- Represents the behavior described above, with TestPMD LB acting as load balancer between TRex and the CNF Application.
152
-
- Direct mode (`enable_lb: false`):
152
+
- Direct mode (`ecd_enable_lb: false`):
153
153
- The TestPMD LB instance is not used, then testpmd-lb-operator is not deployed.
154
154
- In this case, there's a direct connection between TRex and CNF Application.
155
155
- The CNF Application only uses one replica pod, instead of two.
@@ -170,47 +170,49 @@ SRIOV networks
170
170
171
171
SRIOV networks are required for the setup. In our case, we are using a different SRIOV network per connection, using a different VLAN for each network.
172
172
173
-
In our [example-cnf-config automation](https://github.com/dci-labs/example-cnf-config/tree/master), according to [these two variables](https://github.com/dci-labs/example-cnf-config/blob/master/testpmd/hooks/pre-run.yml#L3-L15), we are setting the following networks:
173
+
In our [example-cnf-config automation](https://github.com/dci-labs/example-cnf-config/tree/master), in the [pre-run stage](https://github.com/dci-labs/example-cnf-config/blob/master/testpmd/hooks/pre-run.yml), we are setting the following networks:
174
174
175
175
```
176
-
cnf_app_networks:
176
+
ecd_cnf_app_networks:
177
177
- name: intel-numa0-net1
178
178
count: 1
179
179
- name: intel-numa0-net2
180
180
count: 1
181
-
packet_generator_networks:
181
+
ecd_packet_generator_networks:
182
182
- name: intel-numa0-net3
183
183
count: 1
184
184
- name: intel-numa0-net4
185
185
count: 1
186
186
```
187
187
188
-
The `cnf_app_networks` represents the connection between TestPMD LB and CNF Application, and `packet_generator_networks` represents the connection between TRex and TestPMD LB. There are two links per connection, each link using a different SRIOV network.
188
+
The `ecd_cnf_app_networks` represents the connection between TestPMD LB and CNF Application, and `ecd_packet_generator_networks` represents the connection between TRex and TestPMD LB. There are two links per connection, each link using a different SRIOV network.
189
189
190
190
According to the configuration applied in example-cnf hooks, and also depending on the mode in which example-cnf is launched, the distribution of these two SRIOV networks may be different:
191
191
192
192
**Load balancer mode:**
193
193
194
-
According to [this code](https://github.com/rh-nfv-int/nfv-example-cnf-deploy/blob/master/roles/example-cnf-app/tasks/app.yaml#L60-L74):
194
+
According to this code from the [example_cnf_deploy role](https://github.com/redhatci/ansible-collection-redhatci-ocp/blob/main/roles/example_cnf_deploy/README.md):
195
195
196
196
```
197
-
- name: create packet gen network list for lb with hardcoded macs
-`pack_nw` corresponds to `packet_generator_networks` and uses `lb_gen_port_mac_list`, having two MAC addresses starting with `40:...`, and correspond to the interfaces that connect the TestPMD LB with TRex. It uses `intel-numa0-net3|4` networks.
213
-
-`cnf_nw` corresponds to `cnf_app_networks` and uses `lb_cnf_port_mac_list`, having two MAC addresses starting with `60:...`, and correspond to the interfaces that connect the TestPMD Load Balancer with the CNF Application. It uses `intel-numa0-net1|2` networks.
214
+
-`ecd_pack_nw` corresponds to `ecd_packet_generator_networks` and uses `ecd_lb_gen_port_mac_list`, having two MAC addresses starting with `40:...`, and correspond to the interfaces that connect the TestPMD LB with TRex. It uses `intel-numa0-net3|4` networks.
215
+
-`ecd_cnf_nw` corresponds to `ecd_cnf_app_networks` and uses `ecd_lb_cnf_port_mac_list`, having two MAC addresses starting with `60:...`, and correspond to the interfaces that connect the TestPMD Load Balancer with the CNF Application. It uses `intel-numa0-net1|2` networks.
214
216
215
217
Also, note that TRex uses static MAC addresses starting with `20:...`. The only MAC addresses that are created dynamically are the ones from CNF Application. To capture them, CNFAppMac CR is used, which saves the MAC and PCI addresses from the CNF Application pods and serve them to the other components of the architecture.
In this case, the network used by TRex varies, according to [this code](https://github.com/rh-nfv-int/nfv-example-cnf-deploy/blob/master/roles/example-cnf-app/tasks/trex/app.yaml#L5): `packet_gen_net: "{{ packet_generator_networks if enable_lb|bool else cnf_app_networks }}"`
227
+
In this case, the network used by TRex varies, according to the [example_cnf_deploy role](https://github.com/redhatci/ansible-collection-redhatci-ocp/blob/main/roles/example_cnf_deploy/README.md): `ecd_packet_gen_net: "{{ ecd_packet_generator_networks if ecd_enable_lb | bool else ecd_cnf_app_networks }}"`
226
228
227
-
This says that, if load balancer is not enabled, then TRex is connected to the `cnf_app_networks`, which is, in fact, `intel-numa0-net1|2`, so it doesn't use `intel-numa0-net3|4` in this case.
229
+
This says that, if load balancer is not enabled, then TRex is connected to the `ecd_cnf_app_networks`, which is, in fact, `intel-numa0-net1|2`, so it doesn't use `intel-numa0-net3|4` in this case.
228
230
229
231
Similarly to the load balancing case, TRex uses static MAC addresses starting with `20:...`, and the CNF Application uses random MAC addresses which are eventually provided, together with the PCI addresses, by the CNFAppMac CR.
This repository builds an index image that includes the [Example cnf operators](https://github.com/openshift-kni/example-cnf) used by the [example-cnf](https://github.com/rh-nfv-int/nfv-example-cnf-deploy).
3
+
This repository builds an index image that includes the [Example cnf operators](https://github.com/openshift-kni/example-cnf) used by the [example_cnf_deploy role](https://github.com/redhatci/ansible-collection-redhatci-ocp/blob/main/roles/example_cnf_deploy/README.md).
4
4
5
5
The [CHANGELOG](./CHANGELOG.md) includes the information about the version of the image as well as the operators and their versions included in the image.
0 commit comments