Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add NFS network for Manila to uni04delta #405

Closed
wants to merge 1 commit into from

Conversation

fultonj
Copy link
Contributor

@fultonj fultonj commented Sep 19, 2024

Manila Tempest tests need to connect to the share for Ganesha via a special (openstack) network [1].

This patch adds the NFS storage network with VLAN 24 and range 172.21.0.0/24 in uni04delta. The NFS network is connected to Ceph and Compute EDPM nodes. A NNCP, NAD, L2Advertisement and IPAddressPool are defined for the NFS network so that a pod in k8s can connect to it; such as the tempest pod which will perform the storage tests and the manilaShares pod(s).

[1] https://opendev.org/openstack/manila-tempest-plugin/src/branch/master/manila_tempest_tests/config.py#L99

Jira: https://issues.redhat.com/browse/OSPRH-7417
Depends-On: openstack-k8s-operators/ci-framework#2273

Copy link

openshift-ci bot commented Sep 19, 2024

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: fultonj

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@fultonj fultonj requested review from fmount and gouthampacha and removed request for raukadah September 19, 2024 13:43
Copy link
Contributor

Build failed (check pipeline). Post recheck (without leading slash)
to rerun all jobs. Make sure the failure cause has been resolved before
you rerun jobs.

https://softwarefactory-project.io/zuul/t/rdoproject.org/buildset/05700f08eaf04c2d843a6c49e4958aea

✔️ noop SUCCESS in 0s
✔️ rhoso-architecture-validate-bgp SUCCESS in 3m 37s
✔️ rhoso-architecture-validate-bgp_dt01 SUCCESS in 5m 06s
✔️ rhoso-architecture-validate-hci SUCCESS in 5m 12s
✔️ rhoso-architecture-validate-nfv-ovs-dpdk-sriov-hci SUCCESS in 5m 16s
✔️ rhoso-architecture-validate-osasinfra SUCCESS in 5m 10s
✔️ rhoso-architecture-validate-ovs-dpdk SUCCESS in 4m 38s
✔️ rhoso-architecture-validate-ovs-dpdk-sriov SUCCESS in 4m 44s
✔️ rhoso-architecture-validate-pidone SUCCESS in 4m 40s
✔️ rhoso-architecture-validate-sriov SUCCESS in 4m 27s
✔️ rhoso-architecture-validate-uni01alpha SUCCESS in 4m 59s
✔️ rhoso-architecture-validate-uni02beta SUCCESS in 4m 18s
rhoso-architecture-validate-uni04delta FAILURE in 4m 09s
✔️ rhoso-architecture-validate-uni04delta-ipv6 SUCCESS in 5m 09s
✔️ rhoso-architecture-validate-uni05epsilon SUCCESS in 4m 58s
✔️ rhoso-architecture-validate-uni06zeta SUCCESS in 4m 28s
✔️ rhoso-architecture-validate-uni07eta SUCCESS in 6m 17s

Copy link
Contributor

Build failed (check pipeline). Post recheck (without leading slash)
to rerun all jobs. Make sure the failure cause has been resolved before
you rerun jobs.

https://softwarefactory-project.io/zuul/t/rdoproject.org/buildset/7c4a8a62de8f4b2584ab1be5a4225065

✔️ noop SUCCESS in 0s
✔️ rhoso-architecture-validate-bgp SUCCESS in 4m 00s
✔️ rhoso-architecture-validate-bgp_dt01 SUCCESS in 4m 14s
✔️ rhoso-architecture-validate-hci SUCCESS in 4m 23s
✔️ rhoso-architecture-validate-nfv-ovs-dpdk-sriov-hci SUCCESS in 4m 12s
✔️ rhoso-architecture-validate-osasinfra SUCCESS in 4m 21s
✔️ rhoso-architecture-validate-ovs-dpdk SUCCESS in 4m 00s
✔️ rhoso-architecture-validate-ovs-dpdk-sriov SUCCESS in 4m 10s
✔️ rhoso-architecture-validate-pidone SUCCESS in 3m 54s
✔️ rhoso-architecture-validate-sriov SUCCESS in 4m 01s
✔️ rhoso-architecture-validate-uni01alpha SUCCESS in 4m 06s
✔️ rhoso-architecture-validate-uni02beta SUCCESS in 4m 00s
rhoso-architecture-validate-uni04delta FAILURE in 3m 46s
✔️ rhoso-architecture-validate-uni04delta-ipv6 SUCCESS in 4m 23s
✔️ rhoso-architecture-validate-uni05epsilon SUCCESS in 4m 33s
✔️ rhoso-architecture-validate-uni06zeta SUCCESS in 3m 57s
✔️ rhoso-architecture-validate-uni07eta SUCCESS in 4m 04s

fultonj added a commit to fultonj/ci-framework that referenced this pull request Sep 24, 2024
Manila Tempest tests need to connect to the NFS share
for Ganesha tests, and they use a special (openstack)
network for that [1].

This patch adds an NFS network with VLAN 24 and range
172.21.0.0/24 in reproducers networking-definition.yml.
It also adds a multus range for this network so that the
Tempest pod can access this network for testing. The NFS
network is added to the OCP nodes for the same reason.
The podified-multinode-hci-deployment-crc job is updated
so that tempest pod is attached to the storage network
since the storage network is the fallback network if
the NFS network is not defined in a job (the NFS network
cannot be used in this job since [2] depends on this patch).

This patch allows the RGW VIP and NFS VIP to not be the same.
The variables cifmw_cephadm_rgw_network, cifmw_cephadm_rgw_vip,
cifmw_cephadm_nfs_network and cifmw_cephadm_nfs_vip are now
used instead the shared cifmw_cephadm_vip variable.

This patch updates playbook manila_create_default_resources.yml
so that when CI for manila runs, a provider network is created.
Variables manila_provider_network_{name,vlan,start,end,range}
default to the storage network, but can be overridden to the
NFS network within a job definition.

[1] https://opendev.org/openstack/manila-tempest-plugin/src/branch/master/manila_tempest_tests/config.py#L99
[2] openstack-k8s-operators/architecture#405

Jira: https://issues.redhat.com/browse/OSPRH-7417

Signed-off-by: John Fulton <fulton@redhat.com>
fultonj added a commit to fultonj/ci-framework that referenced this pull request Sep 24, 2024
Manila Tempest tests need to connect to the NFS share
for Ganesha tests, and they use a special (openstack)
network for that [1].

This patch adds an NFS network with VLAN 24 and range
172.21.0.0/24 in reproducers networking-definition.yml.
It also adds a multus range for this network so that the
Tempest pod can access this network for testing. The NFS
network is added to the OCP nodes for the same reason.
The podified-multinode-hci-deployment-crc job is updated
so that tempest pod is attached to the storage network
since the storage network is the fallback network if
the NFS network is not defined in a job (the NFS network
cannot be used in this job since [2] depends on this patch).

This patch allows the RGW VIP and NFS VIP to not be the same.
The variables cifmw_cephadm_rgw_network, cifmw_cephadm_rgw_vip,
cifmw_cephadm_nfs_network and cifmw_cephadm_nfs_vip are now
used instead the shared cifmw_cephadm_vip variable.

This patch updates playbook manila_create_default_resources.yml
so that when CI for manila runs, a provider network is created.
Variables manila_provider_network_{name,vlan,start,end,range}
default to the storage network, but can be overridden to the
NFS network within a job definition.

[1] https://opendev.org/openstack/manila-tempest-plugin/src/branch/master/manila_tempest_tests/config.py#L99
[2] openstack-k8s-operators/architecture#405

Jira: https://issues.redhat.com/browse/OSPRH-7417

Signed-off-by: John Fulton <fulton@redhat.com>
fultonj added a commit to fultonj/ci-framework that referenced this pull request Sep 24, 2024
Manila Tempest tests need to connect to the NFS share
for Ganesha tests, and they use a special (openstack)
network for that [1].

This patch adds an NFS network with VLAN 24 and range
172.21.0.0/24 in reproducers networking-definition.yml.
It also adds a multus range for this network so that the
Tempest pod can access this network for testing. The NFS
network is added to the OCP nodes for the same reason.
The podified-multinode-hci-deployment-crc job is updated
so that tempest pod is attached to the storage network
since the storage network is the fallback network if
the NFS network is not defined in a job (the NFS network
cannot be used in this job since [2] depends on this patch).

This patch allows the RGW VIP and NFS VIP to not be the same.
The variables cifmw_cephadm_rgw_network, cifmw_cephadm_rgw_vip,
cifmw_cephadm_nfs_network and cifmw_cephadm_nfs_vip are now
used instead the shared cifmw_cephadm_vip variable.

This patch updates playbook manila_create_default_resources.yml
so that when CI for manila runs, a provider network is created.
Variables manila_provider_network_{name,vlan,start,end,range}
default to the storage network, but can be overridden to the
NFS network within a job definition.

[1] https://opendev.org/openstack/manila-tempest-plugin/src/branch/master/manila_tempest_tests/config.py#L99
[2] openstack-k8s-operators/architecture#405

Jira: https://issues.redhat.com/browse/OSPRH-7417

Signed-off-by: John Fulton <fulton@redhat.com>
fultonj added a commit to fultonj/ci-framework that referenced this pull request Sep 25, 2024
Manila Tempest tests need to connect to the NFS share
for Ganesha tests, and they use a special (openstack)
network for that [1].

This patch adds an NFS network with VLAN 24 and range
172.21.0.0/24 in reproducers networking-definition.yml.
It also adds a multus range for this network so that the
Tempest pod can access this network for testing. The NFS
network is added to the OCP nodes for the same reason.
The podified-multinode-hci-deployment-crc job is updated
so that tempest pod is attached to the storage network
since the storage network is the fallback network if
the NFS network is not defined in a job (the NFS network
cannot be used in this job since [2] depends on this patch).

This patch allows the RGW VIP and NFS VIP to not be the same.
The variables cifmw_cephadm_rgw_network, cifmw_cephadm_rgw_vip,
cifmw_cephadm_nfs_network and cifmw_cephadm_nfs_vip are now
used instead the shared cifmw_cephadm_vip variable.

This patch updates playbook manila_create_default_resources.yml
so that when CI for manila runs, a provider network is created.
Variables manila_provider_network_{name,vlan,start,end,range}
default to the storage network, but can be overridden to the
NFS network within a job definition.

[1] https://opendev.org/openstack/manila-tempest-plugin/src/branch/master/manila_tempest_tests/config.py#L99
[2] openstack-k8s-operators/architecture#405

Jira: https://issues.redhat.com/browse/OSPRH-7417

Signed-off-by: John Fulton <fulton@redhat.com>
fultonj added a commit to fultonj/ci-framework that referenced this pull request Sep 25, 2024
Manila Tempest tests need to connect to the NFS share
for Ganesha tests, and they use a special (openstack)
network for that [1].

This patch adds an NFS network with VLAN 24 and range
172.21.0.0/24 in reproducers networking-definition.yml.
It also adds a multus range for this network so that the
Tempest pod can access this network for testing. The NFS
network is added to the OCP nodes for the same reason.
The podified-multinode-hci-deployment-crc job is updated
so that tempest pod is attached to the storage network
since the storage network is the fallback network if
the NFS network is not defined in a job (the NFS network
cannot be used in this job since [2] depends on this patch).

This patch allows the RGW VIP and NFS VIP to not be the same.
The variables cifmw_cephadm_rgw_network, cifmw_cephadm_rgw_vip,
cifmw_cephadm_nfs_network and cifmw_cephadm_nfs_vip are now
used instead the shared cifmw_cephadm_vip variable.

This patch updates playbook manila_create_default_resources.yml
so that when CI for manila runs, a provider network is created.
Variables manila_provider_network_{name,vlan,start,end,range}
default to the storage network, but can be overridden to the
NFS network within a job definition.

[1] https://opendev.org/openstack/manila-tempest-plugin/src/branch/master/manila_tempest_tests/config.py#L99
[2] openstack-k8s-operators/architecture#405

Jira: https://issues.redhat.com/browse/OSPRH-7417

Signed-off-by: John Fulton <fulton@redhat.com>
fultonj added a commit to fultonj/ci-framework that referenced this pull request Sep 26, 2024
Manila Tempest tests need to connect to the NFS share
for Ganesha tests, and they use a special (openstack)
network for that [1].

This patch adds an NFS network with VLAN 24 and range
172.21.0.0/24 in reproducers networking-definition.yml.
It also adds a multus range for this network so that the
Tempest pod can access this network for testing. The NFS
network is added to the OCP nodes for the same reason.
The podified-multinode-hci-deployment-crc job is updated
so that tempest pod is attached to the storage network
since the storage network is the fallback network if
the NFS network is not defined in a job (the NFS network
cannot be used in this job since [2] depends on this patch).

This patch allows the RGW VIP and NFS VIP to not be the same.
The variables cifmw_cephadm_rgw_network, cifmw_cephadm_rgw_vip,
cifmw_cephadm_nfs_network and cifmw_cephadm_nfs_vip are now
used instead the shared cifmw_cephadm_vip variable.

This patch updates playbook manila_create_default_resources.yml
so that when CI for manila runs, a provider network is created.
Variables manila_provider_network_{name,vlan,start,end,range}
default to the storage network, but can be overridden to the
NFS network within a job definition.

[1] https://opendev.org/openstack/manila-tempest-plugin/src/branch/master/manila_tempest_tests/config.py#L99
[2] openstack-k8s-operators/architecture#405

Jira: https://issues.redhat.com/browse/OSPRH-7417

Signed-off-by: John Fulton <fulton@redhat.com>
fultonj added a commit to fultonj/ci-framework that referenced this pull request Sep 26, 2024
Manila Tempest tests need to connect to the NFS share
for Ganesha tests, and they use a special (openstack)
network for that [1].

This patch adds an NFS network with VLAN 24 and range
172.21.0.0/24 in reproducers networking-definition.yml.
It also adds a multus range for this network so that the
Tempest pod can access this network for testing. The NFS
network is added to the OCP nodes for the same reason.
The podified-multinode-hci-deployment-crc job is updated
so that tempest pod is attached to the storage network
since the storage network is the fallback network if
the NFS network is not defined in a job (the NFS network
cannot be used in this job since [2] depends on this patch).

This patch allows the RGW VIP and NFS VIP to not be the same.
The variables cifmw_cephadm_rgw_network, cifmw_cephadm_rgw_vip,
cifmw_cephadm_nfs_network and cifmw_cephadm_nfs_vip are now
used instead the shared cifmw_cephadm_vip variable.

This patch updates playbook manila_create_default_resources.yml
so that when CI for manila runs, a provider network is created.
Variables manila_provider_network_{name,vlan,start,end,range}
default to the storage network, but can be overridden to the
NFS network within a job definition.

[1] https://opendev.org/openstack/manila-tempest-plugin/src/branch/master/manila_tempest_tests/config.py#L99
[2] openstack-k8s-operators/architecture#405

Jira: https://issues.redhat.com/browse/OSPRH-7417

Signed-off-by: John Fulton <fulton@redhat.com>
@fultonj
Copy link
Contributor Author

fultonj commented Oct 2, 2024

rebase on #410

@fmount
Copy link
Contributor

fmount commented Oct 2, 2024

@fultonj rebased on top of #410 that already merged.


patches:
- target:
kind: NetConfig
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm wondering if this kustomization is run because I see:

[zuul@controller-0 ~]$ oc get openstackdataplanenodeset
NAME         STATUS   MESSAGE
ceph-nodes   False    NodeSetIPReservationReady error occurred admission webhook "vipset.kb.io" denied the request: IPSet.network.openstack.org "ceph-2" is invalid: spec.networks[2].name: Invalid value: "nfs": network nfs not in NetConfig

and NetConfig does not contain the NFS network.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I can confirm that after manually editing NetConfig adding the missing network the dataplane converged and I can see it configured in the Ceph nodes.
However, I think there are some issues as I don't see nfs among the net-attach-def and nncp on the OCP nodes.
@fultonj @abays anything obvious you see here?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I see that this is a new file added in this PR. But I also notice that we already have NetConfig patches elsewhere in the DT [1]. I think we should consolidate them into one location. Here or the original location seems fine. But also I think the patch here needs name: netconfig added to it so that it can properly find the target resource, like we were already doing with the existing patch for storagemgmt network [2].

[1]

patches:
- target:
version: v1beta1
kind: NetConfig
name: netconfig
patch: |-
- op: add
path: /spec/networks/-
value:
dnsDomain: _replaced_
name: storagemgmt
subnets:
- _replaced_
mtu: 1500
replacements:
- source:
kind: ConfigMap
name: network-values
fieldPath: data.storagemgmt.dnsDomain
targets:
- select:
kind: NetConfig
fieldPaths:
- spec.networks.[name=storagemgmt].dnsDomain
- source:
kind: ConfigMap
name: network-values
fieldPath: data.storagemgmt.mtu
targets:
- select:
kind: NetConfig
fieldPaths:
- spec.networks.[name=storagemgmt].mtu
- source:
kind: ConfigMap
name: network-values
fieldPath: data.storagemgmt.subnets
targets:
- select:
kind: NetConfig
fieldPaths:
- spec.networks.[name=storagemgmt].subnets

[2] https://github.com/openstack-k8s-operators/architecture/blob/f09f1b4ade5dc5b440d5665510bab165ae0b3e42/dt/uni04delta/kustomization.yaml#L29C1-L29C22

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@abays thanks for pointing that out.

The latest update removes dt/uni04delta/networking/netconfig/kustomization.yaml and updates dt/uni04delta/kustomization.yaml to make the patches to the network named nfs the same way they are made to the network named storagemgmt.

Manila Tempest tests need to connect to the share
for Ganesha via a special (openstack) network [1].

This patch adds the NFS storage network with VLAN
24 and range 172.21.0.0/24 in uni04delta. The NFS
network is connected to Ceph and Compute EDPM nodes.
A NNCP, NAD, L2Advertisement and IPAddressPool are
defined for the NFS network so that a pod in k8s can
connect to it; such as the tempest pod which will
perform the storage tests and the manilaShares pod(s).

[1] https://opendev.org/openstack/manila-tempest-plugin/src/branch/master/manila_tempest_tests/config.py#L99

Jira: https://issues.redhat.com/browse/OSPRH-7417
Depends-On: openstack-k8s-operators/ci-framework#2273

Signed-off-by: John Fulton <fulton@redhat.com>
@fultonj
Copy link
Contributor Author

fultonj commented Nov 27, 2024

I'll re-open this PR after https://bugs.launchpad.net/tempest/+bug/2089798 is resolved.

@fultonj fultonj closed this Nov 27, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants