Skip to content

chore(tracking): Release Notes for SDP 25.7.0 #757

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 55 commits into from
Jul 24, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
55 commits
Select commit Hold shift + click to select a range
7412b28
fix(docs): Correct the release notes template
Techassi Jul 17, 2025
68a8c17
docs: Add skeleton 25.7.0 release notes
Techassi Jul 17, 2025
c39a284
chore(template): Remove taskslists from release notes PR template
Techassi Jul 17, 2025
ee874b0
chore: Update 25.3(.0) to 25.7(.0) on getting-started page
Techassi Jul 17, 2025
db24d23
chore: Put sentences on single lines on getting-started page
Techassi Jul 17, 2025
2e7975d
fix(template): Correct the issue and PR search links
Techassi Jul 17, 2025
0c23bce
docs: Add initial set of new platform features
Techassi Jul 17, 2025
dc2969e
docs: Add initial set of platform improvements
Techassi Jul 17, 2025
9bfcce5
docs: Add new, deprecated and removed product versions
Techassi Jul 17, 2025
6f0eaae
docs: Add (un)supported Kubernetes and OpenShift versions
Techassi Jul 17, 2025
1467aee
docs: Add OCI registry note
Techassi Jul 18, 2025
d3c9b6a
docs: Add adjusted commands for the secret-operator CRD
Techassi Jul 18, 2025
7276551
docs: Add initial set of known issues
Techassi Jul 18, 2025
d977169
docs: Add breaking changes section
Techassi Jul 18, 2025
536b0c9
chore(template): Adjust punctuation
Techassi Jul 18, 2025
fe83f2b
docs: Add Airflow improvement
Techassi Jul 18, 2025
e27d3b2
docs: Combine breaking changes, deprecations and removals
Techassi Jul 18, 2025
a868972
docs: Group supported product, Kubernetes and OpenShift versions
Techassi Jul 18, 2025
fcff2a3
docs: Add note about stackablectl
Techassi Jul 18, 2025
560a325
chore: Add comment about spelling of core operators
Techassi Jul 18, 2025
0489fce
docs: Add a few missing changes
Techassi Jul 18, 2025
baf5e10
docs: Add HBase listener changes
Techassi Jul 18, 2025
ad89318
chore: Fix indentation in list
Techassi Jul 18, 2025
601321c
docs: Add RBAC permission change
Techassi Jul 21, 2025
52968c1
noop
Techassi Jul 21, 2025
22a2960
fix(docs): Use correct indentation
Techassi Jul 21, 2025
2b236b4
chore: Remove superfluous list item
Techassi Jul 21, 2025
bb2ca65
chore: Restructure platform improvement sections
Techassi Jul 22, 2025
3927d1d
docs: Mention included source code in images
Techassi Jul 22, 2025
c7bac8e
docs: Mention user-info-fetcher AD backend filtering
Techassi Jul 22, 2025
fe83b02
docs: Mention Apache Hadoop OpenSSL fixes
Techassi Jul 22, 2025
d555ccc
docs: Add Hive 3 deprecation
Techassi Jul 22, 2025
93966ca
docs: Adjust Hive 3 deprecation section
Techassi Jul 22, 2025
f64ce8a
docs: Mention the addition of missing properties in Druid middleManager
Techassi Jul 23, 2025
bf461c0
chore: Prepare ref to stackablectl release notes
Techassi Jul 23, 2025
5f035ad
docs: Add Druid and NiFi listener changes
Techassi Jul 24, 2025
65f3317
chore: Apply suggestions
Techassi Jul 24, 2025
ff2f13a
mention bouncy castle fix for spark images
razvan Jul 24, 2025
e5dbb5a
chore: Merge branch 'main' into docs/release-notes-25.7.0
Techassi Jul 24, 2025
f64eb39
docs: Add call-to-action to delete orphaned SAs
Techassi Jul 24, 2025
760e9f1
docs: Add link to "known issues" section
Techassi Jul 24, 2025
34ca82d
chore: Update link text
Techassi Jul 24, 2025
95e029b
chore: Update CRD replacement commands
Techassi Jul 24, 2025
1bdc488
chore: Adjust Hadoop 3.3.6 support note
Techassi Jul 24, 2025
d6328a2
chore: Apply suggestion
Techassi Jul 24, 2025
9609fc4
chore: Indicate that Apache HBase 2.6.2 is the LTS version
Techassi Jul 24, 2025
0b14747
chore: Link to stackablectl release notes page
Techassi Jul 24, 2025
c8f524c
chore: Move sentences to individual lines
Techassi Jul 24, 2025
5ad0660
chore: Spelling of Jupyter
NickLarsenNZ Jul 24, 2025
48f74a9
chore: Unify spelling for listener, secret and commons operator
Techassi Jul 24, 2025
84b4c78
docs: Adjust note about new CRs
Techassi Jul 24, 2025
87e7665
chore: Spelling of ZooKeeper
NickLarsenNZ Jul 24, 2025
aa5e168
chore: Syntax highlight commands
NickLarsenNZ Jul 24, 2025
cf9e544
chore: Syntax highlight commands
NickLarsenNZ Jul 24, 2025
2eb7c49
chore: Remove optional description TODO
Techassi Jul 24, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 6 additions & 8 deletions .github/PULL_REQUEST_TEMPLATE/release-notes.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,10 @@

[template]: https://github.com/stackabletech/documentation/blob/8dc93f28ac6d20a587f54d0a697c71fe47e8643a/modules/ROOT/pages/release-notes.adoc?plain=1#L11-L56

```[tasklist]
#### Release note compilation tasks
- [ ] Check [Issues](https://github.com/search?q=org%3Astackabletech+label%3Arelease-note%2Crelease-note%2Faction-required+label%3Arelease%YY.M.X%2Cscheduled-for%YY.M.X&type=issues) for Product and Platform release notes
- [ ] Check [PRs](https://github.com/search?q=org%3Astackabletech+label%3Arelease-note%2Crelease-note%2Faction-required+label%3Arelease%YY.M.X%2Cscheduled-for%YY.M.X&type=pullrequests) for Product and Platform release notes
## Release note compilation tasks

- [ ] Check [Issues](https://github.com/search?q=org%3Astackabletech+label%3Arelease-note%2Crelease-note%2Faction-required+label%3Arelease%2FYY.M.X%2Cscheduled-for%2FYY.M.X&type=issues) for Product and Platform release notes
- [ ] Check [PRs](https://github.com/search?q=org%3Astackabletech+label%3Arelease-note%2Crelease-note%2Faction-required+label%3Arelease%2FYY.M.X%2Cscheduled-for%2FYY.M.X&type=pullrequests) for Product and Platform release notes
- [ ] Optionally check the [Changelogs](https://github.com/search?q=org%3Astackabletech+path%3A*CHANGELOG.md+%22YY.M.X%22&type=code) in case release notes were missed
- [ ] Compile list of new product versions that are supported and compile a list of new product features to include in the Release Highlights
- [ ] Upgrade guide: Document how to use stackablectl to uninstall all and install new release
Expand All @@ -28,15 +28,13 @@
- [ ] Upgrade guide: List removed product versions (if there are any)
- [ ] Upgrade guide: List removed operators (if there are any)
- [ ] Upgrade guide: List supported Kubernetes versions
```

Each of the following tasks focuses on a specific goal and should be done once the items above have been completed.

```[tasklist]
#### Release note review tasks
## Release note review tasks

- [ ] Check overall document structure
- [ ] Check spelling, grammar, and correct wording
- [ ] Check that internal links are xrefs
- [ ] Check that rendered links are valid
- [ ] Check that each sentence begins on a new line
```
66 changes: 40 additions & 26 deletions modules/ROOT/pages/getting-started.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,8 @@
:page-aliases: getting_started.adoc
:description: Learn how to set up and test a Stackable Data Platform with Apache ZooKeeper, Kafka, and NiFi using Kubernetes. Ideal for lab environments.

One of the best ways of getting started with a new platform is to try it out. Any big data platform has a lot of moving parts and getting some hands on keyboard time with it helps reinforce learning.
One of the best ways of getting started with a new platform is to try it out.
Any big data platform has a lot of moving parts and getting some hands on keyboard time with it helps reinforce learning.

== About this guide

Expand All @@ -13,7 +14,8 @@ Firstly, let's cover whether this *Getting Started* guide is right for you. This

== Overview

Stackable is based on Kubernetes and uses this as the control plane to manage clusters. In this guide we will build a simple cluster with 3 services; Apache ZooKeeper, Apache Kafka and Apache NiFi.
Stackable is based on Kubernetes and uses this as the control plane to manage clusters.
In this guide we will build a simple cluster with 3 services; Apache ZooKeeper, Apache Kafka and Apache NiFi.

== Installing Kubernetes and kubectl

Expand All @@ -30,32 +32,36 @@ Install the Stackable command line utility xref:management:stackablectl:index.ad

=== Installing Stackable Operators

The Stackable operators are components that translate the service definitions deployed via Kubernetes into deploy services on the worker nodes. These can be installed on any node that has access to the Kubernetes control plane. In this example we will install them on the controller node.
The Stackable operators are components that translate the service definitions deployed via Kubernetes into deploy services on the worker nodes.
These can be installed on any node that has access to the Kubernetes control plane.
In this example we will install them on the controller node.

Stackable operators can be installed using `stackablectl`. Run the following commands to install ZooKeeper, Kafka and NiFi from the Stackable 25.3 release.
Stackable operators can be installed using `stackablectl`.
Run the following commands to install ZooKeeper, Kafka and NiFi from the Stackable 25.7 release.

[source,bash]
----
stackablectl release install -i commons -i secret -i listener -i zookeeper -i kafka -i nifi 25.3
stackablectl release install -i commons -i secret -i listener -i zookeeper -i kafka -i nifi 25.7
----

.Using Helm instead
[%collapsible]
====
NOTE: These examples assume Helm version 3. They will not work with Helm version 2.

`helm repo` subcommands are not supported for OCI registries. The operators are installed directly, without adding the Helm Chart repository first.
`helm repo` subcommands are not supported for OCI registries.
The operators are installed directly, without adding the Helm Chart repository first.

Install the operators:

[source,bash]
----
helm install zookeeper-operator oci://oci.stackable.tech/sdp-charts/zookeeper-operator --version=25.3.0
helm install kafka-operator oci://oci.stackable.tech/sdp-charts/kafka-operator --version=25.3.0
helm install secret-operator oci://oci.stackable.tech/sdp-charts/secret-operator --version=25.3.0
helm install listener-operator oci://oci.stackable.tech/sdp-charts/listener-operator --version=25.3.0
helm install commons-operator oci://oci.stackable.tech/sdp-charts/commons-operator --version=25.3.0
helm install nifi-operator oci://oci.stackable.tech/sdp-charts/nifi-operator --version=25.3.0
helm install zookeeper-operator oci://oci.stackable.tech/sdp-charts/zookeeper-operator --version=25.7.0
helm install kafka-operator oci://oci.stackable.tech/sdp-charts/kafka-operator --version=25.7.0
helm install secret-operator oci://oci.stackable.tech/sdp-charts/secret-operator --version=25.7.0
helm install listener-operator oci://oci.stackable.tech/sdp-charts/listener-operator --version=25.7.0
helm install commons-operator oci://oci.stackable.tech/sdp-charts/commons-operator --version=25.7.0
helm install nifi-operator oci://oci.stackable.tech/sdp-charts/nifi-operator --version=25.7.0
----
====

Expand All @@ -64,17 +70,18 @@ You can check which operators are installed using `stackablectl operator install
[source,console]
----
OPERATOR VERSION NAMESPACE STATUS LAST UPDATED
commons 25.3.0 default deployed 2024-11-30 17:58:32.916032854 +0100 CET
kafka 25.3.0 default deployed 2024-11-30 17:58:55.036115353 +0100 CET
listener 25.3.0 default deployed 2024-11-30 17:59:18.136775259 +0100 CET
nifi 25.3.0 default deployed 2024-11-30 17:59:51.927081648 +0100 CET
secret 25.3.0 default deployed 2024-11-30 18:00:05.060241771 +0100 CET
zookeeper 25.3.0 default deployed 2024-11-30 18:00:08.425686918 +0100 CET
commons 25.7.0 default deployed 2025-07-24 17:58:32.916032854 +0100 CET
kafka 25.7.0 default deployed 2025-07-24 17:58:55.036115353 +0100 CET
listener 25.7.0 default deployed 2025-07-24 17:59:18.136775259 +0100 CET
nifi 25.7.0 default deployed 2025-07-24 17:59:51.927081648 +0100 CET
secret 25.7.0 default deployed 2025-07-24 18:00:05.060241771 +0100 CET
zookeeper 25.7.0 default deployed 2025-07-24 18:00:08.425686918 +0100 CET
----

== Deploying Stackable Services

At this point you've successfully deployed Kubernetes and the Stackable operators we need and are ready to deploy services to the cluster. To do this we provide service descriptions to Kubernetes for each of the services we wish to deploy.
At this point you've successfully deployed Kubernetes and the Stackable operators we need and are ready to deploy services to the cluster.
To do this we provide service descriptions to Kubernetes for each of the services we wish to deploy.

=== Apache ZooKeeper

Expand Down Expand Up @@ -113,7 +120,8 @@ EOF

=== Apache Kafka

We will deploy an Apache Kafka broker that depends on the ZooKeeper service we just deployed. The zookeeperReference property below points to the namespace and name we gave to the ZooKeeper service deployed previously.
We will deploy an Apache Kafka broker that depends on the ZooKeeper service we just deployed.
The zookeeperReference property below points to the namespace and name we gave to the ZooKeeper service deployed previously.

[source,bash]
----
Expand Down Expand Up @@ -207,7 +215,8 @@ stringData:
EOF
----

You can check the status of the services using `kubectl get pods`. This will retrieve the status of all pods running in the default namespace.
You can check the status of the services using `kubectl get pods`.
This will retrieve the status of all pods running in the default namespace.

----
NAME READY STATUS RESTARTS AGE
Expand All @@ -227,22 +236,25 @@ simple-zk-server-primary-0 1/1 Running 0
zookeeper-operator-deployment-7bcdcbb558-xc77h 1/1 Running 0 13m
----

Since this is the first time that each of these services has been deployed to these nodes, it will take some time to download the software from the Stackable repository and deploy the services. Once all the pods are in the running state your cluster is ready to use.
Since this is the first time that each of these services has been deployed to these nodes, it will take some time to download the software from the Stackable repository and deploy the services.
Once all the pods are in the running state your cluster is ready to use.

== Testing your cluster

If all has gone well then you will have successfully deployed a Stackable cluster and used it to start three services that should now be ready for you.

=== Apache ZooKeeper

We can test ZooKeeper by running the ZooKeeper CLI shell. The easiest way to do this is to run the CLI shell on the pod that is running ZooKeeper.
We can test ZooKeeper by running the ZooKeeper CLI shell.
The easiest way to do this is to run the CLI shell on the pod that is running ZooKeeper.

[source,bash]
----
kubectl exec -i -t simple-zk-server-primary-0 -- bin/zkCli.sh
----

The shell should connect automatically to the ZooKeeper server running on the pod. You can run the `ls /` command to see the list of znodes in the root path, which should include those created by Apache Kafka and Apache NiFi.
The shell should connect automatically to the ZooKeeper server running on the pod.
You can run the `ls /` command to see the list of znodes in the root path, which should include those created by Apache Kafka and Apache NiFi.

----
[zk: localhost:2181(CONNECTED) 0] ls /
Expand All @@ -260,7 +272,8 @@ kubectl exec -i -t simple-kafka-broker-brokers-0 -c kafka -- \
bin/kafka-topics.sh --bootstrap-server localhost:9092 --create --topic demo
----

You should see the message, "Created topic demo." on the console. Now let's check to see if it was actually created:
You should see the message, "Created topic demo." on the console.
Now let's check to see if it was actually created:

[source,bash]
----
Expand Down Expand Up @@ -298,7 +311,8 @@ Browse to the address of your Kubernetes node on port `31931` e.g. https://172.1

image:nifi_login_screen.png[The Apache NiFi web interface login screen]

If a password has not been specified for the admin user the Apache NiFi operator will automatically generate the admin user credentials with a random password and store it as a Kubernetes secret in order to provide some security out of the box. In the example above we have provided our own secret, but you can retrieve and confirm this password for the `admin` user with the following kubectl command.
If a password has not been specified for the admin user the Apache NiFi operator will automatically generate the admin user credentials with a random password and store it as a Kubernetes secret in order to provide some security out of the box.
In the example above we have provided our own secret, but you can retrieve and confirm this password for the `admin` user with the following kubectl command.

[source,bash]
----
Expand Down
2 changes: 2 additions & 0 deletions modules/ROOT/pages/release-notes.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@ The Stackable Data Platform consists of multiple operators that work together.
Periodically a platform release is made, including all components of the platform at a specific version.

// WARNING: Please keep the empty newlines, otherwise headings are broken.
include::partial$release-notes/release-25.7.adoc[]

include::partial$release-notes/release-25.3.adoc[]

include::partial$release-notes/release-24.11.adoc[]
Expand Down
Loading
Loading