Skip to content

Commit

Permalink
[NFV] Deploy Networker in ovs-dpdk-sriov scenario
Browse files Browse the repository at this point in the history
  • Loading branch information
rdiazcam committed Jan 27, 2025
1 parent 44608a4 commit 0588736
Show file tree
Hide file tree
Showing 18 changed files with 980 additions and 0 deletions.
61 changes: 61 additions & 0 deletions automation/vars/ovs-dpdk-sriov-networker.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
---
vas:
ovs-dpdk-sriov-networker:
stages:
- path: examples/dt/nfv/nfv-ovs-dpdk-sriov-networker/nncp
wait_conditions:
- >-
oc -n openstack wait nncp
-l osp/nncm-config-type=standard
--for jsonpath='{.status.conditions[0].reason}'=SuccessfullyConfigured
--timeout=60s
values:
- name: network-values
src_file: values.yaml
build_output: nncp.yaml

- path: examples/dt/nfv/nfv-ovs-dpdk-sriov-networker
wait_conditions:
- >-
oc -n openstack wait osctlplane controlplane --for condition=Ready
--timeout=1200s
values:
- name: network-values
src_file: ./nncp/values.yaml
- name: service-values
src_file: service-values.yaml
build_output: control-plane.yaml

- path: examples/dt/nfv/nfv-ovs-dpdk-sriov-networker/edpm/networkers
wait_conditions:
- >-
oc -n openstack wait
osdpns networker-nodes --for condition=SetupReady
--timeout=60m
values:
- name: edpm-networker-nodeset-values
src_file: values.yaml
build_output: edpm-networker-nodeset.yaml

- path: examples/dt/nfv/nfv-ovs-dpdk-sriov-networker/edpm/computes
wait_conditions:
- >-
oc -n openstack wait
osdpns compute-nodes --for condition=SetupReady
--timeout=60m
values:
- name: edpm-compute-nodeset-values
src_file: values.yaml
build_output: edpm-compute-nodeset.yaml

- path: examples/dt/nfv/nfv-ovs-dpdk-sriov-networker/edpm/deployment
wait_conditions:
- >-
oc -n openstack
wait openstackdataplanedeployments.dataplane.openstack.org
edpm-deployment
--for condition=Ready --timeout=60m
values:
- name: edpm-deployment-values
src_file: values.yaml
build_output: edpm-deployment.yaml
2 changes: 2 additions & 0 deletions examples/dt/nfv/nfv-ovs-dpdk-sriov-networker/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
nncp.yaml
control-plane.yaml
3 changes: 3 additions & 0 deletions examples/dt/nfv/nfv-ovs-dpdk-sriov-networker/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Deployed Topology - NFV/OVS-DPDK-SRIOV with networker

TBC
55 changes: 55 additions & 0 deletions examples/dt/nfv/nfv-ovs-dpdk-sriov-networker/control-plane.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# Configuring networking and deploy the OpenStack control plane

## Assumptions

- A storage class called `local-storage` should already exist.

## Initialize

Switch to the "openstack" namespace
```
oc project openstack
```
Change to the nfv/nfv-ovs-dpdk-sriov-2nodesets directory
```
cd examples/dt/nfv/nfv-ovs-dpdk-sriov-2nodesets
```
Edit the [nncp/values.yaml](nncp/values.yaml) and
[service-values.yaml](service-values.yaml) files to suit
your environment.
```
vi nncp/values.yaml
vi service-values.yaml
```

## Apply node network configuration

Generate the node network configuration
```
kustomize build nncp > nncp.yaml
```

Apply the NNCP CRs
```
oc apply -f nncp.yaml
```
Wait for NNCPs to be available
```
oc wait nncp -l osp/nncm-config-type=standard --for jsonpath='{.status.conditions[0].reason}'=SuccessfullyConfigured --timeout=300s
```

## Apply networking and control-plane configuration

Generate the control-plane and networking CRs.
```
kustomize build > control-plane.yaml
```
Apply the CRs
```
oc apply -f control-plane.yaml
```

Wait for control plane to be available
```
oc wait osctlplane controlplane --for condition=Ready --timeout=600s
```
33 changes: 33 additions & 0 deletions examples/dt/nfv/nfv-ovs-dpdk-sriov-networker/dataplane.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
# Configuring and deploying the dataplane

## Assumptions

- The [control plane](control-plane.md) has been created and successfully deployed

## Initialize

Switch to the "openstack" namespace
```
oc project openstack
```
TBC

## Create CRs
Create the nodesets CRs
```
TBC
```
Wait for dataplane nodesets setup to finish
```
TBC
```

Start the deployment
```
oc apply -f dataplane-deployment.yaml
```

Wait for dataplane deployment to finish
```
TBC
```
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
# TBD
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
---
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization

components:
- ../../../../../../va/nfv/ovs-dpdk-sriov/edpm/nodeset
# - https://github.com/openstack-k8s-operators/architecture/va/nfv/ovs-dpdk-sriov/edpm/nodeset?ref=main
## It's possible to replace ../../../../../../va/nfv/ovs-dpdk-sriov/edpm/nodeset/ with a git checkout URL
## as per: https://github.com/kubernetes-sigs/kustomize/blob/master/examples/remoteBuild.md

resources:
- values.yaml
Loading

0 comments on commit 0588736

Please sign in to comment.