-
Notifications
You must be signed in to change notification settings - Fork 87
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #392 from sbekkerm/dcn
Introduce DCN DT This PR introduces DCN VA, which builds upon the HCI VA architecture and is designed for multi-site deployment. In addition to the regular configuration files, this PR includes Jinja templates for generating values.yaml and service-values.yaml files. These templates are essential for Zuul job execution, allowing for the creation of site-specific configuration files multiple times for each DCN site. Reviewed-by: Andrew Bays <[email protected]> Reviewed-by: Sergey Bekkerman Reviewed-by: John Fulton <[email protected]> Reviewed-by: Marián Krčmárik Reviewed-by: Francesco Pantano <[email protected]>
- Loading branch information
Showing
36 changed files
with
3,471 additions
and
0 deletions.
There are no files selected for viewing
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
--- | ||
vas: | ||
dcn: | ||
stages: | ||
- path: examples/dt/dcn/control-plane/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/dcn/control-plane | ||
wait_conditions: | ||
- >- | ||
oc -n openstack wait osctlplane controlplane --for condition=Ready | ||
--timeout=30m | ||
values: | ||
- name: network-values | ||
src_file: nncp/values.yaml | ||
build_output: ../control-plane.yaml | ||
post_stage_run: | ||
- name: Deploy DCN | ||
type: playbook | ||
source: "../../playbooks/dcn.yml" | ||
inventory: "${HOME}/ci-framework-data/artifacts/zuul_inventory.yml" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
# DT: DCN | ||
|
||
If you are looking for information on how to deploy the DCN DT, then | ||
please see the | ||
[DCN README in the examples directory](../../examples/dt/dcn/README.md). | ||
|
||
This directory, `architecture/dt/dcn/`, exists so that the | ||
[kustomization.yaml](../../examples/dt/dcn/kustomization.yaml) | ||
in the examples directory for the DCN DT, reference it by path as a | ||
component. Its contents are likely uninteresting unless you want to | ||
understand how kustomize was implemented in this repository. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,46 @@ | ||
--- | ||
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/deployment | ||
|
||
replacements: | ||
- source: | ||
kind: ConfigMap | ||
name: edpm-deployment-values-post-ceph | ||
fieldPath: data.deployment.name | ||
targets: | ||
- select: | ||
kind: OpenStackDataPlaneDeployment | ||
fieldPaths: | ||
- metadata.name | ||
options: | ||
create: true | ||
|
||
- source: | ||
kind: ConfigMap | ||
name: edpm-deployment-values-post-ceph | ||
fieldPath: data.nodeset_name | ||
targets: | ||
- select: | ||
kind: OpenStackDataPlaneDeployment | ||
fieldPaths: | ||
- spec.nodeSets.* | ||
options: | ||
create: true |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
--- | ||
apiVersion: v1 | ||
data: | ||
ceph.client.openstack.keyring: _ignored_ | ||
ceph.conf: _ignored_ | ||
kind: Secret | ||
metadata: | ||
name: ceph-conf-files | ||
namespace: openstack | ||
type: Opaque |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,17 @@ | ||
--- | ||
apiVersion: dataplane.openstack.org/v1beta1 | ||
kind: OpenStackDataPlaneNodeSet | ||
metadata: | ||
name: openstack-edpm | ||
spec: | ||
nodeTemplate: | ||
extraMounts: | ||
- extraVolType: Ceph | ||
mounts: | ||
- mountPath: /etc/ceph | ||
name: ceph | ||
readOnly: true | ||
volumes: | ||
- name: ceph | ||
secret: | ||
secretName: ceph-conf-files |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,263 @@ | ||
--- | ||
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/control-plane | ||
- ../../../../lib/dataplane/nodeset | ||
|
||
resources: | ||
- ceph_secret.yaml | ||
- nova_ceph.yaml | ||
|
||
patches: | ||
- target: | ||
kind: OpenStackDataPlaneNodeSet | ||
name: .* | ||
path: extra_mounts.yaml | ||
|
||
replacements: | ||
- source: | ||
kind: ConfigMap | ||
name: edpm-nodeset-values-post-ceph | ||
fieldPath: data.nodeset_name | ||
targets: | ||
- select: | ||
kind: OpenStackDataPlaneNodeSet | ||
fieldPaths: | ||
- metadata.name | ||
options: | ||
create: true | ||
|
||
# Control plane custom service configs | ||
- source: | ||
kind: ConfigMap | ||
name: service-values | ||
fieldPath: data.nova.customServiceConfig | ||
targets: | ||
- select: | ||
kind: OpenStackControlPlane | ||
fieldPaths: | ||
- spec.nova.template.apiServiceTemplate.customServiceConfig | ||
options: | ||
create: true | ||
- source: | ||
kind: ConfigMap | ||
name: service-values | ||
fieldPath: data.neutron.template.customServiceConfig | ||
targets: | ||
- select: | ||
kind: OpenStackControlPlane | ||
fieldPaths: | ||
- spec.neutron.template.customServiceConfig | ||
options: | ||
create: true | ||
- source: | ||
kind: ConfigMap | ||
name: service-values | ||
fieldPath: data.cinderBackup.customServiceConfig | ||
targets: | ||
- select: | ||
kind: OpenStackControlPlane | ||
fieldPaths: | ||
- spec.cinder.template.cinderBackup.customServiceConfig | ||
options: | ||
create: true | ||
- source: | ||
kind: ConfigMap | ||
name: service-values | ||
fieldPath: data.cinderVolumes | ||
targets: | ||
- select: | ||
kind: OpenStackControlPlane | ||
fieldPaths: | ||
- spec.cinder.template.cinderVolumes | ||
options: | ||
create: true | ||
- source: | ||
kind: ConfigMap | ||
name: service-values | ||
fieldPath: data.cinderAPI.replicas | ||
targets: | ||
- select: | ||
kind: OpenStackControlPlane | ||
fieldPaths: | ||
- spec.cinder.template.cinderAPI.replicas | ||
options: | ||
create: true | ||
- source: | ||
kind: ConfigMap | ||
name: service-values | ||
fieldPath: data.cinderAPI.customServiceConfig | ||
targets: | ||
- select: | ||
kind: OpenStackControlPlane | ||
fieldPaths: | ||
- spec.cinder.template.cinderAPI.customServiceConfig | ||
options: | ||
create: true | ||
- source: | ||
kind: ConfigMap | ||
name: service-values | ||
fieldPath: data.cinderBackup.replicas | ||
targets: | ||
- select: | ||
kind: OpenStackControlPlane | ||
fieldPaths: | ||
- spec.cinder.template.cinderBackup.replicas | ||
options: | ||
create: true | ||
- source: | ||
kind: ConfigMap | ||
name: service-values | ||
fieldPath: data.glance.customServiceConfig | ||
targets: | ||
- select: | ||
kind: OpenStackControlPlane | ||
fieldPaths: | ||
- spec.glance.template.customServiceConfig | ||
options: | ||
create: true | ||
- source: | ||
kind: ConfigMap | ||
name: service-values | ||
fieldPath: data.glance.glanceAPIs | ||
targets: | ||
- select: | ||
kind: OpenStackControlPlane | ||
fieldPaths: | ||
- spec.glance.template.glanceAPIs | ||
options: | ||
create: true | ||
- source: | ||
kind: ConfigMap | ||
name: service-values | ||
fieldPath: data.manila.enabled | ||
targets: | ||
- select: | ||
kind: OpenStackControlPlane | ||
fieldPaths: | ||
- spec.manila.enabled | ||
options: | ||
create: true | ||
- source: | ||
kind: ConfigMap | ||
name: service-values | ||
fieldPath: data.manila.manilaAPI.customServiceConfig | ||
targets: | ||
- select: | ||
kind: OpenStackControlPlane | ||
fieldPaths: | ||
- spec.manila.template.manilaAPI.customServiceConfig | ||
options: | ||
create: true | ||
- source: | ||
kind: ConfigMap | ||
name: service-values | ||
fieldPath: data.manila.manilaShares.share1.customServiceConfig | ||
targets: | ||
- select: | ||
kind: OpenStackControlPlane | ||
fieldPaths: | ||
- spec.manila.template.manilaShares.share1.customServiceConfig | ||
options: | ||
create: true | ||
- source: | ||
kind: ConfigMap | ||
name: service-values | ||
fieldPath: data.extraMounts | ||
targets: | ||
- select: | ||
kind: OpenStackControlPlane | ||
fieldPaths: | ||
- spec.extraMounts | ||
options: | ||
create: true | ||
# Ceph keyring | ||
- source: | ||
kind: ConfigMap | ||
name: edpm-nodeset-values-post-ceph | ||
fieldPath: data.ceph_conf | ||
targets: | ||
- select: | ||
kind: Secret | ||
name: ceph-conf-files | ||
fieldPaths: | ||
- data | ||
options: | ||
create: true | ||
# Nova Ceph conf | ||
- source: | ||
kind: ConfigMap | ||
name: edpm-nodeset-values-post-ceph | ||
fieldPath: data.nova.ceph.conf | ||
targets: | ||
- select: | ||
kind: ConfigMap | ||
name: ceph-nova | ||
fieldPaths: | ||
- data.03-ceph-nova\.conf | ||
options: | ||
create: true | ||
- source: | ||
kind: ConfigMap | ||
name: edpm-nodeset-values-post-ceph | ||
fieldPath: data.nova.name | ||
targets: | ||
- select: | ||
kind: ConfigMap | ||
name: ceph-nova | ||
fieldPaths: | ||
- metadata.name | ||
options: | ||
create: true | ||
- source: | ||
kind: ConfigMap | ||
name: edpm-nodeset-values-post-ceph | ||
fieldPath: data.nova.dataSources | ||
targets: | ||
- select: | ||
kind: OpenStackDataPlaneService | ||
fieldPaths: | ||
- spec.dataSources | ||
options: | ||
create: true | ||
# Dataplane services override (overrides ../../../lib/dataplane which | ||
# is using edpm-nodeset-values ConfigMap) | ||
- source: | ||
kind: ConfigMap | ||
name: edpm-nodeset-values-post-ceph | ||
fieldPath: data.nodeset.services | ||
targets: | ||
- select: | ||
kind: OpenStackDataPlaneNodeSet | ||
fieldPaths: | ||
- spec.services | ||
options: | ||
create: true | ||
- source: | ||
kind: ConfigMap | ||
name: edpm-nodeset-values-post-ceph | ||
fieldPath: data.customDataplanService.name | ||
targets: | ||
- select: | ||
kind: OpenStackDataPlaneService | ||
fieldPaths: | ||
- metadata.name | ||
options: | ||
create: true |
Oops, something went wrong.