Skip to content

Commit

Permalink
Multiple nodesets for ovs-dpdk-sriov scenario
Browse files Browse the repository at this point in the history
Created a new dt based on ovs-dpdk-sriov va
Depends-on: openstack-k8s-operators/ci-framework#2280
  • Loading branch information
Miguel Angel Nieto Jimenez authored and mnietoji committed Dec 10, 2024
1 parent d82dcc2 commit b9e5771
Show file tree
Hide file tree
Showing 20 changed files with 933 additions and 0 deletions.
60 changes: 60 additions & 0 deletions automation/vars/ovs-dpdk-sriov-2nodesets.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
---
vas:
ovs-dpdk-sriov-2nodesets:
stages:
- path: examples/dt/nfv/nfv-ovs-dpdk-sriov-2nodesets/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: ../../../../va/nfv/ovs-dpdk-sriov/nncp/values.yaml
build_output: nncp.yaml

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

- path: examples/dt/nfv/nfv-ovs-dpdk-sriov-2nodesets/edpm/nodeset
values:
- name: edpm-nodeset-values
src_file: values.yaml
build_output: nodeset.yaml

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

- path: examples/dt/nfv/nfv-ovs-dpdk-sriov-2nodesets/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: ../../../../../va/nfv/ovs-dpdk-sriov/edpm/deployment/values.yaml
build_output: deployment.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
---
apiVersion: v1
data:
NodeRootPassword: _replaced_
kind: Secret
metadata:
name: baremetalset-password-secret-2
namespace: openstack
type: Opaque
104 changes: 104 additions & 0 deletions dt/nfv/nfv-ovs-dpdk-sriov-2nodesets/edpm/nodeset2/kustomization.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
---
apiVersion: kustomize.config.k8s.io/v1alpha1
kind: Component

transformers:
# Set namespace to OpenStack on all namespaced objects without a namespace
- |-
apiVersion: builtin
kind: NamespaceTransformer
metadata:
name: _ignored_
namespace: openstack
setRoleBindingSubjects: none
unsetOnly: true
fieldSpecs:
- path: metadata/name
kind: Namespace
create: true
components:
- ../../../../../lib/dataplane/nodeset2

resources:
- baremetalset-password-secret.yaml
- nova_ovs_dpdk_sriov.yaml
- neutron_igmp.yaml

replacements:
- source:
kind: ConfigMap
name: edpm-nodeset2-values
fieldPath: data.root_password
targets:
- select:
kind: Secret
name: baremetalset-password-secret-2
fieldPaths:
- data.NodeRootPassword
options:
create: true

# Nova compute CPU pinning customization
- source:
kind: ConfigMap
name: edpm-nodeset2-values
fieldPath: data.nova.compute.conf
targets:
- select:
kind: ConfigMap
name: ovs-dpdk-sriov-cpu-pinning-nova-2
fieldPaths:
- data.25-cpu-pinning-nova\.conf
options:
create: true
# Nova compute PCI passthrough customization
- source:
kind: ConfigMap
name: edpm-nodeset2-values
fieldPath: data.nova.pci.conf
targets:
- select:
kind: ConfigMap
name: sriov-nova-2
fieldPaths:
- data.03-sriov-nova\.conf
options:
create: true
- source:
kind: ConfigMap
name: edpm-nodeset2-values
fieldPath: data.preProvisioned
targets:
- select:
kind: OpenStackDataPlaneNodeSet
name: openstack-edpm-2
fieldPaths:
- spec.preProvisioned
options:
create: true
- source:
kind: ConfigMap
name: edpm-nodeset2-values
fieldPath: data.baremetalSetTemplate
targets:
- select:
kind: OpenStackDataPlaneNodeSet
name: openstack-edpm-2
fieldPaths:
- spec.baremetalSetTemplate
options:
create: true
# Neutron IGMP configuration
- source:
kind: ConfigMap
name: edpm-nodeset2-values
fieldPath: data.neutron.igmp.conf
targets:
- select:
kind: ConfigMap
name: neutron-igmp-2
fieldPaths:
- data.25-igmp\.conf
options:
create: true
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
---
apiVersion: v1
kind: ConfigMap
metadata:
name: neutron-igmp-2
data:
25-igmp.conf: _replaced_
---
apiVersion: dataplane.openstack.org/v1beta1
kind: OpenStackDataPlaneService
metadata:
name: neutron-ovn-igmp-2
spec:
label: neutron-ovn-igmp-2
edpmServiceType: neutron-ovn
caCerts: combined-ca-bundle
playbook: osp.edpm.neutron_ovn
dataSources:
- configMapRef:
name: neutron-igmp-2
- secretRef:
name: neutron-ovn-agent-neutron-config
tlsCerts:
default:
contents:
- dnsnames
- ips
issuer: osp-rootca-issuer-ovn
keyUsages:
- digital signature
- key encipherment
- client auth
networks:
- ctlplane
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
---
apiVersion: v1
kind: ConfigMap
metadata:
name: ovs-dpdk-sriov-cpu-pinning-nova-2
data:
25-cpu-pinning-nova.conf: _replaced_
---
apiVersion: v1
kind: ConfigMap
metadata:
name: sriov-nova-2
data:
03-sriov-nova.conf: _replaced_
---
apiVersion: dataplane.openstack.org/v1beta1
kind: OpenStackDataPlaneService
metadata:
name: nova-custom-ovsdpdksriov-2
spec:
label: nova-custom-ovsdpdksriov-2
edpmServiceType: nova
dataSources:
- configMapRef:
name: ovs-dpdk-sriov-cpu-pinning-nova-2
- configMapRef:
name: sriov-nova-2
- secretRef:
name: nova-cell1-compute-config
- secretRef:
name: nova-migration-ssh-key
playbook: osp.edpm.nova
tlsCerts:
default:
contents:
- dnsnames
- ips
networks:
- ctlplane
issuer: osp-rootca-issuer-internal
caCerts: combined-ca-bundle
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
dataplane-deployment.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
---
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization

resources:
- ../../../../../va/nfv/ovs-dpdk-sriov/edpm/deployment

patches:
- target:
kind: OpenStackDataPlaneDeployment
name: edpm-deployment
patch: |
- op: add
path: /spec/nodeSets/-
value: openstack-edpm-2
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 b9e5771

Please sign in to comment.