F5Networks / f5-ipam-controller

The F5 IPAM Controller runs in an orchestration environment like Kubernetes to allocate IP addresses from an IPAM system to BIG-IP Virtual Servers. The purpose is to abstract complexity related to setting up BIG-IP from a networking perspective
Apache License 2.0
9 stars 16 forks source link

IPAM Helm Deployment strategy should be recreate #130

Closed braunsonm closed 1 year ago

braunsonm commented 1 year ago

Description

In the helm chart for the IPAM controller, it uses the default rolling update strategy. This is a problem for two reasons:

  1. The PVC should only be accessed by one pod at a time because multiple editing the same DB will cause issues
  2. Not all PV types support multiple binds at the same time.

Steps To Reproduce

1) Deploy IPAM with the helm chart using a storage class that only supports one bind at a time 2) Upgrade the existing deployment 3) Notice how the deployment will never complete because the new pod cannot startup as an existing one is holding the PVC

Expected Result

Upgrades should happen transparently.

Actual Result

You need to scale the deployment to 0, then back up to 1

trinaths commented 1 year ago

Created [CONTCNTR-3678] for internal tracking.

vklohiya commented 1 year ago

Closing the issue as already fixed.

braunsonm commented 1 year ago

@vklohiya why is this not the default? The current setting can cause corruption and the PVC type doesn't allow multiple read/write.