docs: add v3.6 to v3.7 upgrade guide#1168
Conversation
Add upgrade_3_7.md covering the v3.6 -> v3.7 upgrade: the 3.6.11+ prerequisite, the removal of all deprecated --experimental-* flags (#19959), the final v2store / client/v2 / v2discovery removal (#20109, #20117, #21263), and the Go refactoring (gogo/protobuf migration, grpc-middleware v2). Adds the new page to the upgrading-etcd index and links to the downgrade guide as a rollback option. The upgrade procedure example was captured from a real rolling upgrade of a 3-node etcd v3.6.12 cluster to v3.7.0-rc.0 on darwin/arm64. Fixes etcd-io#1165 Signed-off-by: Nick Nikolakakis <nonicked@protonmail.com>
|
[APPROVALNOTIFIER] This PR is NOT APPROVED This pull-request has been approved by: nicknikolakakis The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these files:Approvers can indicate their approval by writing |
|
Hi @nicknikolakakis. Thanks for your PR. I'm waiting for a etcd-io member to verify that this patch is reasonable to test. If it is, they should reply with Regular contributors should join the org to skip this step. Once the patch is verified, the new status will be reflected by the I understand the commands that are listed here. DetailsInstructions 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. |
|
Wow, nice! Reviewing. |
Fixes #1165
Adds
content/en/docs/v3.7/upgrades/upgrade_3_7.mdand links it fromupgrading-etcd.md.What the guide covers
Per the requirements in #1165:
alert/warningblock.--experimental-*flags removed in v3.7 (#19959) and points readers at the v3.5 to v3.6 guide for the non-experimental /--feature-gatesmapping (since each one was already deprecated in 3.6).--enable-v2,--experimental-enable-v2v3, v2 discovery,client/v2, and v2 snapshot file loading are all gone in 3.7 (#20109, #20117, #21263) and that this is a no-op for anyone coming from a clean 3.6.downgrades/downgrading-etcdas the "in case your upgrade goes badly" path.The Flags added / Flags with new defaults sections are explicitly "None" - confirmed by diffing
etcd --helpoutput between v3.6.12 and v3.7.0-rc.0.Tested
The upgrade procedure example is not synthetic. I ran a real rolling upgrade of a 3-node etcd v3.6.12 cluster to v3.7.0-rc.0 on darwin/arm64 (released v3.7.0-rc.0 binaries from the GitHub release) and captured the actual log lines,
endpoint statusoutput, and version transitions. Specifically I verified:etcdcluster: 3.6.0(lowest common protocol).Local site build
npm install && npx hugo --cleanDestinationDir -e dev -DFEbuilds cleanly. The new page renders at/docs/v3.7/upgrades/upgrade_3_7/, appears in the sidebar, and all internal links resolve (upgrade_3_6,op-guide/maintenance,downgrades/downgrading-etcd,v3.4/op-guide/v2-migration).markdownlint-cli2produces the same single MD001 finding as the existingupgrade_3_6.md, so I kept the heading structure consistent with the rest of the upgrade-guide family.