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

Glance DCN: Remove unnecessary configuration and default to az0 #427

Conversation

fultonj
Copy link
Contributor

@fultonj fultonj commented Oct 25, 2024

  • Remove the customServiceConfig from the Glance template since it's different for each Glance API pod.
  • Remove undefined backends from enabled_backends in az1 and az2
  • Call the glance backend at AZ0 az0 instead of default.

- Remove the `customServiceConfig` from the Glance template
  since it's different for each Glance API pod.

- Remove undefined backends from `enabled_backends` in az1 and az2

- Call the glance backend at AZ0 `az0` instead of `default`.

Signed-off-by: John Fulton <[email protected]>
@fultonj
Copy link
Contributor Author

fultonj commented Oct 25, 2024

Before this change the Glance section of the OpenStackControlPlane looked like this:

   glance:
     apiOverrides:
       default:
         route:
           haproxy.router.openshift.io/timeout: 60s
     template:
       customServiceConfig: |
         [DEFAULT]
         enabled_backends = default_backend:rbd
         [glance_store]
         default_backend = default_backend
         [default_backend]
         rbd_store_ceph_conf = /etc/ceph/az0.conf
         store_description = "RBD backend"
         rbd_store_pool = images
         rbd_store_user = openstack
         rbd_thin_provisioning = True
       databaseInstance: openstack
       glanceAPIs:
         az1:
           customServiceConfig: |
             [DEFAULT]
             enabled_import_methods = [web-download,copy-image,glance-direct]
             enabled_backends = az0:rbd,az1:rbd,az2:rbd
             [glance_store]
             default_backend = az1
             [az1]
             rbd_store_ceph_conf = /etc/ceph/az1.conf
             store_description = "az1 RBD backend"
             rbd_store_pool = images
             rbd_store_user = openstack
             rbd_thin_provisioning = True
             [az0]
             rbd_store_ceph_conf = /etc/ceph/az0.conf
             store_description = "az0 RBD backend"
             rbd_store_pool = images
             rbd_store_user = openstack
             rbd_thin_provisioning = True
           networkAttachments:
           - storage
           override:
             service:
               internal:
                 metadata:
                   annotations:
                     metallb.universe.tf/address-pool: internalapi
                     metallb.universe.tf/allow-shared-ip: internalapi
                     metallb.universe.tf/loadBalancerIPs: 172.17.0.81
                 spec:
                   type: LoadBalancer
           replicas: 3
           type: edge
         az2:
           customServiceConfig: |
             [DEFAULT]
             enabled_import_methods = [web-download,copy-image,glance-direct]
             enabled_backends = az0:rbd,az1:rbd,az2:rbd
             [glance_store]
             default_backend = az2
             [az2]
             rbd_store_ceph_conf = /etc/ceph/az2.conf
             store_description = "az2 RBD backend"
             rbd_store_pool = images
             rbd_store_user = openstack
             rbd_thin_provisioning = True
             [az0]
             rbd_store_ceph_conf = /etc/ceph/az0.conf
             store_description = "az0 RBD backend"
             rbd_store_pool = images
             rbd_store_user = openstack
             rbd_thin_provisioning = True
           networkAttachments:
           - storage
           override:
             service:
               internal:
                 metadata:
                   annotations:
                     metallb.universe.tf/address-pool: internalapi
                     metallb.universe.tf/allow-shared-ip: internalapi
                     metallb.universe.tf/loadBalancerIPs: 172.17.0.82
                 spec:
                   type: LoadBalancer
           replicas: 3
           type: edge
         default:
           customServiceConfig: |
             [DEFAULT]
             enabled_import_methods = [web-download,copy-image,glance-direct]
             enabled_backends = az0:rbd,az1:rbd,az2:rbd
             [glance_store]
             default_backend = az0
             [az0]
             rbd_store_ceph_conf = /etc/ceph/az0.conf
             store_description = "az0 RBD backend"
             rbd_store_pool = images
             rbd_store_user = openstack
             rbd_thin_provisioning = True
             [az1]
             rbd_store_ceph_conf = /etc/ceph/az1.conf
             store_description = "az1 RBD backend"
             rbd_store_pool = images
             rbd_store_user = openstack
             rbd_thin_provisioning = True
             [az2]
             rbd_store_ceph_conf = /etc/ceph/az2.conf
             store_description = "az2 RBD backend"
             rbd_store_pool = images
             rbd_store_user = openstack
             rbd_thin_provisioning = True
           networkAttachments:
           - storage
           override:
             service:
               internal:
                 metadata:
                   annotations:
                     metallb.universe.tf/address-pool: internalapi
                     metallb.universe.tf/allow-shared-ip: internalapi
                     metallb.universe.tf/loadBalancerIPs: 172.17.0.80
                 spec:
                   type: LoadBalancer
           replicas: 3
           type: split
       preserveJobs: false
       storage:
         storageClass: lvms-local-storage
         storageRequest: 10G
     uniquePodNames: true

Now it looks like this:

   glance:
     apiOverrides:
       default:
         route:
           haproxy.router.openshift.io/timeout: 60s
     template:
       databaseInstance: openstack
       glanceAPIs:
         az0:
           customServiceConfig: |
             [DEFAULT]
             enabled_import_methods = [web-download,copy-image,glance-direct]
             enabled_backends = az0:rbd,az1:rbd,az2:rbd
             [glance_store]
             default_backend = az0
             [az0]
             rbd_store_ceph_conf = /etc/ceph/az0.conf
             store_description = "az0 RBD backend"
             rbd_store_pool = images
             rbd_store_user = openstack
             rbd_thin_provisioning = True
             [az1]
             rbd_store_ceph_conf = /etc/ceph/az1.conf
             store_description = "az1 RBD backend"
             rbd_store_pool = images
             rbd_store_user = openstack
             rbd_thin_provisioning = True
             [az2]
             rbd_store_ceph_conf = /etc/ceph/az2.conf
             store_description = "az2 RBD backend"
             rbd_store_pool = images
             rbd_store_user = openstack
             rbd_thin_provisioning = True
           networkAttachments:
           - storage
           override:
             service:
               internal:
                 metadata:
                   annotations:
                     metallb.universe.tf/address-pool: internalapi
                     metallb.universe.tf/allow-shared-ip: internalapi
                     metallb.universe.tf/loadBalancerIPs: 172.17.0.80
                 spec:
                   type: LoadBalancer
           replicas: 3
           type: split
         az1:
           customServiceConfig: |
             [DEFAULT]
             enabled_import_methods = [web-download,copy-image,glance-direct]
             enabled_backends = az0:rbd,az1:rbd
             [glance_store]
             default_backend = az1
             [az1]
             rbd_store_ceph_conf = /etc/ceph/az1.conf
             store_description = "az1 RBD backend"
             rbd_store_pool = images
             rbd_store_user = openstack
             rbd_thin_provisioning = True
             [az0]
             rbd_store_ceph_conf = /etc/ceph/az0.conf
             store_description = "az0 RBD backend"
             rbd_store_pool = images
             rbd_store_user = openstack
             rbd_thin_provisioning = True
           networkAttachments:
           - storage
           override:
             service:
               internal:
                 metadata:
                   annotations:
                     metallb.universe.tf/address-pool: internalapi
                     metallb.universe.tf/allow-shared-ip: internalapi
                     metallb.universe.tf/loadBalancerIPs: 172.17.0.81
                 spec:
                   type: LoadBalancer
           replicas: 3
           type: edge
         az2:
           customServiceConfig: |
             [DEFAULT]
             enabled_import_methods = [web-download,copy-image,glance-direct]
             enabled_backends = az0:rbd,az2:rbd
             [glance_store]
             default_backend = az2
             [az2]
             rbd_store_ceph_conf = /etc/ceph/az2.conf
             store_description = "az2 RBD backend"
             rbd_store_pool = images
             rbd_store_user = openstack
             rbd_thin_provisioning = True
             [az0]
             rbd_store_ceph_conf = /etc/ceph/az0.conf
             store_description = "az0 RBD backend"
             rbd_store_pool = images
             rbd_store_user = openstack
             rbd_thin_provisioning = True
           networkAttachments:
           - storage
           override:
             service:
               internal:
                 metadata:
                   annotations:
                     metallb.universe.tf/address-pool: internalapi
                     metallb.universe.tf/allow-shared-ip: internalapi
                     metallb.universe.tf/loadBalancerIPs: 172.17.0.82
                 spec:
                   type: LoadBalancer
           replicas: 3
           type: edge
       keystoneEndpoint: az0
       preserveJobs: false
       storage:
         storageClass: lvms-local-storage
         storageRequest: 10G
     uniquePodNames: true

@fultonj fultonj removed the request for review from raukadah October 25, 2024 15:25
Copy link
Contributor

@fmount fmount left a comment

Choose a reason for hiding this comment

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

/lgtm

Copy link

openshift-ci bot commented Oct 28, 2024

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: fmount, 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

@fmount
Copy link
Contributor

fmount commented Oct 28, 2024

Given we already propagate the same secret via extraMounts to GlanceAPI (the whole group) we do not need extra changes here.
Thank @fultonj for the follow up!

Copy link
Contributor

Build succeeded (gate pipeline).
https://softwarefactory-project.io/zuul/t/rdoproject.org/buildset/bfa41876ff8e4945866293760bb0e1e0

✔️ noop SUCCESS in 0s
✔️ rhoso-architecture-validate-dcn SUCCESS in 3m 24s

@softwarefactory-project-zuul softwarefactory-project-zuul bot merged commit 16541a1 into openstack-k8s-operators:main Oct 28, 2024
7 checks passed
@fultonj
Copy link
Contributor Author

fultonj commented Oct 28, 2024

/cherrypick 18.0-fr1

@openshift-cherrypick-robot

@fultonj: #427 failed to apply on top of branch "18.0-fr1":

Applying: Glance DCN: Remove unnecessary configuration and default to az0
Using index info to reconstruct a base tree...
A	dt/dcn/edpm-post-ceph/nodeset/kustomization.yaml
A	examples/dt/dcn/service-values.yaml
Falling back to patching base and 3-way merge...
Auto-merging va/hci/edpm-post-ceph/nodeset/kustomization.yaml
CONFLICT (content): Merge conflict in va/hci/edpm-post-ceph/nodeset/kustomization.yaml
CONFLICT (modify/delete): examples/dt/dcn/service-values.yaml deleted in HEAD and modified in Glance DCN: Remove unnecessary configuration and default to az0. Version Glance DCN: Remove unnecessary configuration and default to az0 of examples/dt/dcn/service-values.yaml left in tree.
error: Failed to merge in the changes.
hint: Use 'git am --show-current-patch=diff' to see the failed patch
hint: When you have resolved this problem, run "git am --continue".
hint: If you prefer to skip this patch, run "git am --skip" instead.
hint: To restore the original branch and stop patching, run "git am --abort".
hint: Disable this message with "git config advice.mergeConflict false"
Patch failed at 0001 Glance DCN: Remove unnecessary configuration and default to az0

In response to this:

/cherrypick 18.0-fr1

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@fultonj
Copy link
Contributor Author

fultonj commented Oct 28, 2024

/cherrypick 18.0-fr1

@openshift-cherrypick-robot

@fultonj: new pull request created: #428

In response to this:

/cherrypick 18.0-fr1

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

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