@@ -3,7 +3,7 @@ name: Pre-Release Demo Upgrade Testing
33about : |
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"
77labels : ['epic']
88assignees : ' '
99---
@@ -125,34 +125,33 @@ 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+ For demos that use HDFS, also test a rolling upgrade.
132+ Also see < https://docs.stackable.tech/home/nightly/hdfs/usage-guide/upgrading/ >
132133
133- #### Prepare the upgrade (run in an HDFS superuser container)
134+ ``` shell
135+ # In some cases (eg. in the end-to-end-security demo), HDFS is kerberized.
136+ # This requires these commands to be run first.
137+ # Pick "nn/..."
138+ klist -kt /stackable/kerberos/keytab
139+ kinit -kt /stackable/kerberos/keytab < PRINCIPAL_FROM_ABOVE>
134140
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
141-
142- ``` shell
143- kubectl patch hdfs/< CLUSTER_NAME> --type=merge \
144- --patch ' {"spec": {"image": {"productVersion": "<NEW_VERSION>"}}}'
145- ```
141+ # These commands need to be executed in a superuser environment (eg. the namenode pod)
142+ hdfs dfsadmin -rollingUpgrade prepare
143+ hdfs dfsadmin -rollingUpgrade query # repeat until "Proceed with rolling upgrade"
146144
147- #### Finalize the upgrade (run in an HDFS superuser container)
145+ # Now patch the productVersion in your regular shell
146+ kubectl patch hdfs/< CLUSTER_NAME> --type=merge \
147+ --patch ' {"spec": {"image": {"productVersion": "<NEW_VERSION>"}}}'
148148
149- ``` shell
150- hdfs dfsadmin -rollingUpgrade finalize
151- ```
149+ # Finalize the upgrade in the namenode pod
150+ # Needs another kinit because the container was restarted
151+ hdfs dfsadmin -rollingUpgrade finalize
152152
153- #### Update the deployed product version status
153+ kubectl patch hdfs/< CLUSTER_NAME> --subresource=status --type=merge \
154+ --patch ' {"status": {"deployedProductVersion": "<NEW_VERSION>"}}'
155+ ```
154156
155- ``` shell
156- kubectl patch hdfs/< CLUSTER_NAME> --subresource=status --type=merge \
157- --patch ' {"status": {"deployedProductVersion": "<NEW_VERSION>"}}'
158- ```
157+ </details >
0 commit comments