大數據環境搭建Step1 zookeeper安裝配置

集羣搭建有三個節點

master 192.168.21.161
slave1 192.168.21.162
slave2 192.168.21.163java

軟件

Centos7
jdk-8u171-linux-x64.tar.gz
zookeeper-3.4.14linux

獲取軟件

獲取JDKapache

wget https://repo.huaweicloud.com/java/jdk/8u171-b11/jdk-8u171-linux-x64.tar.gz

獲取zookeepersegmentfault

wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz
更改主機名

修改/etc/sysconfig/network文件服務器

NETWORKING=yes
HOSTNAME=master

master主機的HOSTNAME=master, slave1主機的HOSTNAME=slave1, slave2主機的HOSTNAME=slave2ssh

配置hosts文件(三臺機器)

修改三臺主機的/etc/hosts文件內容。其中IP地址爲各主機實際的IP地址spa

192.168.21.161 master master.root
192.168.21.162 slave1 slave1.root
192.168.21.163 slave2 slave2.root
重啓生效(三臺機器)
reboot
關閉防火牆(三臺機器)
systemctl stop firewalld

systemctl status firewalld

確保防火牆關閉
屏幕快照 2019-11-21 上午10.47.28.pngcode

時間同步

時間同步的具體設置和處理請參照以前的文章
Linux下ntp時間服務器配置server

ssh免密登錄
  • (1)生成密鑰(三臺主機)blog

    ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa

    能夠看到在~/.ssh/目錄下生成了id_dsa,id_dsa.pub文件

  • (2)在master主機將slave1,slave2的id_dsa.pub文件copy到master下

    mkdir tmp
    cd tmp
    scp root@slave1:~/.ssh/id_dsa.pub ./2
    scp root@slave2:~/.ssh/id_dsa.pub ./3
  • (3)合併master,slave1,slave2的id_dsa.pub文件爲authorized_keys

    cat ~/.ssh/id_dsa.pub >> authorized_keys
    cat ./2 >> authorized_keys
    cat ./3 >> authorized_keys

    authorized_keys文件的內容以下
    屏幕快照 2019-11-21 下午1.40.37.png

  • (4)將authorized_keys文件copy到master, slave1, slave2的/root/.ssh目錄下

    cp ./authorized_keys ~/.ssh/
    scp ./authorized_keys root@slave1:~/.ssh/
    scp ./authorized_keys root@slave2:~/.ssh/

    如今在master上ssh slave1,ssh slave2就能夠免密碼直接登錄了。一樣slave1,slave2一樣也能夠免密碼登錄別的主機

安裝JDK
  • (1)解壓

    mkdir -p /usr/java
    tar -xzvf jdk-8u171-linux-x64.tar.gz -C /usr/java/
  • (2)修改環境變量
    vi /etc/profile
    添加以下內容

    export JAVA_HOME=/usr/java/jdk1.8.0_171
    export CLASSPATH=$JAVA_HOME/lib/
    export PATH=$PATH:$JAVA_HOME/bin
    export PATH JAVA_HOME CLASSPATH
  • (3)生效

    source /etc/profile
安裝zookeeper
  • (1) 解壓文件

    mkdir -p /usr/zookeeper
    tar -xzvf zookeeper-3.4.14.tar.gz -C /usr/zookeeper/
  • (2) 建data和log目錄

    cd /usr/zookeeper/zookeeper-3.4.14/
    mkdir zkdata
    mkdir zkdatalog
  • (3) 修改配置

    cd /usr/zookeeper/zookeeper-3.4.14/conf
    cp zoo_sample.cfg zoo.cfg

    修改zoo.cfg,確保以下內容

    tickTime=2000
    initLimit=10
    syncLimit=5
    
    dataDir=/usr/zookeeper/zookeeper-3.4.14/zkdata
    
    clientPort=2181
    
    dataLogDir=/usr/zookeeper/zookeeper-3.4.14/zkdatalog
    
    server.1=master:2888:3888
    server.2=slave1:2888:3888
    server.3=slave2:2888:3888
  • (4) 建立myid

    在master主機,/usr/zookeeper/zookeeper-3.4.14/zkdata下建立myid內容1
    屏幕快照 2019-11-21 下午2.24.20.png

  • (5) 將master主機下zookeeper複製分發到slave1,slave2

    scp -r /usr/zookeeper root@slave1:/usr/
    scp -r /usr/zookeeper root@slave2:/usr/
  • (6) 將slave1,slave2的myid更改成2,3
    確保slave1的myid爲2,slave2的myid爲3
    屏幕快照 2019-11-21 下午2.43.38.png

    屏幕快照 2019-11-21 下午2.44.13.png

  • (7)配置環境變量(三臺主機)
    vi /etc/profile
    添加以下內容

    export ZOOKEEPER_HOME=/usr/zookeeper/zookeeper-3.4.14
    PATH=$PATH:$ZOOKEEPER_HOME/bin

    執行

    source /etc/profile

    配置生效

  • (8)啓動zookeeper(三臺主機)

    cd /usr/zookeeper/zookeeper-3.4.14/
    ./bin/zkServer.sh start
    ./bin/zkServer.sh status

    屏幕快照 2019-11-21 下午2.50.37.png

    屏幕快照 2019-11-21 下午2.51.21.png

    屏幕快照 2019-11-21 下午2.52.01.png

    能夠看到一臺主機爲leader,兩臺主機爲follower

相關文章
相關標籤/搜索