Skip to content

Commit c46cbf0

Browse files
soenkeliebaufhennig
authored andcommitted
Add notice about stackabletech/hdfs-operator#274 containing a breaking change to the release notes. (#348)
1 parent 055a63e commit c46cbf0

1 file changed

Lines changed: 48 additions & 0 deletions

File tree

modules/ROOT/pages/release_notes.adoc

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -163,6 +163,54 @@ to
163163
zookeeperConfigMapName: simple-druid-znode
164164
```
165165

166+
==== Stackable Operator for Apache Hadoop
167+
* https://github.com/stackabletech/hdfs-operator/issues/274[Support for multiple storage directories]
168+
169+
As part of the change mentioned above the naming scheme for the PersistentVolumeClaims written for DataNodes has been changed, so that PVCs written by earlier operator versions are not recognized any more.
170+
Previous PVCs were called `hdfs-datanode-default-0` but now need to have the prefix `data-` added, because otherwise there may be naming collisions due to the ability to specify multiple storage classes.
171+
172+
In order to move over existing PVCs a few migration steps are required.
173+
Since it is not possible to rename PVCs you'll need to delete the existing PVCs and recreate them with the correct name and bound to the correct backing PV.
174+
175+
Please find an example workflow of how this can be achieved below, this also sets the reclaim policy for the backing PV to `Retain` to avoid the PV being deleted when it becomes unbound, depending on your Kubernetes config this step may not be necessary.
176+
177+
[source,bash]
178+
----
179+
export PVNAME=$(kubectl get pvc hdfs-datanode-default-0 -o yaml | yq '.spec.volumeName')
180+
181+
kubectl patch pv ${PVNAME} -p '{"spec":{"persistentVolumeReclaimPolicy": "Retain"}}'
182+
183+
kubectl delete pvc hdfs-datanode-default-0
184+
185+
kubectl patch pv ${PVNAME} -p '{"spec":{"claimRef": null}}'
186+
----
187+
188+
Afterwards you can recreate the PVC with the new name and bind it to the PV.
189+
190+
Please note that you will need to adapt labels, storageClassName and resources to your specific configuration.
191+
Ideally export the pre-existing PVC with kubectl and change the name.
192+
193+
[source,yaml]
194+
----
195+
apiVersion: v1
196+
kind: PersistentVolumeClaim
197+
metadata:
198+
labels:
199+
app.kubernetes.io/component: datanode
200+
app.kubernetes.io/instance: hdfs
201+
app.kubernetes.io/name: hdfs
202+
app.kubernetes.io/role-group: default
203+
name: data-hdfs-datanode-default-0
204+
spec:
205+
accessModes:
206+
- ReadWriteOnce
207+
resources:
208+
requests:
209+
storage: 1Gi
210+
storageClassName: standard
211+
volumeMode: Filesystem
212+
volumeName: <insert PV Name here>
213+
----
166214

167215
==== Stackable Operator for Apache Hive
168216
* https://github.com/stackabletech/hive-operator/pull/292[Moved database specification from role/role-group level to top-level clusterConfig]

0 commit comments

Comments
 (0)