Skip to content

Conversation

@kimago
Copy link
Member

@kimago kimago commented Nov 26, 2025

Thanks for opening a PR. Please make sure you've read and followed the Contributing guide, including signing the Contributor License Agreement.

Feature or Bug Description

What does this PR change?

Discussed in Jira story notes: https://vmw-jira.broadcom.net/browse/TNZ-66259?focusedId=20850661&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-20850661

Motivation

Tell us about the problem you are facing, with context, that this PR solves.

Related Issue

If this PR was first opened as an issue, please provide the link to that issue here.

Copy link
Member

@abg abg left a comment

Choose a reason for hiding this comment

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

Left some comments.

@github-project-automation github-project-automation bot moved this from Inbox to Waiting for Changes | Open for Contribution in Foundational Infrastructure Working Group Dec 1, 2025
Copy link
Member

@abg abg left a comment

Choose a reason for hiding this comment

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

Left a few more comments on the "pingdb" integration test.

@kimago kimago force-pushed the feature/dns-proxy-healthcheck-TNZ-66259 branch 5 times, most recently from aa39c24 to 8631d4e Compare December 9, 2025 22:21
@kimago
Copy link
Member Author

kimago commented Dec 10, 2025

Re-submitting this for review. The last 2 commits are trivial (bumps to dependencies & "Eventually()" intervals); the prior 3 are:

  1. all of the smaller above-recommended changes,
  2. curl bosh to obtain proxy DNS name, and
  3. e2e test using smoke-tests to exercise bosh DNS resolution during app connection.

- Validate proxy dns healthcheck script influences bosh dns behavior and
  that connections to the proxy via the bosh-dns proxy link address
  continue to work.
- Cycle that test across all proxies (presumes 2 proxy nodes)
  to ensure we observe DNS route new connections away from an
  unhealthy proxy.

[TNZ-66259](https://vmw-jira.broadcom.net/browse/TNZ-66259)

Authored-by: Kim Bassett <[email protected]>
Runs a new "pingdb" command provided by the switchboard module to
validate the proxy is routing connections to a valid MySQL backend.

[TNZ-66259](https://vmw-jira.broadcom.net/browse/TNZ-66259)

Authored-by: Kim Bassett <[email protected]>
pingdb is expected to be colocated with the proxy and connects over
localhost to the local proxy instance on the proxy port and establishes
a MySQL connection without credentials.

If a MySQL server response is detected, the proxy is routing connections
to a valid backend and pingdb succeeds.  Otherwise pingdb fails on any
other error.

Notes:
- Move the switchboard proxy main entrypoint to ./cmd/proxy/
- Adds new ./cmd/pingdb to aid in DNS healthchecks for the proxy
- Adds new internal/testing/docker package to assist in integration
  tests for the new pingdb command

[TNZ-66259](https://vmw-jira.broadcom.net/browse/TNZ-66259)

Authored-by: Kim Bassett <[email protected]>
@abg abg force-pushed the feature/dns-proxy-healthcheck-TNZ-66259 branch from 2db4170 to e1173f3 Compare December 11, 2025 19:13
@abg
Copy link
Member

abg commented Dec 11, 2025

Rebased on main and cleaned up some of the commit history after an internal discussion with @kimago

Once unit tests pass on the rebased changes, I will merge.

@abg abg merged commit 7028125 into main Dec 11, 2025
2 checks passed
@github-project-automation github-project-automation bot moved this from Waiting for Changes | Open for Contribution to Done in Foundational Infrastructure Working Group Dec 11, 2025
@abg abg deleted the feature/dns-proxy-healthcheck-TNZ-66259 branch December 11, 2025 19:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Development

Successfully merging this pull request may close these issues.

2 participants