Add fence_aws fencing from v4.6.0 agent to Bionic
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
fence-agents (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | ||
Bionic |
Fix Released
|
Wishlist
|
Unassigned | ||
Focal |
Won't Fix
|
Wishlist
|
Unassigned |
Bug Description
SRU reviewer: I got a complex backport for Focal thinking about introducing a better version of fence_aws in Bionic but I abandoned the idea and created a simple 1 patch fence_aws backport to Bionic (so it is like Focal, and not both be like Groovy).
[Impact]
* Currently Ubuntu Bionic does not have fence_aws available and that is needed in order to have a fully working HA solution in AWS environment.
* fence_aws from Focal fence-agents (4.5.2-1) is missing some fixes that happened in between Focal and Groovy versions. With that, I initially opted to fully bring all the fixes from version 4.6.0 to Focal and backport this same version to Bionic (this way Bionic and Focal were in the same level).
* After MR reviews, thinking about the SRU review, I agreed to minimize this change making Ubuntu Bionic fence_aws agent just like focal and working in any needed Focal fix for fence_aws (as long as there was a test case for it).
[Test Case]
* Provision 3 nodes in AWS with Ubuntu Focal (and Ubuntu Bionic) and configure it adding the following primitive as a fencing resource:
primitive fence-focal stonith:fence_aws params access_key="xxxx" secret_key="yyyy"
region="us-east-1" pcmk_host_
and the cluster cib options:
property cib-bootstrap-
have-
cluster-
stonith-
stonith-
no-
cluster-
* After that you can remove the interconnect of one of the nodes and watch the cluster to shutdown the node that was disconnected from the cluster ring.
[Regression Potential]
* Bionic wise:
- Same as focal, but here it is even better situation as there isn't an existing fence_aws agent. Biggest problem here could be introduce something that does not fully work (which is technically not a regression).
[Other Info]
This is a request from AWS to backport existing fence_aws agent into Bionic
Currently fence-agents Ubuntu Bionic version is at:
4.0.25-2ubuntu1
and the fence_aws new agent started at:
$ git tag --contains a3f45322 | head -1
v4.1.0
Related branches
- Bryce Harrington: Pending requested
- Canonical Server Core Reviewers: Pending requested
- Rafael David Tinoco: Pending requested
- Canonical Server: Pending requested
-
Diff: 960 lines (+883/-1)10 files modifieddebian/changelog (+15/-0)
debian/control (+4/-1)
debian/patches/series (+10/-0)
debian/patches/v4.6.0-backport/lp1894323-01-fence_aws-new-agent.patch (+286/-0)
debian/patches/v4.6.0-backport/lp1894323-02-fence_aws-improve-logging-and-metadata-usage-text.patch (+143/-0)
debian/patches/v4.6.0-backport/lp1894323-03-fence_aws-improve-connect-parameter-logic-so-region.patch (+61/-0)
debian/patches/v4.6.0-backport/lp1894323-04-fence_aws-Fix-fence-race-logging-improvement-and-new.patch (+205/-0)
debian/patches/v4.6.0-backport/lp1894323-05-fence_aws-fix-Python-3-encoding-issue.patch (+32/-0)
debian/patches/v4.6.0-backport/lp1894323-06-fence_aws-catch-ConnectionError-and-suppress-traceback.patch (+67/-0)
debian/patches/v4.6.0-backport/lp1894323-07-fence_aws-improve-boto3_debug-boolean-handling.patch (+60/-0)
- Bryce Harrington (community): Needs Fixing
- Canonical Server: Pending requested
-
Diff: 619 lines (+556/-1)9 files modifieddebian/changelog (+13/-0)
debian/control (+2/-1)
debian/patches/series (+9/-0)
debian/patches/v4.6.0-backport/lp1894323-01-fence_aws-improve-logging-and-metadata-usage-text.patch (+135/-0)
debian/patches/v4.6.0-backport/lp1894323-02-fence_aws-improve-connect-parameter-logic-so-region.patch (+53/-0)
debian/patches/v4.6.0-backport/lp1894323-03-fence_aws-Fix-fence-race-logging-improvement-and-new.patch (+199/-0)
debian/patches/v4.6.0-backport/lp1894323-04-fence_aws-fix-Python-3-encoding-issue.patch (+27/-0)
debian/patches/v4.6.0-backport/lp1894323-05-fence_aws-catch-ConnectionError-and-suppress-traceback.patch (+61/-0)
debian/patches/v4.6.0-backport/lp1894323-06-fence_aws-improve-boto3_debug-boolean-handling.patch (+57/-0)
Changed in fence-agents (Ubuntu Focal): | |
status: | New → Fix Released |
Changed in fence-agents (Ubuntu Bionic): | |
status: | New → Confirmed |
Changed in fence-agents (Ubuntu): | |
status: | New → Fix Released |
Changed in fence-agents (Ubuntu Bionic): | |
assignee: | nobody → Rafael David Tinoco (rafaeldtinoco) |
Changed in fence-agents (Ubuntu Bionic): | |
status: | Confirmed → In Progress |
Changed in fence-agents (Ubuntu Focal): | |
status: | Confirmed → In Progress |
description: | updated |
description: | updated |
description: | updated |
description: | updated |
Looks like the ONLY commit present in Ubuntu Focal and Groovy
$ for commit in $(git log --no-merges --grep fence_aws --pretty= 'format: %h'); do echo -n $(git describe $commit); echo " - " $(git tag --contains $commit | head -1) ; done 95-ga3f45322 - v4.1.0
v4.5.2-50-g50772024 - v4.6.0
v4.5.2-49-gbe206158 - v4.6.0
v4.5.2-26-g9758f8c8 - v4.6.0
v4.5.2-25-g3f5676a7 - v4.6.0
v4.5.2-21-g1c2f791b - v4.6.0
v4.5.2-12-g7ac16fb2 - v4.6.0
v4.0.25-
Okay, so here we see that Groovy should definitely, together with LP: #1889070, have a FFe for recently released v4.6.0. Then, I have to backport the fence agent fixes to Focal. Then I have to backport v4.0.25- 95-ga3f45322 AND fixes to Bionic.