Hi, community
This is a correction to the previous email

Issue Name: Expand the data source center into a connection center

Issue Background:
1. The DolphinScheduler has a component of the Datasource Center
that is used to manage external connections for SQL tasks, such as MySQL,
hive, spark, etc.
2. But not only SQL tasks, but also some other
DolphinScheduler task plugins require external connections, such as AWS EMR
tasks, Zeppelin tasks, K8S tasks, etc. We can enrich the scenarios that
require the Datasource Center to manage connections, especially those
external systems with credentials, and upgrade them to the Connection

Center.Related Issues:
[Feature] Add connection center feature for DS #10283
<https://github.com/apache/dolphinscheduler/issues/10283>

Issue Target:
1. Change the name of the Datasource Center to Connection Center.
2. Reconstruct some AWS EMR, Zeppelin, K8S, and Sagemaker task plugins to
facilitate user
management of external connections in the connection center.
3. Cluster Management and K8S Namespace Management in the security center
are removed
because managing K8S clusters is not the job of Big data orchestration
tools. Users can configure K8S connections for K8S task plugins in the
connection center.

Design scheme (taking Zeppelin as an example):
You can see it in the first comment.
<https://github.com/apache/dolphinscheduler/issues/14338>

1. Support for Zepplein connections in the Connection Center

Add the `zeppelin` module to the `datasource-plugin` module, and add key
classes such as `ZeppelinConnectionParam`, ` ZeppelinDataSourceParamDTO`,
`ZeppelinDataSourceProcessor`, `ZeppelinDataSourceChannel`,
`ZeppelinDataSourceChannelFactory`, and `ZeppelinDataSourceClient`.

2. Support the selection of online Zeppelin connections in the Zeppelintask.

a) Zeppelin task front-end interface changes (removed input for username
and password).

b) Add the parameters restEndpoint, username, password to the model of
tasks/use zeppelin.ts.

c) Before the `use-zeppelin function return`, fill in the username,
password, and restEndpoint parameters with the parameters of the connection
selected in the drop-down box. Obtain the selected connection ID, query its
detailed information in the database based on the ID, and extract the
username, password, restEndpoint in the information, and password should
    be encrypted and may need to be decrypted.

Reply via email to