ambari安裝 ambari自定義服務乾貨

2021-10-17 07:39:08 字數 2089 閱讀 2775

宣告:博主寫了一些ambari自定義服務系列文章,可以在歷史文章中檢視。

仔細看,肯定會對ambari的自定義服務有乙個更清晰的認識。

版本:ambari 2.6.1

一、實時更改服務配置

# 以hue的配置檔案hue.ini為例file(format("/usr/hdp/2.6.4.0-91/hue/desktop/conf/hue.ini"), content=template("hue.ini.j2"), owner=params.hue_user, group=params.hue_group )# 解讀:# 1. file的第乙個變數為:實際服務的配置檔案的所在地# 2. file的第二個變數為:在服務的./package/目錄下新建templates資料夾,該資料夾下放入hue.ini.j2檔案,與配置檔案hue.ini內容一致。# 3. file的第三個變數為:所有者為hue# 4. file的第四個變數為: 所在組為hue

變數以}括起來,變數定義在param.py檔案。

# param.py區域性from resource_management.libraries.script.script import scriptconfig = script.get_config()http_host = config['hostname']http_port = config['configurations']['hue-env']['http_port']# 其中的'configurations'是代表著ambari集群已安裝元件的所有xml配置檔案# 'hue-env'對應著 configuration/hue-env.xml
hue-env.xml檔案

目錄:configuration/hue-env.xml

這樣的話,當在ambari介面上的hue服務那修改配置,後台根據config命令來讀取前端修改的值,然後賦值於hue.ini.j2,hue.ini.j2又與hue.ini相關聯。這樣,hue的配置檔案就會被實時更改,然後在ambari介面上根據提示重啟hue服務,配置即可生效。

二、py指令碼內建立/刪除資料夾、檔案

2.1 建立資料夾、檔案

def start(self, env): import params env.set_params(params)  directory([params.hue_pid_dir], mode=0755, cd_access='a', owner=params.hue_user, group=params.hue_group, create_parents=true ) file([params.hue_log_file, params.hue_server_pid_file], mode=0644, owner=params.hue_user, group=params.hue_group, content='' )# 說明# import匯入params.py檔案,該檔案內有上面用到的『hue_pid_dir』,『hue_log_file』,『hue_server_pid_file』變數的定義# directory表示執行資料夾操作,括起來的是要建立的資料夾名稱,mode是許可權,owner/group是使用者/組,create_parents=true是父目錄不存在時一起建立。# create_parents=true 有待驗證。# file表示執行檔案操作,括起來的是要建立的檔名稱,mode是許可權,owner/group是使用者/組,content=''代表內容為空。
2.2 刪除資料夾/檔案

def stop(self, env): import params env.set_params(params) directory(params.hue_pid_dir, action="delete

ambari 安裝配置

接下來都是基於ambari server安裝成功基礎之上製作本地repo 安裝基礎包和httpd服務並配置啟動 設定並啟動httpd服務 啟動後瀏覽器訪問ip 80驗證服務安裝正常即可,其根目錄在 var www 目錄下 root work ambari mkdir var www html amb...

Ambari安裝元件出錯

caught an exception while executing custom service command script var lib ambari agent cache stacks hdp 2.3 services dock package scripts master.py do...

Ambari學習12 ambari刪除指令碼

1.刪除hdp.repo和hdp util.repo cd etc yum.repos.d rm rf hdp rm rf hdp rm rf ambari 2.刪除安裝包 用yum list installed grep hdp來檢查安裝的ambari的包 yum remove y sqoop.n...