在这个例子中,我们将创建一个称为“SAMPLESRV”的自定义的服务,将它添加到现有源里面。这服务包括MASTER, SLAVE和CLIENT 组件。
创建和添加服务
-
在Ambari服务器,进入/var/lib/ambari-server/resources/stacks/HDP/2.0.6/services目录。在这种情况下,我们将浏览到HDP-2源的。
-
创建目录
/var/lib/ambari-server/resources/stacks/HDP/2.0.6/services/SAMPLESRV
,里面将放SAMPLESRV的定义信息. -
浏览到新创建的samplesrv目录,创建新服务的描述文件metainfo.xml。例如:
- 在上面, 我们的服务名称是 "SAMPLESRV", 并且包好:
- 一个 MASTER 组件 "SAMPLESRV_MASTER"
- 一个 SLAVE 组件 "SAMPLESRV_SLAVE"
- 一个 CLIENT 组件 "SAMPLESRV_CLIENT"
-
下一步,让我们创建命令脚本. 为命令脚本创建一个目录
/var/lib/ambari-server/resources/stacks/HDP/2.0.6/servi
ces/
SAMPLESRV
/
package/scripts
,需要我们在服务的metainfo里面配置。 -
进入脚本目录,并创建.py命令脚本文件。
例如 master.py 文件
:例如
slave
.py
文件:例如
sample_client
.py
文件: -
现在, 重启ambari服务器
安装服务
- 在Ambari Web, 进入到服务界面并点击 操作 按钮(在左边的服务导航区域)。
- 打开"添加服务" 安装向导。 你可以看到包含"My Sample Service" 的选项(就是在服务的
metainfo.xml
文件里面定义的名称)。 - 选择 "My Sample Service" 并点击下一步。
- 分配 "Sample Srv Master" 并点击下一步。
- 选择主机安装 "Sample Srv Client" 并点击下一步。
- 一旦完成,该"My Sample Service" 将出现在服务的导航区域.
- 如果你想添加"Sample Srv Client"到任一主机,你可以进入到"主机"并进入到需要的主机,点击“+添加”。