Skip to content

Commit 992582e

Browse files
committed
docs(issue_template): Improve rolling HDFS upgrade instructions
1 parent 15643b5 commit 992582e

2 files changed

Lines changed: 28 additions & 26 deletions

File tree

.github/ISSUE_TEMPLATE/pre-release-upgrade-testing.md

Lines changed: 22 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ name: Pre-Release Demo Upgrade Testing
33
about: |
44
This template can be used to track the upgrade testing of demos from stable to
55
nightly leading up to the next Stackable release.
6-
title: "chore(tracking): Test demo upgrades on nightly versions for YY.M.X"
6+
title: "tracking: Test demo upgrades to nightly versions for YY.M.X"
77
labels: ['epic']
88
assignees: ''
99
---
@@ -125,34 +125,30 @@ kubectl patch hbaseclusters/hbase --type='json' -p='[{"op": "replace", "path": "
125125
# Run through the (still) nightly demo/stack instructions again.
126126
```
127127
128-
### HDFS Rolling Upgrade
128+
<details>
129+
<summary>HDFS rolling upgrade instructions</summary>
129130
130-
For demos that use HDFS, also test a rolling upgrade.
131-
See <https://docs.stackable.tech/home/nightly/hdfs/usage-guide/upgrading/>.
131+
```shell
132+
# In some cases (eg. in the end-to-end-security demo), HDFS is kerberized.
133+
# This requires these commands to be run first.
134+
# Pick "nn/..."
135+
klist -kt /stackable/kerberos/keytab
136+
kinit -kt /stackable/kerberos/keytab <PRINCIPAL_FROM_ABOVE>
132137
133-
#### Prepare the upgrade (run in an HDFS superuser container)
138+
# These commands need to be executed in a superuser environment (eg. the namenode pod)
139+
hdfs dfsadmin -rollingUpgrade prepare
140+
hdfs dfsadmin -rollingUpgrade query # repeat until "Proceed with rolling upgrade"
134141
135-
```shell
136-
hdfs dfsadmin -rollingUpgrade prepare
137-
hdfs dfsadmin -rollingUpgrade query # repeat until "Proceed with rolling upgrade"
138-
```
139-
140-
#### Patch the HdfsCluster to the new product version and wait for all pods to restart and reach Ready state
142+
# Now patch the productVersion in your regular shell
143+
kubectl patch hdfs/<CLUSTER_NAME> --type=merge \
144+
--patch '{"spec": {"image": {"productVersion": "<NEW_VERSION>"}}}'
141145
142-
```shell
143-
kubectl patch hdfs/<CLUSTER_NAME> --type=merge \
144-
--patch '{"spec": {"image": {"productVersion": "<NEW_VERSION>"}}}'
145-
```
146+
# Finalize the upgrade in the namenode pod
147+
# Needs another kinit because the container was restarted
148+
hdfs dfsadmin -rollingUpgrade finalize
146149
147-
#### Finalize the upgrade (run in an HDFS superuser container)
150+
kubectl patch hdfs/<CLUSTER_NAME> --subresource=status --type=merge \
151+
--patch '{"status": {"deployedProductVersion": "<NEW_VERSION>"}}'
152+
```
148153
149-
```shell
150-
hdfs dfsadmin -rollingUpgrade finalize
151-
```
152-
153-
#### Update the deployed product version status
154-
155-
```shell
156-
kubectl patch hdfs/<CLUSTER_NAME> --subresource=status --type=merge \
157-
--patch '{"status": {"deployedProductVersion": "<NEW_VERSION>"}}'
158-
```
154+
</details>

.markdownlint.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,3 +18,9 @@ MD013:
1818
MD024:
1919
# Only check sibling headings
2020
siblings_only: true
21+
22+
# MD033 - no-inline-html
23+
MD033:
24+
allowed_elements:
25+
- details
26+
- summary

0 commit comments

Comments
 (0)