You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@dolphinscheduler.apache.org by zh...@apache.org on 2022/01/07 10:46:40 UTC

[dolphinscheduler-ambari] 01/01: Split Ambari plugin from dolphinscheduler to independent repo

This is an automated email from the ASF dual-hosted git repository.

zhongjiajie pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/dolphinscheduler-ambari.git

commit c425891c8ebb79e71c5291d55de0626973c08873
Author: Jiajie Zhong <zh...@hotmail.com>
AuthorDate: Fri Jan 7 18:39:52 2022 +0800

    Split Ambari plugin from dolphinscheduler to independent repo
    
    ref: apache/dolphinscheduler#7036
---
 README.md | 146 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 146 insertions(+)

diff --git a/README.md b/README.md
new file mode 100644
index 0000000..11b9f69
--- /dev/null
+++ b/README.md
@@ -0,0 +1,146 @@
+# Apache Ambari plugin of Apache DolphinScheduler
+
+## ⚠️⚠️Important⚠️⚠️
+
+⚠️⚠️ **NOTE** ⚠️⚠️: Apache Ambari plugin only support installation DolphinScheduler for version 1.3.0 - 1.3.9.
+The reason we split to this repo as below:
+
+* Ambari plug-in is a deployment plugin and not update for two years, and only support DolphinScheduler 1.3.x.
+  DolphinScheduler 2.0 have quit different between 1.3.x and it seem not work in 2.0 anymore.
+
+You could find more detail in mail thread: https://lists.apache.org/thread/5l2zy28q1l5tl87q84h8qsw59z5vg2ly
+
+## Note
+
+* This document is intended for users with a basic understanding of Ambari
+* This document is a description of adding the Dolphin Scheduler service to the installed Ambari service
+* This document is based on version 2.5.2 of Ambari
+
+## Installation preparation
+
+### Prepare the RPM packages
+
+```shell
+# Only support version 1.3.0 - 1.3.9, we here use 1.3.3 as example
+DOLPHINSCHEDULER_VERSION=1.3.3
+
+git clone --depth 1 --branch ${DOLPHINSCHEDULER_VERSION} git@github.com:apache/dolphinscheduler.git dolphinscheduler_${DOLPHINSCHEDULER_VERSION}_ambari
+cd dolphinscheduler_${DOLPHINSCHEDULER_VERSION}_ambari
+
+# It is generated by executing the command, the project root directory (In the directory: dolphinscheduler-dist/target/rpm/apache-dolphinscheduler/RPMS/noarch )
+mvn -U clean install  -Prpmbuild  -Dmaven.test.skip=true -X
+```
+
+### Create an installation for DS,who have read and write access to the installation directory (/opt/soft)
+
+### Install with rpm package
+
+* Manual installation (recommended):
+   * Copy the prepared RPM packages to each node of the cluster.
+   * Execute with DS installation user: `rpm -ivh apache-dolphinscheduler-xxx.noarch.rpm`
+   * Mysql-connector-java packaged using the default POM file will not be included.
+   * The RPM package was packaged in the project with the installation path of /opt/soft.
+     If you use mysql as the database, you need add it manually.
+
+* Automatic installation with ambari
+   * Each node of the cluster needs to configure the local yum source
+   * Copy the prepared RPM packages to each node local yum source
+
+### Copy plug-in directory
+
+* copy directory ambari_plugin/common-services/DOLPHIN to ambari-server/resources/common-services/
+* copy directory ambari_plugin/statcks/DOLPHIN to ambari-server/resources/stacks/HDP/2.6/services/--stack version is selected based on the actual situation
+
+### Initializes the database information
+
+```shell
+-- Create the database for the Dolphin Scheduler:dolphinscheduler
+CREATE DATABASE dolphinscheduler DEFAULT CHARACTER SET utf8 DEFAULT COLLATE
+utf8_general_ci;
+
+-- Initialize the user and password for the dolphinscheduler database and assign permissions
+-- Replace the {user} in the SQL statement below with the user of the dolphinscheduler database
+GRANT ALL PRIVILEGES ON dolphinscheduler.* TO '{user}'@'%' IDENTIFIED BY '{password}';
+GRANT ALL PRIVILEGES ON dolphinscheduler.* TO '{user}'@'localhost' IDENTIFIED BY
+'{password}';
+flush privileges;
+```
+
+## Ambari Install Dolphin Scheduler
+
+**NOTE: You have to install zookeeper first**
+
+### Install  Dolphin Scheduler on ambari web interface
+
+![](https://github.com/apache/dolphinscheduler-website/blob/master/img/ambari-plugin/DS2_AMBARI_001.png)
+
+### Select the nodes for the Dolphin Scheduler's Master installation
+
+![](https://github.com/apache/dolphinscheduler-website/blob/master/img/ambari-plugin/DS2_AMBARI_002.png)
+
+### Configure the Dolphin Scheduler's nodes for Worker, Api, Logger, Alert installation
+
+![](https://github.com/apache/dolphinscheduler-website/blob/master/img/ambari-plugin/DS2_AMBARI_003.png)
+
+### Set the installation users of the Dolphin Scheduler service (created in step 1) and the user groups they belong to
+
+![](https://github.com/apache/dolphinscheduler-website/blob/master/img/ambari-plugin/DS2_AMBARI_004.png)
+
+### System Env Optimization will export some system environment config. Modify according to actual situation
+
+![](https://github.com/apache/dolphinscheduler-website/blob/master/img/ambari-plugin/DS2_AMBARI_020.png)
+
+### Configure the database information (same as in the initialization database in step 1)
+
+![](https://github.com/apache/dolphinscheduler-website/blob/master/img/ambari-plugin/DS2_AMBARI_005.png)
+
+### Configure additional information if needed
+
+![](https://github.com/apache/dolphinscheduler-website/blob/master/img/ambari-plugin/DS2_AMBARI_006.png)
+
+![](https://github.com/apache/dolphinscheduler-website/blob/master/img/ambari-plugin/DS2_AMBARI_007.png)
+
+### Perform the next steps as normal
+
+![](https://github.com/apache/dolphinscheduler-website/blob/master/img/ambari-plugin/DS2_AMBARI_008.png)
+
+### The interface after successful installation
+
+![](https://github.com/apache/dolphinscheduler-website/blob/master/img/ambari-plugin/DS2_AMBARI_009.png)
+
+------
+
+## Add components to the node through Ambari -- for example, add a DS Worker
+
+***NOTE***: DS Logger is the installation dependent component of DS Worker in Dolphin's Ambari installation
+(need to add installation first; Prevent the Job log on the corresponding Worker from being checked)
+
+### Locate the component node to add -- for example, node ark3
+
+![DS2_AMBARI_011](https://github.com/apache/dolphinscheduler-website/blob/master/img/ambari-plugin/DS2_AMBARI_011.png)
+
+### Add components -- the drop-down list is all addable
+
+![DS2_AMBARI_012](https://github.com/apache/dolphinscheduler-website/blob/master/img/ambari-plugin/DS2_AMBARI_012.png)
+
+### Confirm component addition
+
+![DS2_AMBARI_013](https://github.com/apache/dolphinscheduler-website/blob/master/img/ambari-plugin/DS2_AMBARI_013.png)
+
+### After adding DS Worker and DS Logger components
+
+![DS2_AMBARI_015](https://github.com/apache/dolphinscheduler-website/blob/master/img/ambari-plugin/DS2_AMBARI_015.png)
+
+### Start the component
+
+![DS2_AMBARI_016](https://github.com/apache/dolphinscheduler-website/blob/master/img/ambari-plugin/DS2_AMBARI_016.png)
+
+## Remove the component from the node with Ambari
+
+### Stop the component in the corresponding node
+
+![DS2_AMBARI_018](https://github.com/apache/dolphinscheduler-website/blob/master/img/ambari-plugin/DS2_AMBARI_018.png)
+
+### Remove components
+
+![DS2_AMBARI_019](https://github.com/apache/dolphinscheduler-website/blob/master/img/ambari-plugin/DS2_AMBARI_019.png)