Add an option to disable HAproxy load ballancing

Bug #1827356 reported by Tytus Kurek
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Charm Helpers
Won't Fix
Undecided
Unassigned
OpenStack Swift Proxy Charm
Won't Fix
Undecided
Unassigned
charms.openstack
New
Undecided
Unassigned

Bug Description

At the moment the hacluster charm manages 3 principal services: corosync, pacemaker and haproxy. While the first two are used for HA purposes, the other one is used for LB. As there are currently no existing supported charms for corosync / pacemaker only, it would be good to have an option to disjoint the HA and LB functions.

This requirement comes from a recent experience with a large Swift cluster. It has been observed that Swift Proxy does not cooperate very well with the HAproxy, causing significant performance degradation when creating millions of containers / objects in parallel. Switching HAproxy into single-node mode solves the issue.

Thus, I would like to add an additional option ('enable-load-balancing') to the hacluster charm. This option would be set to 'True' by default, but could be switched to 'False' allowing HAproxy single-node mode. Such an approach would allow us to stay with the unified design across all OpenStack services, while achieving required performance results for the Swift Proxy.

I can elaborate more if needed.

Tytus Kurek (tkurek)
Changed in charm-hacluster:
assignee: nobody → Tytus Kurek (tkurek)
Tytus Kurek (tkurek)
tags: removed: field-medium
Tytus Kurek (tkurek)
Changed in charm-helpers:
assignee: nobody → Tytus Kurek (tkurek)
Changed in layer-openstack:
assignee: nobody → Tytus Kurek (tkurek)
Tytus Kurek (tkurek)
no longer affects: layer-openstack
Changed in charms.openstack:
assignee: nobody → Tytus Kurek (tkurek)
Tytus Kurek (tkurek)
Changed in charms.openstack:
assignee: Tytus Kurek (tkurek) → nobody
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to charm-hacluster (master)

Fix proposed to branch: master
Review: https://review.opendev.org/657786

Changed in charm-hacluster:
status: New → In Progress
Revision history for this message
Tytus Kurek (tkurek) wrote :
Changed in charm-helpers:
status: New → In Progress
Revision history for this message
Tytus Kurek (tkurek) wrote :

TBH, I am not happy with the quality of the patches I created, so any feedback from the community would be much appreciated.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Change abandoned on charm-hacluster (master)

Change abandoned by Tytus Kurek (<email address hidden>) on branch: master
Review: https://review.opendev.org/657786
Reason: Abandoning as per the discussion.

Tytus Kurek (tkurek)
affects: charm-hacluster → charm-swift-proxy
Revision history for this message
Tytus Kurek (tkurek) wrote :

A new PR opened as agreed offline with Alex:

https://github.com/juju/charm-helpers/pull/331

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to charm-swift-proxy (master)

Fix proposed to branch: master
Review: https://review.opendev.org/662218

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Change abandoned on charm-swift-proxy (master)

Change abandoned by "Alex Kavanagh <email address hidden>" on branch: master
Review: https://review.opendev.org/c/openstack/charm-swift-proxy/+/662218
Reason: Abandoning as it's laid vacant for too long; it may be re-opened if the issue still exists.

Revision history for this message
Alex Kavanagh (ajkavanagh) wrote :

Currently marking as 'won't fix' as, although some work was done on it, the patch has effectively been abandoned. It may be re-opened if there is still an issue and it needs resolving.

Changed in charm-swift-proxy:
assignee: Tytus Kurek (tkurek) → nobody
Changed in charm-helpers:
assignee: Tytus Kurek (tkurek) → nobody
status: In Progress → Won't Fix
Changed in charm-swift-proxy:
status: In Progress → Won't Fix
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.