1. 程式人生 > 其它 >Python工程師的大資料之路(二c)叢集指令碼(持續更)

Python工程師的大資料之路(二c)叢集指令碼(持續更)

技術標籤:大資料

先配置好叢集免密登入
https://yellow520.blog.csdn.net/article/details/110143502

文章目錄

1、叢集jps

touch /usr/bin/jps.py
chmod 777 /usr/bin/jps.py
vi /usr/bin/jps.py
#!/usr/bin/python2
import os, re
with open('/etc/hosts') as f:
    for i in re.findall(
'hadoop[0-9]+', f.read()): print i.center(40, '-') os.system('ssh %s "jps | grep -v Jps"' % i)

2、叢集檔案同路徑傳輸

touch /usr/bin/rsync.py
chmod 777 /usr/bin/rsync.py
vi /usr/bin/rsync.py
#!/usr/bin/python2
# coding:utf-8
import os, re, socket

# 獲取第一個引數
a = os.sys.argv
if len(a) != 2:
    print
a exit('使用方法:rsync.py $HADOOP_HOME') a = a[1] # 補全路徑 if not a.startswith('/'): a = os.path.join(os.getcwd(), a) if os.path.isdir(a) and not a.endswith('/'): a += '/' if not os.path.exists(a): print a exit('路徑不存在') # 檔案分發 hostname = socket.gethostname() with open('/etc/hosts') as f:
for i in re.findall('hadoop[0-9]+', f.read()): if i == hostname: continue aa = 'rsync -a %s %s:%s' % (a, i, a) print aa os.system(aa)

3、叢集source環境變數

https://yellow520.blog.csdn.net/article/details/112692486

4、叢集啟停

4.1、ZooKeeper群起

touch $ZOOKEEPER_HOME/bin/zookeeper.py
chmod 777 $ZOOKEEPER_HOME/bin/zookeeper.py
vi $ZOOKEEPER_HOME/bin/zookeeper.py
#!/usr/bin/python2
import os, re

cmd = 'zkServer.sh status'
a = os.sys.argv
if len(a) == 2:
    if a[1] == 'stop':
        cmd = 'zkServer.sh stop'
    elif a[1] == 'start':
        cmd = 'zkServer.sh start'

with open('/etc/hosts') as f:
    for i in re.findall('hadoop[0-9]+', f.read()):
        print i.center(40, '-')
        os.system('ssh %s "%s"' % (i, cmd))

4.2、Kafka群起

touch $KAFKA_HOME/bin/kafka.py
chmod 777 $KAFKA_HOME/bin/kafka.py
vi $KAFKA_HOME/bin/kafka.py
#!/usr/bin/python2
import os, re

cmd = 'kafka-server-start.sh -daemon $KAFKA_HOME/config/server.properties'
a = os.sys.argv
if len(a) == 2 and a[1] == 'stop':
    cmd = 'kafka-server-stop.sh'

with open('/etc/hosts') as f:
    for i in re.findall('hadoop[0-9]+', f.read()):
        print i.center(40, '-')
        os.system('ssh %s "%s"' % (i, cmd))

4.3、Hadoop啟停


4.4、HIVE啟停