Skip to content

Conversation

@maltesander
Copy link
Member

@maltesander maltesander commented Jul 1, 2025

Description

follow up of #700

This splits the previous metrics internal service into a metrics service with the prometheus scrape label and a headless service for internal communication.

  • add headless role group service
  • use headless service in tls certs
  • add listener service name to tls certs
  • move service creation to its own module
  • adapt tests to use the correct service

TLS cert now uses listener scope: SAN for internal

#5: ObjectId: 2.5.29.17 Criticality=true
SubjectAlternativeName [
  DNSName: trino-coordinator-default-headless.kuttl-test-obliging-impala.svc.cluster.local
  DNSName: trino-coordinator-default-0.trino-coordinator-default-headless.kuttl-test-obliging-impala.svc.cluster.local
  DNSName: trino-coordinator.kuttl-test-obliging-impala.svc.cluster.local
]

SAN for external

#5: ObjectId: 2.5.29.17 Criticality=true
SubjectAlternativeName [
  DNSName: test-trino-coordinator-default-headless.kuttl-test-valid-mayfly.svc.cluster.local
  DNSName: test-trino-coordinator-default-0.test-trino-coordinator-default-headless.kuttl-test-valid-mayfly.svc.cluster.local
  IPAddress: 172.18.0.2
]

Definition of Done Checklist

  • Not all of these items are applicable to all PRs, the author should update this template to only leave the boxes in that are relevant
  • Please make sure all these things are done and tick the boxes

Author

  • Changes are OpenShift compatible
  • CRD changes approved
  • CRD documentation for all fields, following the style guide.
  • Helm chart can be installed and deployed operator works
  • Integration tests passed (for non trivial changes)
  • Changes need to be "offline" compatible
  • Links to generated (nightly) docs added
  • Release note snippet added

Reviewer

  • Code contains useful comments
  • Code contains useful logging statements
  • (Integration-)Test cases added
  • Documentation added or updated. Follows the style guide.
  • Changelog updated
  • Cargo.toml only contains references to git tags (not specific commits or branches)

Acceptance

  • Feature Tracker has been updated
  • Proper release label has been added
  • Links to generated (nightly) docs added
  • Release note snippet added
  • Add type/deprecation label & add to the deprecation schedule
  • Add type/experimental label & add to the experimental features tracker

@maltesander maltesander self-assigned this Jul 1, 2025
@maltesander maltesander marked this pull request as ready for review July 1, 2025 11:42
@maltesander maltesander moved this to Development: Waiting for Review in Stackable Engineering Jul 1, 2025
Maleware
Maleware previously approved these changes Jul 2, 2025
Copy link
Member

@Maleware Maleware left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM modulo tests. Thanks!

@sbernauer sbernauer moved this from Development: Waiting for Review to Development: In Review in Stackable Engineering Jul 3, 2025
@maltesander
Copy link
Member Author

@maltesander
Copy link
Member Author

@maltesander maltesander requested a review from NickLarsenNZ July 4, 2025 09:47
NickLarsenNZ

This comment was marked as outdated.

Copy link
Member

@NickLarsenNZ NickLarsenNZ left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@maltesander
Copy link
Member Author

Release Note

Coordinator Listener classes are now declared at role level spec.coordinators.roleConfig.listenerClass instead of spec.clusterConfig.listenerClass.
Both Coordinators and Workers have two services at role group level, a headless service called <cluster>-<role>-<rolegroup>-headless and a service for metrics called <cluster>-<role>-<rolegroup>-metrics.

Docs

https://docs.stackable.tech/home/nightly/trino/usage-guide/listenerclass/

@maltesander maltesander enabled auto-merge July 4, 2025 10:51
@maltesander maltesander moved this from Development: In Review to Development: Done in Stackable Engineering Jul 4, 2025
@maltesander maltesander added this pull request to the merge queue Jul 4, 2025
Merged via the queue into main with commit 06cb1ff Jul 4, 2025
17 checks passed
@maltesander maltesander deleted the fix/adapt-internal-services branch July 4, 2025 11:05
@maltesander maltesander linked an issue Jul 4, 2025 that may be closed by this pull request
@lfrancke lfrancke moved this from Development: Done to Acceptance: In Progress in Stackable Engineering Jul 4, 2025
@lfrancke lfrancke moved this from Acceptance: In Progress to Done in Stackable Engineering Jul 4, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Archived in project

Development

Successfully merging this pull request may close these issues.

Integrate Trino Operator with Listener Operator

5 participants