|
3 | 3 | The Stackable platform consists of multiple operators that work together.
|
4 | 4 | Periodically a platform release is made, including all components of the platform at a specific version.
|
5 | 5 |
|
| 6 | +== Release 22.09 |
| 7 | +This is our second release of the Stackable Data Platform. |
| 8 | +It contains lots of new features and bugfixes. |
| 9 | +The main features focus on OpenShift support and security. |
| 10 | + |
| 11 | +=== New platform features |
| 12 | +The following new major platform features were added: |
| 13 | + |
| 14 | +OpenShift compatibility:: |
| 15 | +We have made continued progress towards OpenShift compability, and the following operators can now be previewed on OpenShift. |
| 16 | +Further improvements are expected in future releases, but no stability or compatibility guarantees are currently made for OpenShift clusters. |
| 17 | + |
| 18 | +* https://github.com/stackabletech/airflow-operator/pull/127[Apache Airflow] |
| 19 | +* https://github.com/stackabletech/hbase-operator/pull/232[Apache HBase] |
| 20 | +* https://github.com/stackabletech/hdfs-operator/pull/225[Apache HDFS] |
| 21 | +* https://github.com/stackabletech/spark-k8s-operator/pull/126[Apache Spark on K8s] |
| 22 | + |
| 23 | +Support for internal and external TLS:: |
| 24 | +The following operators support operating the products at a maximal level of transport security by using TLS certificates to secure internal and external communication: |
| 25 | + |
| 26 | +* https://github.com/stackabletech/trino-operator/pull/244[Trino] |
| 27 | +* https://github.com/stackabletech/kafka-operator/pull/442[Apache Kafka] |
| 28 | +* https://github.com/stackabletech/zookeeper-operator/pull/479[Apache ZooKeeper] |
| 29 | + |
| 30 | +LDAP authentication:: |
| 31 | +Use a central LDAP server to manage all of your user identities in a single place. |
| 32 | +The following operators added support for LDAP authentication: |
| 33 | + |
| 34 | +* https://github.com/stackabletech/airflow-operator/pull/133[Apache Airflow] |
| 35 | +* https://github.com/stackabletech/nifi-operator/pull/303[Apache NiFi] |
| 36 | +* https://github.com/stackabletech/superset-operator/pull/180[Apache Superset] |
| 37 | + |
| 38 | +=== stackablectl |
| 39 | + |
| 40 | +`stackablectl` now supports deploying ready-to-use demos, which give an end-to-end demonstration of the usage of the Stackable Data Platform. |
| 41 | +The xref:stackablectl::quickstart.adoc[quickstart guide] shows how to get started with `stackablectl`. Here you can see the xref:stackablectl::demos/index.adoc[available demos]. |
| 42 | + |
| 43 | +=== Supported Kubernetes versions |
| 44 | +This release supports the following Kubernetes versions: |
| 45 | + |
| 46 | +* `1.24` |
| 47 | +* `1.23` |
| 48 | +* `1.22` |
| 49 | + |
| 50 | +Support for `1.21` was dropped. |
| 51 | + |
| 52 | +=== Upgrade from 22.06 |
| 53 | +==== Using stackablectl |
| 54 | +You can list the available releases as follows |
| 55 | + |
| 56 | +[source,console] |
| 57 | +---- |
| 58 | +$ stackablectl release list |
| 59 | +RELEASE RELEASE DATE DESCRIPTION |
| 60 | +22.09 2022-09-09 Second release focusing on security and OpenShift support |
| 61 | +22.06 2022-06-30 First official release of the Stackable Data Platform |
| 62 | +---- |
| 63 | + |
| 64 | +To uninstall the `22.06` release run |
| 65 | + |
| 66 | +[source,console] |
| 67 | +---- |
| 68 | +$ stackablectl release uninstall 22.06 |
| 69 | +[INFO ] Uninstalling release 22.06 |
| 70 | +[INFO ] Uninstalling airflow operator |
| 71 | +[INFO ] Uninstalling commons operator |
| 72 | +# ... |
| 73 | +---- |
| 74 | + |
| 75 | +Afterwards you will need to update the CustomResourceDefinitions (CRDs) installed by the Stackable Platform. |
| 76 | +The reason is, that helm will uninstall the operators but not the CRDs. |
| 77 | + |
| 78 | +[source,console] |
| 79 | +---- |
| 80 | +$ kubectl apply -f https://raw.githubusercontent.com/stackabletech/airflow-operator/0.5.0/deploy/helm/airflow-operator/crds/crds.yaml |
| 81 | +$ kubectl apply -f https://raw.githubusercontent.com/stackabletech/commons-operator/0.3.0/deploy/helm/commons-operator/crds/crds.yaml |
| 82 | +$ kubectl apply -f https://raw.githubusercontent.com/stackabletech/druid-operator/0.7.0/deploy/helm/druid-operator/crds/crds.yaml |
| 83 | +$ kubectl apply -f https://raw.githubusercontent.com/stackabletech/hbase-operator/0.4.0/deploy/helm/hbase-operator/crds/crds.yaml |
| 84 | +$ kubectl apply -f https://raw.githubusercontent.com/stackabletech/hdfs-operator/0.5.0/deploy/helm/hdfs-operator/crds/crds.yaml |
| 85 | +$ kubectl apply -f https://raw.githubusercontent.com/stackabletech/hive-operator/0.7.0/deploy/helm/hive-operator/crds/crds.yaml |
| 86 | +$ kubectl apply -f https://raw.githubusercontent.com/stackabletech/kafka-operator/0.7.0/deploy/helm/kafka-operator/crds/crds.yaml |
| 87 | +$ kubectl apply -f https://raw.githubusercontent.com/stackabletech/nifi-operator/0.7.0/deploy/helm/nifi-operator/crds/crds.yaml |
| 88 | +$ kubectl apply -f https://raw.githubusercontent.com/stackabletech/opa-operator/0.10.0/deploy/helm/opa-operator/crds/crds.yaml |
| 89 | +$ kubectl apply -f https://raw.githubusercontent.com/stackabletech/secret-operator/0.5.0/deploy/helm/secret-operator/crds/crds.yaml |
| 90 | +$ kubectl apply -f https://raw.githubusercontent.com/stackabletech/spark-k8s-operator/0.5.0/deploy/helm/spark-k8s-operator/crds/crds.yaml |
| 91 | +$ kubectl apply -f https://raw.githubusercontent.com/stackabletech/superset-operator/0.6.0/deploy/helm/superset-operator/crds/crds.yaml |
| 92 | +$ kubectl apply -f https://raw.githubusercontent.com/stackabletech/trino-operator/0.6.0/deploy/helm/trino-operator/crds/crds.yaml |
| 93 | +$ kubectl apply -f https://raw.githubusercontent.com/stackabletech/zookeeper-operator/0.11.0/deploy/helm/zookeeper-operator/crds/crds.yaml |
| 94 | +---- |
| 95 | + |
| 96 | +To install the `22.09` release run |
| 97 | + |
| 98 | +[source,console] |
| 99 | +---- |
| 100 | +$ stackablectl release install 22.09 |
| 101 | +[INFO ] Installing release 22.09 |
| 102 | +[INFO ] Installing airflow operator in version 0.5.0 |
| 103 | +[INFO ] Installing commons operator in version 0.3.0 |
| 104 | +[INFO ] Installing druid operator in version 0.7.0 |
| 105 | +[INFO ] Installing hbase operator in version 0.4.0 |
| 106 | +[INFO ] Installing hdfs operator in version 0.5.0 |
| 107 | +[INFO ] Installing hive operator in version 0.7.0 |
| 108 | +[INFO ] Installing kafka operator in version 0.7.0 |
| 109 | +[INFO ] Installing nifi operator in version 0.7.0 |
| 110 | +[INFO ] Installing opa operator in version 0.10.0 |
| 111 | +[INFO ] Installing secret operator in version 0.5.0 |
| 112 | +[INFO ] Installing spark-k8s operator in version 0.5.0 |
| 113 | +[INFO ] Installing superset operator in version 0.6.0 |
| 114 | +[INFO ] Installing trino operator in version 0.6.0 |
| 115 | +[INFO ] Installing zookeeper operator in version 0.11.0 |
| 116 | +# ... |
| 117 | +---- |
| 118 | + |
| 119 | +==== Using helm |
| 120 | +Use `helm list` to list the currently installed operators. |
| 121 | + |
| 122 | +You can use the following command to install all of the operators that are part of the release 22.06: |
| 123 | + |
| 124 | +[source,console] |
| 125 | +---- |
| 126 | +$ helm uninstall airflow-operator commons-operator druid-operator hbase-operator hdfs-operator hive-operator kafka-operator nifi-operator opa-operator secret-operator spark-k8s-operator superset-operator trino-operator zookeeper-operator |
| 127 | +release "airflow-operator" uninstalled |
| 128 | +release "commons-operator" uninstalled |
| 129 | +# ... |
| 130 | +---- |
| 131 | + |
| 132 | +Afterwards you will need to update the CustomResourceDefinitions (CRDs) installed by the Stackable Platform. |
| 133 | +The reason is, that helm will uninstall the operators but not the CRDs. |
| 134 | + |
| 135 | +[source,console] |
| 136 | +---- |
| 137 | +$ kubectl apply \ |
| 138 | + -f https://raw.githubusercontent.com/stackabletech/airflow-operator/0.5.0/deploy/helm/airflow-operator/crds/crds.yaml \ |
| 139 | + -f https://raw.githubusercontent.com/stackabletech/commons-operator/0.3.0/deploy/helm/commons-operator/crds/crds.yaml \ |
| 140 | + -f https://raw.githubusercontent.com/stackabletech/druid-operator/0.7.0/deploy/helm/druid-operator/crds/crds.yaml \ |
| 141 | + -f https://raw.githubusercontent.com/stackabletech/hbase-operator/0.4.0/deploy/helm/hbase-operator/crds/crds.yaml \ |
| 142 | + -f https://raw.githubusercontent.com/stackabletech/hdfs-operator/0.5.0/deploy/helm/hdfs-operator/crds/crds.yaml \ |
| 143 | + -f https://raw.githubusercontent.com/stackabletech/hive-operator/0.7.0/deploy/helm/hive-operator/crds/crds.yaml \ |
| 144 | + -f https://raw.githubusercontent.com/stackabletech/kafka-operator/0.7.0/deploy/helm/kafka-operator/crds/crds.yaml \ |
| 145 | + -f https://raw.githubusercontent.com/stackabletech/nifi-operator/0.7.0/deploy/helm/nifi-operator/crds/crds.yaml \ |
| 146 | + -f https://raw.githubusercontent.com/stackabletech/opa-operator/0.10.0/deploy/helm/opa-operator/crds/crds.yaml \ |
| 147 | + -f https://raw.githubusercontent.com/stackabletech/secret-operator/0.5.0/deploy/helm/secret-operator/crds/crds.yaml \ |
| 148 | + -f https://raw.githubusercontent.com/stackabletech/spark-k8s-operator/0.5.0/deploy/helm/spark-k8s-operator/crds/crds.yaml \ |
| 149 | + -f https://raw.githubusercontent.com/stackabletech/superset-operator/0.6.0/deploy/helm/superset-operator/crds/crds.yaml \ |
| 150 | + -f https://raw.githubusercontent.com/stackabletech/trino-operator/0.6.0/deploy/helm/trino-operator/crds/crds.yaml \ |
| 151 | + -f https://raw.githubusercontent.com/stackabletech/zookeeper-operator/0.11.0/deploy/helm/zookeeper-operator/crds/crds.yaml |
| 152 | +---- |
| 153 | + |
| 154 | +To install the release 22.09 run |
| 155 | + |
| 156 | +[source,console] |
| 157 | +---- |
| 158 | +$ helm repo add stackable https://repo.stackable.tech/repository/helm-stable/ |
| 159 | +$ helm repo update stackable |
| 160 | +$ helm install --wait airflow-operator stackable/airflow-operator --version 0.5.0 |
| 161 | +$ helm install --wait commons-operator stackable/commons-operator --version 0.3.0 |
| 162 | +$ helm install --wait druid-operator stackable/druid-operator --version 0.7.0 |
| 163 | +$ helm install --wait hbase-operator stackable/hbase-operator --version 0.4.0 |
| 164 | +$ helm install --wait hdfs-operator stackable/hdfs-operator --version 0.5.0 |
| 165 | +$ helm install --wait hive-operator stackable/hive-operator --version 0.7.0 |
| 166 | +$ helm install --wait kafka-operator stackable/kafka-operator --version 0.7.0 |
| 167 | +$ helm install --wait nifi-operator stackable/nifi-operator --version 0.7.0 |
| 168 | +$ helm install --wait opa-operator stackable/opa-operator --version 0.10.0 |
| 169 | +$ helm install --wait secret-operator stackable/secret-operator --version 0.5.0 |
| 170 | +$ helm install --wait spark-k8s-operator stackable/spark-k8s-operator --version 0.5.0 |
| 171 | +$ helm install --wait superset-operator stackable/superset-operator --version 0.6.0 |
| 172 | +$ helm install --wait trino-operator stackable/trino-operator --version 0.6.0 |
| 173 | +$ helm install --wait zookeeper-operator stackable/zookeeper-operator --version 0.11.0 |
| 174 | +---- |
| 175 | + |
| 176 | +==== Breaking changes |
| 177 | + |
| 178 | +You will need to adapt your existing CRDs to the following breaking changes: |
| 179 | + |
| 180 | +==== druid-operator |
| 181 | +1. HDFS deep storage is now configurable via the HDFS discovery config map instead of a url to a HDFS name node (https://github.com/stackabletech/druid-operator/pull/262[#262]). |
| 182 | +Instead of |
| 183 | + |
| 184 | +[source,yaml] |
| 185 | +---- |
| 186 | + deepStorage: |
| 187 | + hdfs: |
| 188 | + storageDirectory: hdfs://druid-hdfs-namenode-default-0:8020/data |
| 189 | +---- |
| 190 | + |
| 191 | +use |
| 192 | + |
| 193 | +[source,yaml] |
| 194 | +---- |
| 195 | + deepStorage: |
| 196 | + hdfs: |
| 197 | + configMapName: druid-hdfs |
| 198 | + directory: /druid |
| 199 | +---- |
| 200 | + |
| 201 | +==== kafka-operator |
| 202 | +1. Add TLS encryption and authentication support for internal and client communications. This is breaking for clients because the cluster is secured per default, which results in a client port change (https://github.com/stackabletech/kafka-operator/pull/442[#442]). |
| 203 | +If you don't want to use TLS to secure your Kafka cluster you can restore the old behavior by using the `tls` attribute as follows: |
| 204 | + |
| 205 | +[source,yaml] |
| 206 | +---- |
| 207 | +apiVersion: kafka.stackable.tech/v1alpha1 |
| 208 | +kind: KafkaCluster |
| 209 | +# ... |
| 210 | +spec: |
| 211 | + config: |
| 212 | + tls: null |
| 213 | + # ... |
| 214 | +---- |
| 215 | + |
| 216 | +==== trino-operator |
| 217 | +1. TrinoCatalogs now have their own CRD object and get referenced by the TrinoCluster (https://github.com/stackabletech/trino-operator/pull/263[#263]). |
| 218 | +Instead of |
| 219 | + |
| 220 | +[source,yaml] |
| 221 | +---- |
| 222 | +apiVersion: trino.stackable.tech/v1alpha1 |
| 223 | +kind: TrinoCluster |
| 224 | +# ... |
| 225 | +spec: |
| 226 | + hiveConfigMapName: hive |
| 227 | + s3: |
| 228 | + inline: |
| 229 | + host: minio |
| 230 | + port: 9000 |
| 231 | + accessStyle: Path |
| 232 | + credentials: |
| 233 | + secretClass: s3-credentials |
| 234 | + # ... |
| 235 | +---- |
| 236 | + |
| 237 | +use |
| 238 | + |
| 239 | +[source,yaml] |
| 240 | +---- |
| 241 | +apiVersion: trino.stackable.tech/v1alpha1 |
| 242 | +kind: TrinoCluster |
| 243 | +# ... |
| 244 | +spec: |
| 245 | + catalogLabelSelector: |
| 246 | + trino: trino |
| 247 | + # ... |
| 248 | +--- |
| 249 | +apiVersion: trino.stackable.tech/v1alpha1 |
| 250 | +kind: TrinoCatalog |
| 251 | +metadata: |
| 252 | + name: hive |
| 253 | + labels: |
| 254 | + trino: trino |
| 255 | +spec: |
| 256 | + connector: |
| 257 | + hive: |
| 258 | + metastore: |
| 259 | + configMap: hive |
| 260 | + s3: |
| 261 | + inline: |
| 262 | + host: minio |
| 263 | + port: 9000 |
| 264 | + accessStyle: Path |
| 265 | + credentials: |
| 266 | + secretClass: s3-credentials |
| 267 | +---- |
6 | 268 |
|
7 | 269 | == Release 22.06
|
8 | 270 |
|
@@ -98,3 +360,9 @@ Read up on the xref:operators:supported_versions.adoc[supported versions] for ea
|
98 | 360 | * xref:commons-operator::index.adoc[] (0.2.0)
|
99 | 361 | * xref:secret-operator::index.adoc[] (0.5.0)
|
100 | 362 |
|
| 363 | +=== Supported Kubernetes versions |
| 364 | +This release supports the following Kubernetes versions: |
| 365 | + |
| 366 | +* `1.23` |
| 367 | +* `1.22` |
| 368 | +* `1.21` |
0 commit comments