ambari自定義服務(二)metainfo.xml說明
阿新 • • 發佈:2019-02-16
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:包含配置屬性的資料字典