2017-07-11 253 views
0

IAM使用在CentOS 7 的Hadoop的Apache 2.7.1和我的集羣是HA羣集使用的動物園管理員法定人數自動故障轉移動物園管理員自動啓動操作失敗

IAM,但我想在shell腳本中自動執行動物園管理員啓動過程和課程,我們必須首先停止防火牆,以便讓其他法定人員能夠聯繫當前動物園管理員元素

iam在/etc/rc.d/rc.local中寫入以下腳本

hostname jn1 

systemctl stop firewalld 

ZOOKEEPER='/usr/local/zookeeper-3.4.9/' 
source /etc/rc.d/init.d/functions 

source $ZOOKEEPER/bin/zkEnv.sh 

daemon --user root $ZOOKEEPER/bin/zkServer.sh start 

但IAM面臨的問題是,當IAM發出命令

systemctl stop firewalld 在rc.local中

,併發出zkServer狀態後,主機啓動IAM收到錯誤

ZooKeeper JMX enabled by default 
Using config: /usr/local/zookeeper-3.4.9/bin/../conf/zoo.cfg 
Error contacting service. It is probably not running. 

,但如果我執行相同的命令與腳本我的意思是在我的主機作爲正常進程啓動後

systemctl status firewalld 

zkServer start 

還有沒有問題,zkstatus顯示其模式

我已經注意到在主機引導

,差異正在讀服務器環境中正常命令執行後

執行rc.local的腳本和普通命令之間zookeeper.out日誌的區別

在rc.local腳本中停止服務器環境的防火牆以及如何處理它可能會產生什麼影響 ?

+0

rc.local中的hostname jn1之前是否還有其他命令?啓動系統後,firewalld正在運行? – Shubhangi

+0

沒有這些是唯一的命令,開機後系統firewalld沒有運行 –

+0

是rc.local文件放置systemctl stop firewalld命令的好地方,並且防火牆需要的變量在rc.local中很好地加載,然後我們可以阻止它 –

回答