Skip to content

HDDS-15177. acceptance test race condition in generating keytab and service start.#10194

Open
ss77892 wants to merge 1 commit intoapache:masterfrom
ss77892:HDDS-15177
Open

HDDS-15177. acceptance test race condition in generating keytab and service start.#10194
ss77892 wants to merge 1 commit intoapache:masterfrom
ss77892:HDDS-15177

Conversation

@ss77892
Copy link
Copy Markdown
Contributor

@ss77892 ss77892 commented May 5, 2026

What changes were proposed in this pull request?

HDDS-15177. acceptance test race condition in generating keytab and service start.

Fix intermittent xcompat failures where the new-cluster Compose stack could start SCM and other Kerberos-backed services before init-kdc finished exporting keytabs and starting the KDC. Add the same KDC healthcheck used on the old cluster (verify scm.keytab exists and port 88 accepts connections) and depend on the KDC being healthy.

What is the link to the Apache JIRA

https://issues.apache.org/jira/browse/HDDS-15177

How was this patch tested?

CI + local tests.

Copy link
Copy Markdown
Contributor

@adoroszlai adoroszlai left a comment

Choose a reason for hiding this comment

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

Thanks @ss77892 for the patch.

Comment on lines +41 to +46
healthcheck:
test: ["CMD-SHELL", "test -s /etc/security/keytabs/scm.keytab && nc -z 127.0.0.1 88"]
interval: 2s
timeout: 3s
retries: 45
start_period: 5s
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

  • Checking existence of scm.keytab is not necessary, since KDC is started (in init-kdc.sh) only after exporting all keytabs.
  • I think it would be better to add the healthcheck in the image itself to reduce duplication. Base command may need to be set (krb5kdc -n), too. With that, we only need depends_on in compose files (and update docker.ozone-testkr5b.image)

Comment on lines +60 to +62
depends_on:
kdc:
condition: service_healthy
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

This seems to be unnecessary, since /etc/security/keytabs is not mounted, so KMS cannot use keytabs created by KDC.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants