apache / apache/dolphinscheduler

[DB TLS Connection][Helm Chart] Request for the feature for connecting to external DB with TLS connection

Open
#17,550 1 comment 0 reactions 0 assignees View on GitHub
feature help wanted
Dominant language
Java
Stars
14.5k
Forks
5.1k
Avg merge
1d 21h
Merged PRs (30d)
29

Description

### Search before asking

- [x] I had searched in the [issues](https://github.com/apache/dolphinscheduler/issues?q=is%3Aissue) and found no similar feature requirement.

### Description

In the normal production deployment, we will have a database which enable the TLS connection using a self signed certificate.
The client initiate the connection using an internal domain to the DB and verifying the self-signed CA certificate of this TLS connection.
Suggest to add the support of this common practice in the Helm Chart by
1. adding the configuration of the DB SSL connection with the CA certificate Configuration. It would be great if it can refer to a Kubernetes Secret
2. Add hostAliases in the helm chart (https://kubernetes.io/docs/tasks/network/customize-hosts-file-for-pods/) so that the pod can go to the DB using an internal FQDN. The internal FQDN is also used in the TLS certificate, so we need to use it to connect to DB so that the server can use the correct server certificate

### Use case

_No response_

### Related issues

_No response_

### Are you willing to submit a PR?

- [ ] Yes I am willing to submit a PR!

### Code of Conduct

- [x] I agree to follow this project's [Code of Conduct](https://www.apache.org/foundation/policies/conduct)

Contributor guide

Open the contributing guide

Research direction

Start by locating the Helm chart's database configuration and pod template, then review how Kubernetes Secret values and hostAliases are represented in chart values. Done means an external database can use a self-signed CA from a Secret and pods can resolve and connect through the TLS certificate's internal FQDN.

Written by the indexing model from the issue text.

Assessment

Tech stack
helm, kubernetes
Domain
databases, devops
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.