Ambari Custom Service 2 - metainfo.xml

Metainfo.xml聲明性定義Ambari服務。這是服務定義最關鍵的文件。下面說明Metainfo.xml各部分的作用。

描述服務<service>的字段包括:

屬性 描述
name 服務名,必須唯一
displayName 服務在web UI上的顯示名
extends 繼承以前的版本
version 服務版本,用name和version唯一標記一個服務,通常是服務二進制文件的版本
quickLinksConfigurations-dir 存放快速鏈接定義文件的目錄,默認是quicklinks
quickLinksConfigurations/quickLinksConfiguration/
  filename
快速鏈接json文件名
components 服務包含的組件
osSpecifics 服務特定操作系統的包
CommandScript(可選) 配置 service check 腳本入口,如果一個 Service 的 metainfo.xml 有該字段,那麼在 Service 的 Action 列表中就會出現“Run Service Check”這個命令。
comment(可選) 服務的描述
requiredServices:(可選) 集羣上需要的其他服務
configuration-dependencies(可選) 該字段就是用來關聯一個 Service 與配置項文件入口。Ambari 支持 xml 和 json 格式的配置文件。

service/components – 一個服務包含幾個組件。

component的字段如下:

屬性 說明
name 組件名 
displayName 組件顯示 
category  組件類型 - MASTER, SLAVE和CLIENT
commandScript 實現組件命令的腳本
cardinality 允許/需要的實例數量
versionAdvertised(可選) 是否宣稱版本,用於回滾和升級
timelineAppid(可選) 存儲metric數據的默認類型 
dependencies(可選)  組件依賴的組件 
customCommands(可選)  標準命令之外自定義的命令
configFiles 客戶端配置可以下載的配置文件

service/osSpecifics -操作系統特定包名 rpm或deb包

屬性 描述 
osFamily 包適用的操作系統
packages 部署服務需要的包
package/name 包名,被yum/zipper/apt適用 

 

service/component/customCommand -添加到組件的自定義命令

屬性 描述 
name  自定義命令名稱
commandScript 實現自定義命令的腳本 
commandScript/script  腳本路徑
commandScript/scriptType(可選)  腳本類型,目前只支持python 

commandScript/timeout(可選)

自定義命令超時時間

 

service/component/configFiles – 客戶端配置可以下載的配置文件

type: 生成文件類型, xml or env sh, yaml, etc

fileName: 生成的文件文件名

dictionary:包含配置屬性的數據字典

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章