Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
5 changes: 5 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,13 @@
- `EOS_INTERVAL` (`--eos-interval`) to set the interval in which the operator checks if it is EoS.
- `EOS_DISABLED` (`--eos-disabled`) to disable the EoS checker completely.

### Changed

- Changed env-vars to be consistent with config-utils in the entrypoint script ([#700]).

[#691]: https://github.com/stackabletech/hbase-operator/pull/691
[#697]: https://github.com/stackabletech/hbase-operator/pull/697
[#700]: https://github.com/stackabletech/hbase-operator/pull/700

## [25.7.0] - 2025-07-23

Expand Down
4 changes: 2 additions & 2 deletions docs/modules/hbase/pages/reference/discovery.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,6 @@ Contains the needed information to connect to Zookeeper and use that to establis
=== Kerberos
In case Kerberos is enabled according to the xref:usage-guide/security.adoc[security documentation], the discovery ConfigMap also includes the information that clients must authenticate themselves using Kerberos.

If you want to use the discovery ConfigMap outside Stackable services, you need to substitute `${env.KERBEROS_REALM}` with your actual realm (e.g. by using `sed -i -e 's/${{env.KERBEROS_REALM}}/'"$KERBEROS_REALM/g" hbase-site.xml`).
If you want to use the discovery ConfigMap outside Stackable services, you need to substitute `${env:KERBEROS_REALM}` with your actual realm (e.g. by using `sed -i -e 's/${{env:KERBEROS_REALM}}/'"$KERBEROS_REALM/g" hbase-site.xml`).

One example would be the property `hbase.master.kerberos.principal` being set to `hbase/hbase.default.svc.cluster.local@${env.KERBEROS_REALM}`.
One example would be the property `hbase.master.kerberos.principal` being set to `hbase/hbase.default.svc.cluster.local@${env:KERBEROS_REALM}`.
12 changes: 6 additions & 6 deletions rust/operator-binary/src/hbase_controller.rs
Original file line number Diff line number Diff line change
Expand Up @@ -567,15 +567,15 @@ fn build_rolegroup_config_map(
);
hbase_site_config.insert(
"hbase.master.hostname".to_string(),
"${HBASE_SERVICE_HOST}".to_string(),
"${env:HBASE_SERVICE_HOST}".to_string(),
);
hbase_site_config.insert(
"hbase.master.port".to_string(),
"${HBASE_SERVICE_PORT}".to_string(),
"${env:HBASE_SERVICE_PORT}".to_string(),
);
hbase_site_config.insert(
"hbase.master.info.port".to_string(),
"${HBASE_INFO_PORT}".to_string(),
"${env:HBASE_INFO_PORT}".to_string(),
);
hbase_site_config.insert(
"hbase.master.bound.info.port".to_string(),
Expand All @@ -593,15 +593,15 @@ fn build_rolegroup_config_map(
);
hbase_site_config.insert(
"hbase.unsafe.regionserver.hostname".to_string(),
"${HBASE_SERVICE_HOST}".to_string(),
"${env:HBASE_SERVICE_HOST}".to_string(),
);
hbase_site_config.insert(
"hbase.regionserver.port".to_string(),
"${HBASE_SERVICE_PORT}".to_string(),
"${env:HBASE_SERVICE_PORT}".to_string(),
);
hbase_site_config.insert(
"hbase.regionserver.info.port".to_string(),
"${HBASE_INFO_PORT}".to_string(),
"${env:HBASE_INFO_PORT}".to_string(),
);
hbase_site_config.insert(
"hbase.regionserver.bound.info.port".to_string(),
Expand Down
2 changes: 1 addition & 1 deletion rust/operator-binary/src/kerberos.rs
Original file line number Diff line number Diff line change
Expand Up @@ -289,7 +289,7 @@ fn principal_host_part(
})?;
let cluster_domain = &cluster_info.cluster_domain;
Ok(format!(
"{hbase_name}.{hbase_namespace}.svc.{cluster_domain}@${{env.KERBEROS_REALM}}"
"{hbase_name}.{hbase_namespace}.svc.{cluster_domain}@${{env:KERBEROS_REALM}}"
))
}

Expand Down
5 changes: 4 additions & 1 deletion tests/templates/kuttl/kerberos/41-access-hbase.yaml.j2
Original file line number Diff line number Diff line change
Expand Up @@ -90,9 +90,12 @@ data:
klist

export KERBEROS_REALM=$(grep -oP 'default_realm = \K.*' /stackable/kerberos/krb5.conf)
cat /stackable/conf/hbase_mount/hbase-site.xml | sed -e 's/${env.KERBEROS_REALM}/'"$KERBEROS_REALM/g" > /stackable/conf/hbase/hbase-site.xml
# the hdfs discovery files are not written by the hbase operator and use
# the dot notation, so they cannot use config-utils
cat /stackable/conf/hdfs_mount/core-site.xml | sed -e 's/${env.KERBEROS_REALM}/'"$KERBEROS_REALM/g" > /stackable/conf/hbase/core-site.xml
cat /stackable/conf/hdfs_mount/hdfs-site.xml | sed -e 's/${env.KERBEROS_REALM}/'"$KERBEROS_REALM/g" > /stackable/conf/hbase/hdfs-site.xml
cp /stackable/conf/hbase_mount/hbase-site.xml /stackable/conf/hbase/hbase-site.xml
config-utils template /stackable/conf/hbase/hbase-site.xml

cat > /tmp/hbase-script << 'EOF'
disable 'test';
Expand Down
5 changes: 4 additions & 1 deletion tests/templates/kuttl/opa/41-access-hbase.yaml.j2
Original file line number Diff line number Diff line change
Expand Up @@ -87,9 +87,12 @@ data:
klist -k /stackable/kerberos/keytab

export KERBEROS_REALM=$(grep -oP 'default_realm = \K.*' /stackable/kerberos/krb5.conf)
cat /stackable/conf/hbase_mount/hbase-site.xml | sed -e 's/${env.KERBEROS_REALM}/'"$KERBEROS_REALM/g" > /stackable/conf/hbase/hbase-site.xml
# the hdfs discovery files are not written by the hbase operator and use
# the dot notation, so they cannot use config-utils
cat /stackable/conf/hdfs_mount/core-site.xml | sed -e 's/${env.KERBEROS_REALM}/'"$KERBEROS_REALM/g" > /stackable/conf/hbase/core-site.xml
cat /stackable/conf/hdfs_mount/hdfs-site.xml | sed -e 's/${env.KERBEROS_REALM}/'"$KERBEROS_REALM/g" > /stackable/conf/hbase/hdfs-site.xml
cp /stackable/conf/hbase_mount/hbase-site.xml /stackable/conf/hbase/hbase-site.xml
config-utils template /stackable/conf/hbase/hbase-site.xml

kdestroy; kinit -kt /stackable/kerberos/keytab admin/access-hbase.$NAMESPACE.svc.cluster.local; klist

Expand Down