• 分布式协调服务Zookeeper集群搭建


                  分布式协调服务Zookeeper集群搭建

                                               作者:尹正杰

    版权声明:原创作品,谢绝转载!否则将追究法律责任。

    一.安装jdk环境

    1>.操作环境

    [root@node101.yinzhengjie.org.cn ~]# cat /etc/redhat-release 
    CentOS Linux release 7.6.1810 (Core) 
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# uname -r
    3.10.0-957.el7.x86_64
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# uname -m
    x86_64
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# cat /etc/hosts | grep yinzhengjie            #注意,本片博客只有3台测试机,每台测试机器必须得配置jdk环境!
    172.30.1.101 node101.yinzhengjie.org.cn
    172.30.1.102 node102.yinzhengjie.org.cn
    172.30.1.103 node103.yinzhengjie.org.cn
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# free -h
                  total        used        free      shared  buff/cache   available
    Mem:           3.7G        331M        2.9G        9.4M        570M        3.3G
    Swap:          2.0G          0B        2.0G
    [root@node101.yinzhengjie.org.cn ~]# 

    2>.打开Oracle官方网站下载相应的平台的安装包(https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

    3>.卸载平台中已经存在的JDK版本 

    [root@node101.yinzhengjie.org.cn ~]# java -version
    openjdk version "1.8.0_201"
    OpenJDK Runtime Environment (build 1.8.0_201-b09)
    OpenJDK 64-Bit Server VM (build 25.201-b09, mixed mode)
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# rpm -qa *openjdk*
    java-1.7.0-openjdk-headless-1.7.0.191-2.6.15.5.el7.x86_64
    java-1.7.0-openjdk-1.7.0.191-2.6.15.5.el7.x86_64
    java-1.8.0-openjdk-headless-1.8.0.201.b09-2.el7_6.x86_64
    java-11-openjdk-headless-11.0.ea.28-7.el7.x86_64
    java-1.8.0-openjdk-devel-1.8.0.201.b09-2.el7_6.x86_64
    java-11-openjdk-11.0.ea.28-7.el7.x86_64
    java-1.8.0-openjdk-1.8.0.201.b09-2.el7_6.x86_64
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# rpm -e --nodeps java-1.7.0-openjdk-headless-1.7.0.191-2.6.15.5.el7.x86_64          #卸载JDK版本!
    [root@node101.yinzhengjie.org.cn ~]# rpm -e --nodeps java-1.7.0-openjdk-1.7.0.191-2.6.15.5.el7.x86_64
    [root@node101.yinzhengjie.org.cn ~]# rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.201.b09-2.el7_6.x86_64
    [root@node101.yinzhengjie.org.cn ~]# rpm -e --nodeps java-11-openjdk-headless-11.0.ea.28-7.el7.x86_64
    [root@node101.yinzhengjie.org.cn ~]# rpm -e --nodeps java-1.8.0-openjdk-devel-1.8.0.201.b09-2.el7_6.x86_64
    [root@node101.yinzhengjie.org.cn ~]# rpm -e --nodeps java-11-openjdk-11.0.ea.28-7.el7.x86_64
    [root@node101.yinzhengjie.org.cn ~]# rpm -e --nodeps java-1.8.0-openjdk-1.8.0.201.b09-2.el7_6.x86_64
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# rpm -qa *openjdk*
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# java -version
    -bash: /usr/bin/java: No such file or directory
    [root@node101.yinzhengjie.org.cn ~]#

    4>.将下载的jdk版本进行解压安装并配置环境变量(如果你下载的是rpm包的oracle jdk的话就无需配置环境变量啦!)

    [root@node101.yinzhengjie.org.cn ~]# mkdir /yinzhengjie/softwares -p
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# tar -zxf jdk-8u201-linux-x64.tar.gz -C /yinzhengjie/softwares/
    [root@node101.yinzhengjie.org.cn ~]#
    [root@node101.yinzhengjie.org.cn ~]# ll /yinzhengjie/softwares/jdk1.8.0_201/
    total 383856
    drwxr-xr-x. 2   10  143      4096 Dec 16 03:45 bin
    -r--r--r--. 1   10  143      3244 Dec 16 03:45 COPYRIGHT
    -rw-r--r--. 1 root root 366447449 Apr  9 15:27 hadoop-2.9.2.tar.gz
    drwxr-xr-x. 3   10  143      4096 Dec 16 03:45 include
    -rw-r--r--. 1   10  143   5207434 Dec 12 17:07 javafx-src.zip
    drwxr-xr-x. 5   10  143      4096 Dec 16 03:45 jre
    drwxr-xr-x. 5   10  143      4096 Dec 16 03:45 lib
    -r--r--r--. 1   10  143        40 Dec 16 03:45 LICENSE
    drwxr-xr-x. 4   10  143      4096 Dec 16 03:45 man
    -r--r--r--. 1   10  143       159 Dec 16 03:45 README.html
    -rw-r--r--. 1   10  143       424 Dec 16 03:45 release
    -rw-r--r--. 1   10  143  21103945 Dec 16 03:45 src.zip
    -rw-r--r--. 1   10  143    108109 Dec 12 17:07 THIRDPARTYLICENSEREADME-JAVAFX.txt
    -r--r--r--. 1   10  143    155002 Dec 16 03:45 THIRDPARTYLICENSEREADME.txt
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# tail -3 /etc/profile
    #Add by yinzhengjie
    JAVA_HOME=/yinzhengjie/softwares/jdk1.8.0_201
    PATH=$PATH:$JAVA_HOME/bin
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# source /etc/profile
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# java -version       
    java version "1.8.0_201"
    Java(TM) SE Runtime Environment (build 1.8.0_201-b09)
    Java HotSpot(TM) 64-Bit Server VM (build 25.201-b09, mixed mode)
    [root@node101.yinzhengjie.org.cn ~]#

    5>.将环境同步到其他节点 

    [root@node101.yinzhengjie.org.cn ~]# ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
    Generating public/private rsa key pair.
    Created directory '/root/.ssh'.
    Your identification has been saved in /root/.ssh/id_rsa.
    Your public key has been saved in /root/.ssh/id_rsa.pub.
    The key fingerprint is:
    SHA256:Ytkk9uzXOlYJPLDRaUAyqDzYv1n3CRk6NjN/nuhDbDo root@node101.yinzhengjie.org.cn
    The key's randomart image is:
    +---[RSA 2048]----+
    |     .o.oo .     |
    |    .  oo +      |
    | + .  o .*       |
    |. =  . Bo +      |
    |   o  +oSo o .   |
    |    ..OoB  .o    |
    |     = @.o.o.    |
    |    o E oo*o     |
    |       oo=+.     |
    +----[SHA256]-----+
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
    [root@node101.yinzhengjie.org.cn ~]# ssh-copy-id root@node102.yinzhengjie.org.cn
    /usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"
    The authenticity of host 'node102.yinzhengjie.org.cn (172.30.1.102)' can't be established.
    ECDSA key fingerprint is SHA256:rDA5nSO2LcozxK76hXrtZ1xiXXZTXqQWu+wkBdpMDQA.
    ECDSA key fingerprint is MD5:fd:75:9d:2b:28:ef:a2:0c:e2:c5:fc:fb:e9:5f:ee:c1.
    Are you sure you want to continue connecting (yes/no)? yes
    /usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
    /usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
    root@node102.yinzhengjie.org.cn's password: 
    
    Number of key(s) added: 1
    
    Now try logging into the machine, with:   "ssh 'root@node102.yinzhengjie.org.cn'"
    and check to make sure that only the key(s) you wanted were added.
    
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# ssh-copy-id root@node102.yinzhengjie.org.cn
    [root@node101.yinzhengjie.org.cn ~]# ssh-copy-id root@node103.yinzhengjie.org.cn
    /usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"
    The authenticity of host 'node103.yinzhengjie.org.cn (172.30.1.103)' can't be established.
    ECDSA key fingerprint is SHA256:5ucWsWQo98ucT5KLfpkXT9DtxurZgMQEMAtynmncvvE.
    ECDSA key fingerprint is MD5:6b:fd:ed:8e:83:33:86:97:b0:4c:9f:23:87:50:85:4e.
    Are you sure you want to continue connecting (yes/no)? yes
    /usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
    /usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
    root@node103.yinzhengjie.org.cn's password: 
    
    Number of key(s) added: 1
    
    Now try logging into the machine, with:   "ssh 'root@node103.yinzhengjie.org.cn'"
    and check to make sure that only the key(s) you wanted were added.
    
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# ssh-copy-id root@node103.yinzhengjie.org.cn
    [root@node101.yinzhengjie.org.cn ~]# scp -r /yinzhengjie/ root@node102.yinzhengjie.org.cn:/ 
    ......
    org.eclipse.equinox.p2.ql_2.0.100.v20131211-1531.jar                                                                                                                             100% 8979    17.5MB/s   00:00    
    org.eclipse.e4.ui.workbench.addons.swt.nl_zh_4.4.0.v20140623020002.jar                                                                                                           100% 2738     6.2MB/s   00:00    
    com.jrockit.mc.flightrecorder.configuration_5.5.2.174165.jar                                                                                                                     100% 3397     7.7MB/s   00:00    
    org.eclipse.equinox.p2.engine.nl_zh_4.4.0.v20140623020002.jar                                                                                                                    100% 2592     5.6MB/s   00:00    
    org.eclipse.osgi.services_3.4.0.v20140312-2051.jar                                                                                                                               100%   88KB  66.5MB/s   00:00    
    com.jrockit.mc.greychartplugin_5.5.2.174165.jar                                                                                                                                  100%  131KB  72.1MB/s   00:00    
    org.eclipse.equinox.p2.touchpoint.natives_1.1.100.v20140523-0116.jar                                                                                                             100%   52KB  55.8MB/s   00:00    
    org.eclipse.ui.net.nl_zh_4.4.0.v20140623020002.jar                                                                                                                               100% 2868     7.8MB/s   00:00    
    org.eclipse.equinox.p2.ui.nl_zh_4.4.0.v20140623020002.jar                                                                                                                        100% 4529    10.3MB/s   00:00    
    org.eclipse.core.filesystem_1.4.100.v20140514-1614.jar                                                                                                                           100%   57KB  47.0MB/s   00:00    
    org.eclipse.equinox.p2.director.app.nl_zh_4.4.0.v20140623020002.jar                                                                                                              100% 2613     3.7MB/s   00:00    
    org.eclipse.e4.core.contexts_1.3.100.v20140407-1019.jar                                                                                                                          100%   48KB  22.5MB/s   00:00    
    com.jrockit.mc.rjmx.ui.ja_5.5.2.174165.jar                                                                                                                                       100% 9550    14.1MB/s   00:00    
    org.eclipse.equinox.simpleconfigurator.manipulator_2.0.0.v20131217-1203.jar                                                                                                      100%   25KB  35.9MB/s   00:00    
    org.eclipse.equinox.p2.engine.nl_ja_4.4.0.v20140623020002.jar                                                                                                                    100% 4522    11.0MB/s   00:00    
    org.eclipse.jface.databinding_1.6.200.v20140528-1422.jar                                                                                                                         100%  271KB  89.7MB/s   00:00    
    org.eclipse.core.resources_3.9.1.v20140825-1431.jar                                                                                                                              100%  814KB  90.9MB/s   00:00    
    com.jrockit.mc.common_5.5.2.174165.jar                                                                                                                                           100%  240KB  86.9MB/s   00:00    
    artifacts.xml                                                                                                                                                                    100% 1388     3.2MB/s   00:00    
    com.oracle.jmc.executable.gtk.linux.x86_64_5.5.2                                                                                                                                 100%   43KB  45.9MB/s   00:00    
    com.jrockit.mc.rcp.product_root_5.5.2.174165                                                                                                                                     100% 3816KB 101.7MB/s   00:00    
    org.eclipse.rcp_root_4.4.0.v20141007-2301                                                                                                                                        100%   36KB  42.6MB/s   00:00    
    org.eclipse.equinox.p2.metadata.repository.prefs                                                                                                                                 100% 3405     5.4MB/s   00:00    
    org.eclipse.equinox.p2.artifact.repository.prefs                                                                                                                                 100% 8028    10.3MB/s   00:00    
    1512678761228.profile.gz                                                                                                                                                         100%  105KB  65.7MB/s   00:00    
    .lock                                                                                                                                                                            100%    0     0.0KB/s   00:00    
    1512678763613.profile.gz                                                                                                                                                         100%  105KB  75.2MB/s   00:00    
    1512678749009.profile.gz                                                                                                                                                         100%  364   982.8KB/s   00:00    
    1512678748591.profile.gz                                                                                                                                                         100%  360   972.2KB/s   00:00    
    ct.sym                                                                                                                                                                           100%   17MB 115.5MB/s   00:00    
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# scp -r /yinzhengjie/ root@node102.yinzhengjie.org.cn:/
    [root@node101.yinzhengjie.org.cn ~]# scp -r /yinzhengjie/ root@node103.yinzhengjie.org.cn:/
    ......
    org.eclipse.equinox.p2.ql_2.0.100.v20131211-1531.jar                                                                                                                             100% 8979    15.9MB/s   00:00    
    org.eclipse.e4.ui.workbench.addons.swt.nl_zh_4.4.0.v20140623020002.jar                                                                                                           100% 2738     6.2MB/s   00:00    
    com.jrockit.mc.flightrecorder.configuration_5.5.2.174165.jar                                                                                                                     100% 3397     6.4MB/s   00:00    
    org.eclipse.equinox.p2.engine.nl_zh_4.4.0.v20140623020002.jar                                                                                                                    100% 2592     5.2MB/s   00:00    
    org.eclipse.osgi.services_3.4.0.v20140312-2051.jar                                                                                                                               100%   88KB  58.9MB/s   00:00    
    com.jrockit.mc.greychartplugin_5.5.2.174165.jar                                                                                                                                  100%  131KB  74.8MB/s   00:00    
    org.eclipse.equinox.p2.touchpoint.natives_1.1.100.v20140523-0116.jar                                                                                                             100%   52KB  59.2MB/s   00:00    
    org.eclipse.ui.net.nl_zh_4.4.0.v20140623020002.jar                                                                                                                               100% 2868     7.9MB/s   00:00    
    org.eclipse.equinox.p2.ui.nl_zh_4.4.0.v20140623020002.jar                                                                                                                        100% 4529    10.3MB/s   00:00    
    org.eclipse.core.filesystem_1.4.100.v20140514-1614.jar                                                                                                                           100%   57KB  55.4MB/s   00:00    
    org.eclipse.equinox.p2.director.app.nl_zh_4.4.0.v20140623020002.jar                                                                                                              100% 2613     6.7MB/s   00:00    
    org.eclipse.e4.core.contexts_1.3.100.v20140407-1019.jar                                                                                                                          100%   48KB  56.7MB/s   00:00    
    com.jrockit.mc.rjmx.ui.ja_5.5.2.174165.jar                                                                                                                                       100% 9550    15.2MB/s   00:00    
    org.eclipse.equinox.simpleconfigurator.manipulator_2.0.0.v20131217-1203.jar                                                                                                      100%   25KB  29.7MB/s   00:00    
    org.eclipse.equinox.p2.engine.nl_ja_4.4.0.v20140623020002.jar                                                                                                                    100% 4522     8.3MB/s   00:00    
    org.eclipse.jface.databinding_1.6.200.v20140528-1422.jar                                                                                                                         100%  271KB  77.4MB/s   00:00    
    org.eclipse.core.resources_3.9.1.v20140825-1431.jar                                                                                                                              100%  814KB 100.5MB/s   00:00    
    com.jrockit.mc.common_5.5.2.174165.jar                                                                                                                                           100%  240KB  85.6MB/s   00:00    
    artifacts.xml                                                                                                                                                                    100% 1388     3.2MB/s   00:00    
    com.oracle.jmc.executable.gtk.linux.x86_64_5.5.2                                                                                                                                 100%   43KB  40.6MB/s   00:00    
    com.jrockit.mc.rcp.product_root_5.5.2.174165                                                                                                                                     100% 3816KB 101.1MB/s   00:00    
    org.eclipse.rcp_root_4.4.0.v20141007-2301                                                                                                                                        100%   36KB  34.7MB/s   00:00    
    org.eclipse.equinox.p2.metadata.repository.prefs                                                                                                                                 100% 3405     6.9MB/s   00:00    
    org.eclipse.equinox.p2.artifact.repository.prefs                                                                                                                                 100% 8028    16.2MB/s   00:00    
    1512678761228.profile.gz                                                                                                                                                         100%  105KB  40.2MB/s   00:00    
    .lock                                                                                                                                                                            100%    0     0.0KB/s   00:00    
    1512678763613.profile.gz                                                                                                                                                         100%  105KB  68.5MB/s   00:00    
    1512678749009.profile.gz                                                                                                                                                         100%  364     1.1MB/s   00:00    
    1512678748591.profile.gz                                                                                                                                                         100%  360   905.7KB/s   00:00    
    ct.sym                                                                                                                                                                           100%   17MB 115.2MB/s   00:00    
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# scp -r /yinzhengjie/ root@node103.yinzhengjie.org.cn:/ 
    [root@node101.yinzhengjie.org.cn ~]# scp /etc/profile root@node102.yinzhengjie.org.cn:/etc/
    profile                                                                                                                                                                          100% 1912     2.6MB/s   00:00    
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# scp /etc/profile root@node102.yinzhengjie.org.cn:/etc/
    [root@node101.yinzhengjie.org.cn ~]# scp /etc/profile root@node103.yinzhengjie.org.cn:/etc/
    profile                                                                                                                                                                          100% 1912     2.5MB/s   00:00    
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# scp /etc/profile root@node103.yinzhengjie.org.cn:/etc/

    6>.安装ansible软件

    [root@node101.yinzhengjie.org.cn ~/Downloads]# yum -y install ansible
    Loaded plugins: fastestmirror, langpacks
    Loading mirror speeds from cached hostfile
     * base: mirrors.aliyun.com
     * extras: mirrors.aliyun.com
     * updates: mirrors.aliyun.com
    base                                                                                                                                                                                                               | 3.6 kB  00:00:00     
    extras                                                                                                                                                                                                             | 3.4 kB  00:00:00     
    updates                                                                                                                                                                                                            | 3.4 kB  00:00:00     
    (1/2): extras/7/x86_64/primary_db                                                                                                                                                                                  | 187 kB  00:00:00     
    (2/2): updates/7/x86_64/primary_db                                                                                                                                                                                 | 3.4 MB  00:00:01     
    Resolving Dependencies
    --> Running transaction check
    ---> Package ansible.noarch 0:2.4.2.0-2.el7 will be installed
    --> Processing Dependency: sshpass for package: ansible-2.4.2.0-2.el7.noarch
    --> Processing Dependency: python2-jmespath for package: ansible-2.4.2.0-2.el7.noarch
    --> Processing Dependency: python-passlib for package: ansible-2.4.2.0-2.el7.noarch
    --> Processing Dependency: python-paramiko for package: ansible-2.4.2.0-2.el7.noarch
    --> Processing Dependency: python-jinja2 for package: ansible-2.4.2.0-2.el7.noarch
    --> Processing Dependency: python-httplib2 for package: ansible-2.4.2.0-2.el7.noarch
    --> Running transaction check
    ---> Package python-httplib2.noarch 0:0.9.2-1.el7 will be installed
    ---> Package python-jinja2.noarch 0:2.7.2-2.el7 will be installed
    --> Processing Dependency: python-babel >= 0.8 for package: python-jinja2-2.7.2-2.el7.noarch
    --> Processing Dependency: python-markupsafe for package: python-jinja2-2.7.2-2.el7.noarch
    ---> Package python-paramiko.noarch 0:2.1.1-9.el7 will be installed
    ---> Package python-passlib.noarch 0:1.6.5-2.el7 will be installed
    ---> Package python2-jmespath.noarch 0:0.9.0-3.el7 will be installed
    ---> Package sshpass.x86_64 0:1.06-2.el7 will be installed
    --> Running transaction check
    ---> Package python-babel.noarch 0:0.9.6-8.el7 will be installed
    ---> Package python-markupsafe.x86_64 0:0.11-10.el7 will be installed
    --> Finished Dependency Resolution
    
    Dependencies Resolved
    
    ==========================================================================================================================================================================================================================================
     Package                                                        Arch                                                Version                                                    Repository                                            Size
    ==========================================================================================================================================================================================================================================
    Installing:
     ansible                                                        noarch                                              2.4.2.0-2.el7                                              extras                                               7.6 M
    Installing for dependencies:
     python-babel                                                   noarch                                              0.9.6-8.el7                                                base                                                 1.4 M
     python-httplib2                                                noarch                                              0.9.2-1.el7                                                extras                                               115 k
     python-jinja2                                                  noarch                                              2.7.2-2.el7                                                base                                                 515 k
     python-markupsafe                                              x86_64                                              0.11-10.el7                                                base                                                  25 k
     python-paramiko                                                noarch                                              2.1.1-9.el7                                                updates                                              269 k
     python-passlib                                                 noarch                                              1.6.5-2.el7                                                extras                                               488 k
     python2-jmespath                                               noarch                                              0.9.0-3.el7                                                extras                                                39 k
     sshpass                                                        x86_64                                              1.06-2.el7                                                 extras                                                21 k
    
    Transaction Summary
    ==========================================================================================================================================================================================================================================
    Install  1 Package (+8 Dependent packages)
    
    Total download size: 10 M
    Installed size: 51 M
    Downloading packages:
    python-httplib2-0.9.2-1.el7.no FAILED                                          
    http://mirrors.cloud.aliyuncs.com/centos/7/extras/x86_64/Packages/python-httplib2-0.9.2-1.el7.noarch.rpm: [Errno 14] curl#6 - "Could not resolve host: mirrors.cloud.aliyuncs.com; Unknown error"       ]  0.0 B/s |    0 B  --:--:-- ETA 
    Trying other mirror.
    python-jinja2-2.7.2-2.el7.noar FAILED                                          
    http://mirrors.cloud.aliyuncs.com/centos/7/os/x86_64/Packages/python-jinja2-2.7.2-2.el7.noarch.rpm: [Errno 14] curl#6 - "Could not resolve host: mirrors.cloud.aliyuncs.com; Unknown error"             ]  0.0 B/s |    0 B  --:--:-- ETA 
    Trying other mirror.
    (1/9): python-markupsafe-0.11-10.el7.x86_64.rpm                                                                                                                                                                    |  25 kB  00:00:00     
    (2/9): python-babel-0.9.6-8.el7.noarch.rpm                                                                                                                                                                         | 1.4 MB  00:00:00     
    (3/9): python-paramiko-2.1.1-9.el7.noarch.rpm                                                                                                                                                                      | 269 kB  00:00:01     
    (4/9): ansible-2.4.2.0-2.el7.noarch.rpm                                                                                                                                                                            | 7.6 MB  00:00:04     
    (5/9): python2-jmespath-0.9.0-3.el7.noarch.rpm                                                                                                                                                                     |  39 kB  00:00:00     
    (6/9): sshpass-1.06-2.el7.x86_64.rpm                                                                                                                                                                               |  21 kB  00:00:00     
    (7/9): python-httplib2-0.9.2-1.el7.noarch.rpm                                                                                                                                                                      | 115 kB  00:00:00     
    (8/9): python-jinja2-2.7.2-2.el7.noarch.rpm                                                                                                                                                                        | 515 kB  00:00:00     
    (9/9): python-passlib-1.6.5-2.el7.noarch.rpm                                                                                                                                                                       | 488 kB  00:00:05     
    ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
    Total                                                                                                                                                                                                     1.7 MB/s |  10 MB  00:00:06     
    Running transaction check
    Running transaction test
    Transaction test succeeded
    Running transaction
      Installing : python-httplib2-0.9.2-1.el7.noarch                                                                                                                                                                                     1/9 
      Installing : sshpass-1.06-2.el7.x86_64                                                                                                                                                                                              2/9 
      Installing : python-babel-0.9.6-8.el7.noarch                                                                                                                                                                                        3/9 
      Installing : python-paramiko-2.1.1-9.el7.noarch                                                                                                                                                                                     4/9 
      Installing : python2-jmespath-0.9.0-3.el7.noarch                                                                                                                                                                                    5/9 
      Installing : python-passlib-1.6.5-2.el7.noarch                                                                                                                                                                                      6/9 
      Installing : python-markupsafe-0.11-10.el7.x86_64                                                                                                                                                                                   7/9 
      Installing : python-jinja2-2.7.2-2.el7.noarch                                                                                                                                                                                       8/9 
      Installing : ansible-2.4.2.0-2.el7.noarch                                                                                                                                                                                           9/9 
      Verifying  : python-markupsafe-0.11-10.el7.x86_64                                                                                                                                                                                   1/9 
      Verifying  : python-jinja2-2.7.2-2.el7.noarch                                                                                                                                                                                       2/9 
      Verifying  : python-passlib-1.6.5-2.el7.noarch                                                                                                                                                                                      3/9 
      Verifying  : python2-jmespath-0.9.0-3.el7.noarch                                                                                                                                                                                    4/9 
      Verifying  : python-paramiko-2.1.1-9.el7.noarch                                                                                                                                                                                     5/9 
      Verifying  : python-babel-0.9.6-8.el7.noarch                                                                                                                                                                                        6/9 
      Verifying  : ansible-2.4.2.0-2.el7.noarch                                                                                                                                                                                           7/9 
      Verifying  : sshpass-1.06-2.el7.x86_64                                                                                                                                                                                              8/9 
      Verifying  : python-httplib2-0.9.2-1.el7.noarch                                                                                                                                                                                     9/9 
    
    Installed:
      ansible.noarch 0:2.4.2.0-2.el7                                                                                                                                                                                                          
    
    Dependency Installed:
      python-babel.noarch 0:0.9.6-8.el7      python-httplib2.noarch 0:0.9.2-1.el7  python-jinja2.noarch 0:2.7.2-2.el7  python-markupsafe.x86_64 0:0.11-10.el7  python-paramiko.noarch 0:2.1.1-9.el7  python-passlib.noarch 0:1.6.5-2.el7 
      python2-jmespath.noarch 0:0.9.0-3.el7  sshpass.x86_64 0:1.06-2.el7          
    
    Complete!
    [root@node101.yinzhengjie.org.cn ~/Downloads]# 
    [root@node101.yinzhengjie.org.cn ~/Downloads]# yum -y install ansible
    [root@node101.yinzhengjie.org.cn ~]# tail -5 /etc/ansible/hosts                                 #编辑ansible的主机配置文件
    [namenode]
    node101.yinzhengjie.org.cn
    
    [datanode]
    node[101:103].yinzhengjie.org.cn
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# tail -5 /etc/ansible/hosts                                             #编辑ansible的主机配置文件
    [root@node101.yinzhengjie.org.cn ~]# ansible all -m shell -a 'ln -s /yinzhengjie/softwares/jdk1.8.0_201/bin/jps /usr/local/bin/'
     [WARNING]: Consider using file module with state=link rather than running ln
    
    node103.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    
    
    node102.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    
    
    node101.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    
    
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# ansible all -m shell -a 'ln -s /yinzhengjie/softwares/jdk1.8.0_201/bin/jps /usr/local/bin/'      #测试ansible是否可用

    二.搭建zookeeper集群

    1>.下载zookeeper软件(下载地址:https://www.apache.org/dyn/closer.cgi/zookeeper/ 

    [root@node101.yinzhengjie.org.cn ~]# wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz
    --2019-04-12 08:48:40--  https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz
    Resolving mirrors.tuna.tsinghua.edu.cn (mirrors.tuna.tsinghua.edu.cn)... 101.6.8.193, 2402:f000:1:408:8100::1
    Connecting to mirrors.tuna.tsinghua.edu.cn (mirrors.tuna.tsinghua.edu.cn)|101.6.8.193|:443... connected.
    HTTP request sent, awaiting response... 200 OK
    Length: 37676320 (36M) [application/x-gzip]
    Saving to: ‘zookeeper-3.4.14.tar.gz’
    
    100%[============================================================================================================================================>] 37,676,320  7.57MB/s   in 4.5s   
    
    2019-04-12 08:48:45 (7.94 MB/s) - ‘zookeeper-3.4.14.tar.gz’ saved [37676320/37676320]
    
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.4.14/zookeeper-3.4.14.tar.gz

    2>.解压zookeeper并配置环境变量

    [root@node101.yinzhengjie.org.cn ~]# tar -zxf zookeeper-3.4.14.tar.gz -C /yinzhengjie/softwares/
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# ll /yinzhengjie/softwares/zookeeper-3.4.14/
    total 1672
    drwxr-xr-x  2 2002 2002     202 Mar  6 09:09 bin
    -rw-rw-r--  1 2002 2002   97426 Mar  6 08:50 build.xml
    drwxr-xr-x  2 2002 2002      77 Mar  6 09:09 conf
    drwxr-xr-x  2 2002 2002    4096 Mar  6 09:10 dist-maven
    -rw-rw-r--  1 2002 2002    1709 Mar  6 08:50 ivysettings.xml
    -rw-rw-r--  1 2002 2002   10742 Mar  6 08:50 ivy.xml
    drwxr-xr-x  4 2002 2002     308 Mar  6 09:09 lib
    -rw-rw-r--  1 2002 2002   11970 Mar  6 08:50 LICENSE.txt
    -rw-rw-r--  1 2002 2002    3132 Mar  6 08:50 NOTICE.txt
    -rw-rw-r--  1 2002 2002   31622 Mar  6 08:50 pom.xml
    -rw-rw-r--  1 2002 2002    1765 Mar  6 08:50 README.md
    -rw-rw-r--  1 2002 2002    1770 Mar  6 08:50 README_packaging.txt
    drwxr-xr-x  3 2002 2002      22 Mar  6 08:50 src
    -rw-rw-r--  1 2002 2002 1515359 Mar  6 08:50 zookeeper-3.4.14.jar
    -rw-rw-r--  1 2002 2002     836 Mar  6 09:10 zookeeper-3.4.14.jar.asc
    -rw-rw-r--  1 2002 2002      33 Mar  6 08:50 zookeeper-3.4.14.jar.md5
    -rw-rw-r--  1 2002 2002      41 Mar  6 08:50 zookeeper-3.4.14.jar.sha1
    drwxr-xr-x  3 2002 2002      47 Mar  6 09:09 zookeeper-client
    drwxr-xr-x 12 2002 2002    4096 Mar  6 09:09 zookeeper-contrib
    drwxr-xr-x  7 2002 2002    4096 Mar  6 09:09 zookeeper-docs
    drwxr-xr-x  3 2002 2002      35 Mar  6 09:09 zookeeper-it
    drwxr-xr-x  4 2002 2002      46 Mar  6 09:09 zookeeper-jute
    drwxr-xr-x  5 2002 2002     176 Mar  6 09:09 zookeeper-recipes
    drwxr-xr-x  3 2002 2002      32 Mar  6 09:09 zookeeper-server
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# tar -zxf zookeeper-3.4.14.tar.gz -C /yinzhengjie/softwares/
    [root@node101.yinzhengjie.org.cn ~]# tail -3 /etc/profile
    #ADD ZOOKEEPER_HOME PATH
    ZOOKEEPER_HOME=/yinzhengjie/softwares/zookeeper-3.4.14
    PATH=$PATH:$ZOOKEEPER_HOME/bin
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# source /etc/profile
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# tail -3 /etc/profile

    3>.配置zookeeper的配置文件

    [root@node101.yinzhengjie.org.cn ~]# cp /yinzhengjie/softwares/zookeeper-3.4.14/conf/zoo_sample.cfg /yinzhengjie/softwares/zookeeper-3.4.14/conf/zoo.cfg 
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# ll /yinzhengjie/softwares/zookeeper-3.4.14/conf/
    total 16
    -rw-rw-r-- 1 2002 2002  535 Mar  6 08:50 configuration.xsl
    -rw-rw-r-- 1 2002 2002 2161 Mar  6 08:50 log4j.properties
    -rw-r--r-- 1 root root  922 Apr 12 08:55 zoo.cfg
    -rw-rw-r-- 1 2002 2002  922 Mar  6 08:50 zoo_sample.cfg
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# cp /yinzhengjie/softwares/zookeeper-3.4.14/conf/zoo_sample.cfg /yinzhengjie/softwares/zookeeper-3.4.14/conf/zoo.cfg
    [root@node101.yinzhengjie.org.cn ~]# cat /yinzhengjie/softwares/zookeeper-3.4.14/conf/zoo.cfg 
    # 滴答,计时的基本单位,默认是2000毫秒,即2秒。它是zookeeper最小的时间单位,用于丈量心跳时间和超时时间等,通常设置成默认2秒即可。
    tickTime=2000
    
    # 初始化限制是10滴答,默认是10个滴答,即默认是20秒。指定follower节点初始化是链接leader节点的最大tick次数。
    initLimit=5
    
    # 数据同步的时间限制,默认是5个滴答,即默认时间是10秒。设定了follower节点与leader节点进行同步的最大时间。与initLimit类似,它也是以tickTime为单位进行指定的。
    syncLimit=2
    
    # 指定zookeeper的工作目录,这是一个非常重要的参数,zookeeper会在内存中在内存只能中保存系统快照,并定期写入该路径指定的文件夹中。生产环境中需要注意该文件夹的磁盘占用情况。
    dataDir=/home/yinzhengjie/zookeeper
    
    # 监听zookeeper的默认端口。zookeeper监听客户端链接的端口,一般设置成默认2181即可。
    clientPort=2181
    
    # 这个操作将限制连接到 ZooKeeper 的客户端的数量,限制并发连接的数量,它通过 IP 来区分不同的客户端。此配置选项可以用来阻止某些类别的 Dos 攻击。将它设置为 0 或者忽略而不进行设置将会取消对并发连接的限制。
    #maxClientCnxns=60
     
    # 在上文中已经提到,3.4.0及之后版本,ZK提供了自动清理事务日志和快照文件的功能,这个参数指定了清理频率,单位是小时,需要配置一个1或更大的整数,默认是0,表示不开启自动清理功能。
    #autopurge.purgeInterval=1
    
    # 这个参数和上面的参数搭配使用,这个参数指定了需要保留的文件数目。默认是保留3个。
    #autopurge.snapRetainCount=3
    
    #server.x=[hostname]:nnnnn[:nnnnn],这里的x是一个数字,与myid文件中的id是一致的。右边可以配置两个端口,第一个端口用于F和L之间的数据同步和其它通信,第二个端口用于Leader选举过程中投票通信。  
    server.101=node101.yinzhengjie.org.cn:2888:3888
    server.102=node102.yinzhengjie.org.cn:2888:3888
    server.103=node103.yinzhengjie.org.cn:2888:3888
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# cat /yinzhengjie/softwares/zookeeper-3.4.14/conf/zoo.cfg
    [root@node101.yinzhengjie.org.cn ~]# cat /yinzhengjie/softwares/zookeeper-3.4.14/conf/java.env
    #!/bin/bash
    #@author :yinzhengjie
    #blog:http://www.cnblogs.com/yinzhengjie
    #EMAIL:y1053419035@qq.com
    
    #指定JDK的安装路径
    export JAVA_HOME=/yinzhengjie/softwares/jdk1.8.0_201
    
    #指定zookeeper的heap内存大小
    export JVMFLAGS="-Xms256m -Xmx256m $JVMFLAGS"
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# cat /yinzhengjie/softwares/zookeeper-3.4.14/conf/java.env          #创建配置zookeeper的堆内存配置文件

    4>.编写zookeeper的启动脚本

    [root@node101.yinzhengjie.org.cn ~]# vi /usr/local/bin/xzk.sh
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# cat /usr/local/bin/xzk.sh
    #!/bin/bash
    #@author :yinzhengjie
    #blog:http://www.cnblogs.com/yinzhengjie
    #EMAIL:y1053419035@qq.com
    
    #判断用户是否传参
    if [ $# -ne 1 ];then
        echo "无效参数,用法为: $0  {start|stop|restart|status}"
        exit
    fi
    
    #获取用户输入的命令
    cmd=$1
    
    #定义函数功能
    function zookeeperManger(){
        case $cmd in
        start)
            echo "启动服务"        
            remoteExecution start
            ;;
        stop)
            echo "停止服务"
            remoteExecution stop
            ;;
        restart)
            echo "重启服务"
            remoteExecution restart
            ;;
        status)
            echo "查看状态"
            remoteExecution status
            ;;
        *)
            echo "无效参数,用法为: $0  {start|stop|restart|status}"
            ;;
        esac
    }
    
    
    #定义执行的命令
    function remoteExecution(){
        for (( i=101 ; i<=103 ; i++ )) ; do
                tput setaf 2
                echo ========== node${i}.yinzhengjie.org.cn zkServer.sh  $1 ================
                tput setaf 9
                ssh node${i}.yinzhengjie.org.cn  "source /etc/profile ; zkServer.sh $1"
        done
    }
    
    #调用函数
    zookeeperManger
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# vi /usr/local/bin/xzk.sh
    [root@node101.yinzhengjie.org.cn ~]# ll /usr/local/bin/xzk.sh
    -rw-r--r-- 1 root root 1125 Apr 12 09:03 /usr/local/bin/xzk.sh
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# chmod +x /usr/local/bin/xzk.sh
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# ll /usr/local/bin/xzk.sh
    -rwxr-xr-x 1 root root 1125 Apr 12 09:03 /usr/local/bin/xzk.sh
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# chmod +x /usr/local/bin/xzk.sh

    5>.创建myid文件并写入服务器编号

    [root@node101.yinzhengjie.org.cn ~]# ansible all -m shell -a 'mkdir /home/yinzhengjie/zookeeper/'
     [WARNING]: Consider using file module with state=directory rather than running mkdir
    
    node101.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    
    
    node103.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    
    
    node102.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    
    
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# ansible all -m shell -a 'mkdir /home/yinzhengjie/zookeeper/'
    [root@node101.yinzhengjie.org.cn ~]# for (( i=101;i<=103;i++ )) do ssh node${i}.yinzhengjie.org.cn "echo -n $i > /home/yinzhengjie/zookeeper/myid" ;done
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# ansible all -m shell -a 'cat /home/yinzhengjie/zookeeper/myid'
    node102.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    102
    
    node103.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    103
    
    node101.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    101
    
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# for (( i=101;i<=103;i++ )) do ssh node${i}.yinzhengjie.org.cn "echo -n $i > /home/yinzhengjie/zookeeper/myid" ;done

    6>.分发配置文件

    [root@node101.yinzhengjie.org.cn ~]# scp /etc/profile node102.yinzhengjie.org.cn:/etc/
    profile                                                                                                                                             100% 2127     1.2MB/s   00:00    
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# scp /etc/profile node102.yinzhengjie.org.cn:/etc/
    [root@node101.yinzhengjie.org.cn ~]# scp /etc/profile node103.yinzhengjie.org.cn:/etc/
    profile                                                                                                                                             100% 2127     1.4MB/s   00:00    
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# scp /etc/profile node103.yinzhengjie.org.cn:/etc/
    [root@node101.yinzhengjie.org.cn ~]# scp -r /yinzhengjie/softwares/zookeeper-3.4.14/ node102.yinzhengjie.org.cn:/yinzhengjie/softwares/
    ........
    log.42                                                                                                                                              100%  184   128.3KB/s   00:00    
    log.63b                                                                                                                                             100%   48KB  22.7MB/s   00:00    
    snapshot.0                                                                                                                                          100%  296   277.6KB/s   00:00    
    snapshot.272                                                                                                                                        100%   55KB  26.5MB/s   00:00    
    snapshot.273                                                                                                                                        100%   55KB  24.3MB/s   00:00    
    snapshot.639                                                                                                                                        100%  140KB  27.2MB/s   00:00    
    snapshot.83f                                                                                                                                        100% 4824     3.5MB/s   00:00    
    minikdc-krb5.conf                                                                                                                                   100% 1103     1.3MB/s   00:00    
    minikdc.ldiff                                                                                                                                       100% 1630     2.2MB/s   00:00    
    log.100000001                                                                                                                                       100% 2401KB  50.2MB/s   00:00    
    log.100001bf0                                                                                                                                       100% 1001KB  59.6MB/s   00:00    
    snapshot.100000000                                                                                                                                  100%   73    17.1KB/s   00:00    
    snapshot.100001bec                                                                                                                                  100% 2507KB  61.6MB/s   00:00    
    check_compatibility.py                                                                                                                              100% 7212     4.7MB/s   00:00    
    checkstyle-noframes-sorted.xsl                                                                                                                      100% 5489     6.5MB/s   00:00    
    checkstyle.xml                                                                                                                                      100% 7489     7.3MB/s   00:00    
    findbugsExcludeFile.xml                                                                                                                             100% 5027     6.6MB/s   00:00    
    log4j.properties                                                                                                                                    100% 2712     1.9MB/s   00:00    
    test-patch.properties                                                                                                                               100%  855   930.7KB/s   00:00    
    test-github-pr.sh                                                                                                                                   100%   24KB   9.7MB/s   00:00    
    test-patch.sh                                                                                                                                       100%   24KB  19.4MB/s   00:00    
    pom.xml                                                                                                                                             100%   10KB   7.6MB/s   00:00    
    LICENSE.txt                                                                                                                                         100%   12KB   5.9MB/s   00:00    
    NOTICE.txt                                                                                                                                          100% 3132     1.2MB/s   00:00    
    README.md                                                                                                                                           100% 1765     1.4MB/s   00:00    
    README_packaging.txt                                                                                                                                100% 1770     2.5MB/s   00:00    
    build.xml                                                                                                                                           100%   95KB  39.5MB/s   00:00    
    ivy.xml                                                                                                                                             100%   10KB   8.2MB/s   00:00    
    ivysettings.xml                                                                                                                                     100% 1709     1.3MB/s   00:00    
    pom.xml                                                                                                                                             100%   31KB   8.9MB/s   00:00    
    zookeeper-3.4.14.jar                                                                                                                                100% 1480KB  41.5MB/s   00:00    
    zookeeper-3.4.14.jar.md5                                                                                                                            100%   33    25.6KB/s   00:00    
    zookeeper-3.4.14.jar.sha1                                                                                                                           100%   41    60.7KB/s   00:00    
    zookeeper-3.4.14.jar.asc                                                                                                                            100%  836     1.2MB/s   00:00    
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# scp -r /yinzhengjie/softwares/zookeeper-3.4.14/ node102.yinzhengjie.org.cn:/yinzhengjie/softwares/
    [root@node101.yinzhengjie.org.cn ~]# scp -r /yinzhengjie/softwares/zookeeper-3.4.14/ node103.yinzhengjie.org.cn:/yinzhengjie/softwares/
    
    ......
    snapshot.273                                                                                                                                        100%   55KB  14.8MB/s   00:00    
    snapshot.639                                                                                                                                        100%  140KB  21.7MB/s   00:00    
    snapshot.83f                                                                                                                                        100% 4824     4.4MB/s   00:00    
    minikdc-krb5.conf                                                                                                                                   100% 1103     1.0MB/s   00:00    
    minikdc.ldiff                                                                                                                                       100% 1630     1.4MB/s   00:00    
    log.100000001                                                                                                                                       100% 2401KB  53.2MB/s   00:00    
    log.100001bf0                                                                                                                                       100% 1001KB  46.5MB/s   00:00    
    snapshot.100000000                                                                                                                                  100%   73    40.2KB/s   00:00    
    snapshot.100001bec                                                                                                                                  100% 2507KB  57.4MB/s   00:00    
    check_compatibility.py                                                                                                                              100% 7212     1.4MB/s   00:00    
    checkstyle-noframes-sorted.xsl                                                                                                                      100% 5489     4.4MB/s   00:00    
    checkstyle.xml                                                                                                                                      100% 7489     5.0MB/s   00:00    
    findbugsExcludeFile.xml                                                                                                                             100% 5027     4.2MB/s   00:00    
    log4j.properties                                                                                                                                    100% 2712     2.5MB/s   00:00    
    test-patch.properties                                                                                                                               100%  855   376.7KB/s   00:00    
    test-github-pr.sh                                                                                                                                   100%   24KB   6.3MB/s   00:00    
    test-patch.sh                                                                                                                                       100%   24KB  13.5MB/s   00:00    
    pom.xml                                                                                                                                             100%   10KB   6.5MB/s   00:00    
    LICENSE.txt                                                                                                                                         100%   12KB   4.9MB/s   00:00    
    NOTICE.txt                                                                                                                                          100% 3132     2.8MB/s   00:00    
    README.md                                                                                                                                           100% 1765     1.9MB/s   00:00    
    README_packaging.txt                                                                                                                                100% 1770     1.6MB/s   00:00    
    build.xml                                                                                                                                           100%   95KB  27.3MB/s   00:00    
    ivy.xml                                                                                                                                             100%   10KB  10.1MB/s   00:00    
    ivysettings.xml                                                                                                                                     100% 1709     1.3MB/s   00:00    
    pom.xml                                                                                                                                             100%   31KB  13.6MB/s   00:00    
    zookeeper-3.4.14.jar                                                                                                                                100% 1480KB  42.5MB/s   00:00    
    zookeeper-3.4.14.jar.md5                                                                                                                            100%   33    38.8KB/s   00:00    
    zookeeper-3.4.14.jar.sha1                                                                                                                           100%   41    29.3KB/s   00:00    
    zookeeper-3.4.14.jar.asc                                                                                                                            100%  836   690.2KB/s   00:00    
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# scp -r /yinzhengjie/softwares/zookeeper-3.4.14/ node103.yinzhengjie.org.cn:/yinzhengjie/softwares/

    7>.启动zookeeper集群

    [root@node101.yinzhengjie.org.cn ~]# ansible all -m shell -a 'grep SELINUX= /etc/selinux/config |  grep -v ^#'
    node102.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    SELINUX=enforcing
    
    node103.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    SELINUX=enforcing
    
    node101.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    SELINUX=enforcing
    
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# ansible all -m shell -a 'grep SELINUX= /etc/selinux/config | grep -v ^#'
    [root@node101.yinzhengjie.org.cn ~]# ansible all -m shell -a 'sed -i s#SELINUX=enforcing#SELINUX=disabled# /etc/selinux/config'
     [WARNING]: Consider using template or lineinfile module rather than running sed
    
    node103.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    
    
    node102.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    
    
    node101.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    
    
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# ansible all -m shell -a 'sed -i s#SELINUX=enforcing#SELINUX=disabled# /etc/selinux/config'
    [root@node101.yinzhengjie.org.cn ~]# ansible all -m shell -a 'grep SELINUX= /etc/selinux/config |  grep -v ^#'                 
    node102.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    SELINUX=disabled
    
    node103.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    SELINUX=disabled
    
    node101.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    SELINUX=disabled
    
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# ansible all -m shell -a 'grep SELINUX= /etc/selinux/config | grep -v ^#'
    [root@node101.yinzhengjie.org.cn ~]# ansible all -m shell -a 'getenforce'                                                      
    node103.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    Enforcing
    
    node102.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    Enforcing
    
    node101.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    Enforcing
    
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# ansible all -m shell -a 'getenforce'
    [root@node101.yinzhengjie.org.cn ~]# ansible all -m shell -a 'setenforce 0' 
    node103.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    
    
    node102.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    
    
    node101.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    
    
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# ansible all -m shell -a 'setenforce 0'
    [root@node101.yinzhengjie.org.cn ~]# ansible all -m shell -a 'getenforce'
    node102.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    Permissive
    
    node103.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    Permissive
    
    node101.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    Permissive
    
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# ansible all -m shell -a 'getenforce'                            #以上操作是禁用selinux
    [root@node101.yinzhengjie.org.cn ~]# ansible all -m shell -a 'systemctl status firewalld'
    node103.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    ● firewalld.service - firewalld - dynamic firewall daemon
       Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
       Active: active (running) since Tue 2019-04-23 11:22:42 CST; 2 days ago
         Docs: man:firewalld(1)
     Main PID: 3916 (firewalld)
        Tasks: 2
       CGroup: /system.slice/firewalld.service
               └─3916 /usr/bin/python -Es /usr/sbin/firewalld --nofork --nopid
    
    Apr 23 11:22:41 node103.yinzhengjie.org.cn systemd[1]: Starting firewalld - dynamic firewall daemon...
    Apr 23 11:22:42 node103.yinzhengjie.org.cn systemd[1]: Started firewalld - dynamic firewall daemon.
    
    node102.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    ● firewalld.service - firewalld - dynamic firewall daemon
       Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
       Active: active (running) since Tue 2019-04-23 11:22:27 CST; 2 days ago
         Docs: man:firewalld(1)
     Main PID: 3929 (firewalld)
        Tasks: 2
       CGroup: /system.slice/firewalld.service
               └─3929 /usr/bin/python -Es /usr/sbin/firewalld --nofork --nopid
    
    Apr 23 11:22:26 node102.yinzhengjie.org.cn systemd[1]: Starting firewalld - dynamic firewall daemon...
    Apr 23 11:22:27 node102.yinzhengjie.org.cn systemd[1]: Started firewalld - dynamic firewall daemon.
    
    node101.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    ● firewalld.service - firewalld - dynamic firewall daemon
       Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
       Active: active (running) since Tue 2019-04-23 11:22:10 CST; 2 days ago
         Docs: man:firewalld(1)
     Main PID: 4068 (firewalld)
        Tasks: 2
       CGroup: /system.slice/firewalld.service
               └─4068 /usr/bin/python -Es /usr/sbin/firewalld --nofork --nopid
    
    Apr 23 11:22:09 node101.yinzhengjie.org.cn systemd[1]: Starting firewalld - dynamic firewall daemon...
    Apr 23 11:22:10 node101.yinzhengjie.org.cn systemd[1]: Started firewalld - dynamic firewall daemon.
    
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# ansible all -m shell -a 'systemctl status firewalld'
    [root@node101.yinzhengjie.org.cn ~]# ansible all -m shell -a 'systemctl stop firewalld'  
    node101.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    
    
    node102.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    
    
    node103.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    
    
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# ansible all -m shell -a 'systemctl stop firewalld'
    [root@node101.yinzhengjie.org.cn ~]# ansible all -m shell -a 'systemctl disable firewalld'
    node101.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
    Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
    
    node103.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
    Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
    
    node102.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
    Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
    
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# ansible all -m shell -a 'systemctl disable firewalld'  
    [root@node101.yinzhengjie.org.cn ~]# ansible all -m shell -a 'systemctl status firewalld'   
    node103.yinzhengjie.org.cn | FAILED | rc=3 >>
    ● firewalld.service - firewalld - dynamic firewall daemon
       Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
       Active: inactive (dead)
         Docs: man:firewalld(1)
    
    Apr 23 11:22:41 node103.yinzhengjie.org.cn systemd[1]: Starting firewalld - dynamic firewall daemon...
    Apr 23 11:22:42 node103.yinzhengjie.org.cn systemd[1]: Started firewalld - dynamic firewall daemon.
    Apr 25 14:50:48 node103.yinzhengjie.org.cn systemd[1]: Stopping firewalld - dynamic firewall daemon...
    Apr 25 14:50:49 node103.yinzhengjie.org.cn systemd[1]: Stopped firewalld - dynamic firewall daemon.non-zero return code
    
    node102.yinzhengjie.org.cn | FAILED | rc=3 >>
    ● firewalld.service - firewalld - dynamic firewall daemon
       Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
       Active: inactive (dead)
         Docs: man:firewalld(1)
    
    Apr 23 11:22:26 node102.yinzhengjie.org.cn systemd[1]: Starting firewalld - dynamic firewall daemon...
    Apr 23 11:22:27 node102.yinzhengjie.org.cn systemd[1]: Started firewalld - dynamic firewall daemon.
    Apr 25 14:50:48 node102.yinzhengjie.org.cn systemd[1]: Stopping firewalld - dynamic firewall daemon...
    Apr 25 14:50:49 node102.yinzhengjie.org.cn systemd[1]: Stopped firewalld - dynamic firewall daemon.non-zero return code
    
    node101.yinzhengjie.org.cn | FAILED | rc=3 >>
    ● firewalld.service - firewalld - dynamic firewall daemon
       Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
       Active: inactive (dead)
         Docs: man:firewalld(1)
    
    Apr 23 11:22:09 node101.yinzhengjie.org.cn systemd[1]: Starting firewalld - dynamic firewall daemon...
    Apr 23 11:22:10 node101.yinzhengjie.org.cn systemd[1]: Started firewalld - dynamic firewall daemon.
    Apr 25 14:50:48 node101.yinzhengjie.org.cn systemd[1]: Stopping firewalld - dynamic firewall daemon...
    Apr 25 14:50:49 node101.yinzhengjie.org.cn systemd[1]: Stopped firewalld - dynamic firewall daemon.non-zero return code
    
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# ansible all -m shell -a 'systemctl status firewalld'                    #以上操作是禁用firewalld
    [root@node101.yinzhengjie.org.cn ~]# ansible all -m shell -a 'jps'
    node101.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    Jps
    
    node103.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    Jps
    
    node102.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    Jps
    
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# ansible all -m shell -a 'jps'
    [root@node101.yinzhengjie.org.cn ~]# xzk.sh start
    启动服务
    ========== node101.yinzhengjie.org.cn zkServer.sh start ================
    ZooKeeper JMX enabled by default
    Using config: /yinzhengjie/softwares/zookeeper-3.4.14/bin/../conf/zoo.cfg
    Starting zookeeper ... STARTED
    ========== node102.yinzhengjie.org.cn zkServer.sh start ================
    ZooKeeper JMX enabled by default
    Using config: /yinzhengjie/softwares/zookeeper-3.4.14/bin/../conf/zoo.cfg
    Starting zookeeper ... STARTED
    ========== node103.yinzhengjie.org.cn zkServer.sh start ================
    ZooKeeper JMX enabled by default
    Using config: /yinzhengjie/softwares/zookeeper-3.4.14/bin/../conf/zoo.cfg
    Starting zookeeper ... STARTED
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# xzk.sh start
    [root@node101.yinzhengjie.org.cn ~]# xzk.sh status
    查看状态
    ========== node101.yinzhengjie.org.cn zkServer.sh status ================
    ZooKeeper JMX enabled by default
    Using config: /yinzhengjie/softwares/zookeeper-3.4.14/bin/../conf/zoo.cfg
    Mode: follower
    ========== node102.yinzhengjie.org.cn zkServer.sh status ================
    ZooKeeper JMX enabled by default
    Using config: /yinzhengjie/softwares/zookeeper-3.4.14/bin/../conf/zoo.cfg
    Mode: leader
    ========== node103.yinzhengjie.org.cn zkServer.sh status ================
    ZooKeeper JMX enabled by default
    Using config: /yinzhengjie/softwares/zookeeper-3.4.14/bin/../conf/zoo.cfg
    Mode: follower
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# xzk.sh status
    [root@node101.yinzhengjie.org.cn ~]#  ansible all -m shell -a 'jps'
    node103.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    QuorumPeerMain
    Jps
    
    node102.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    QuorumPeerMain
    Jps
    
    node101.yinzhengjie.org.cn | SUCCESS | rc=0 >>
    QuorumPeerMain
    Jps
    
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# ansible all -m shell -a 'jps'
    [root@node101.yinzhengjie.org.cn ~]# zkCli.sh 
    Connecting to localhost:2181
    2019-04-12 09:23:04,270 [myid:] - INFO  [main:Environment@100] - Client environment:zookeeper.version=3.4.14-4c25d480e66aadd371de8bd2fd8da255ac140bcf, built on 03/06/2019 16:18 GMT
    2019-04-12 09:23:04,272 [myid:] - INFO  [main:Environment@100] - Client environment:host.name=node101.yinzhengjie.org.cn
    2019-04-12 09:23:04,273 [myid:] - INFO  [main:Environment@100] - Client environment:java.version=1.8.0_201
    2019-04-12 09:23:04,275 [myid:] - INFO  [main:Environment@100] - Client environment:java.vendor=Oracle Corporation
    2019-04-12 09:23:04,275 [myid:] - INFO  [main:Environment@100] - Client environment:java.home=/yinzhengjie/softwares/jdk1.8.0_201/jre
    2019-04-12 09:23:04,275 [myid:] - INFO  [main:Environment@100] - Client environment:java.class.path=/yinzhengjie/softwares/zookeeper-3.4.14/bin/../zookeeper-server/target/classes:/yinzhengjie/softwares/zookeeper-3.4.14/bin/../build/classes:/yinzhengjie/softwares/zookeeper-3.4.14/bin/../zookeeper-server/target/lib/*.jar:/yinzhengjie/softwares/zookeeper-3.4.14/bin/../build/lib/*.jar:/yinzhengjie/softwares/zookeeper-3.4.14/bin/../lib/slf4j-log4j12-1.7.25.jar:/yinzhengjie/softwares/zookeeper-3.4.14/bin/../lib/slf4j-api-1.7.25.jar:/yinzhengjie/softwares/zookeeper-3.4.14/bin/../lib/netty-3.10.6.Final.jar:/yinzhengjie/softwares/zookeeper-3.4.14/bin/../lib/log4j-1.2.17.jar:/yinzhengjie/softwares/zookeeper-3.4.14/bin/../lib/jline-0.9.94.jar:/yinzhengjie/softwares/zookeeper-3.4.14/bin/../lib/audience-annotations-0.5.0.jar:/yinzhengjie/softwares/zookeeper-3.4.14/bin/../zookeeper-3.4.14.jar:/yinzhengjie/softwares/zookeeper-3.4.14/bin/../zookeeper-server/src/main/resources/lib/*.jar:/yinzhengjie/softwares/zookeeper-3.4.14/bin/../conf:
    2019-04-12 09:23:04,275 [myid:] - INFO  [main:Environment@100] - Client environment:java.library.path=/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
    2019-04-12 09:23:04,275 [myid:] - INFO  [main:Environment@100] - Client environment:java.io.tmpdir=/tmp
    2019-04-12 09:23:04,275 [myid:] - INFO  [main:Environment@100] - Client environment:java.compiler=<NA>
    2019-04-12 09:23:04,275 [myid:] - INFO  [main:Environment@100] - Client environment:os.name=Linux
    2019-04-12 09:23:04,275 [myid:] - INFO  [main:Environment@100] - Client environment:os.arch=amd64
    2019-04-12 09:23:04,275 [myid:] - INFO  [main:Environment@100] - Client environment:os.version=3.10.0-957.el7.x86_64
    2019-04-12 09:23:04,276 [myid:] - INFO  [main:Environment@100] - Client environment:user.name=root
    2019-04-12 09:23:04,276 [myid:] - INFO  [main:Environment@100] - Client environment:user.home=/root
    2019-04-12 09:23:04,276 [myid:] - INFO  [main:Environment@100] - Client environment:user.dir=/root
    2019-04-12 09:23:04,277 [myid:] - INFO  [main:ZooKeeper@442] - Initiating client connection, connectString=localhost:2181 sessionTimeout=30000 watcher=org.apache.zookeeper.ZooKeeperMain$MyWatcher@5ce65a89
    Welcome to ZooKeeper!
    2019-04-12 09:23:04,303 [myid:] - INFO  [main-SendThread(localhost:2181):ClientCnxn$SendThread@1025] - Opening socket connection to server localhost/127.0.0.1:2181. Will not attempt to authenticate using SASL (unknown error)
    JLine support is enabled
    2019-04-12 09:23:04,365 [myid:] - INFO  [main-SendThread(localhost:2181):ClientCnxn$SendThread@879] - Socket connection established to localhost/127.0.0.1:2181, initiating session
    2019-04-12 09:23:04,395 [myid:] - INFO  [main-SendThread(localhost:2181):ClientCnxn$SendThread@1299] - Session establishment complete on server localhost/127.0.0.1:2181, sessionid = 0x6500007f14d00000, negotiated timeout = 30000
    
    WATCHER::
    
    WatchedEvent state:SyncConnected type:None path:null
    [zk: localhost:2181(CONNECTED) 0] ls /
    [zookeeper]
    [zk: localhost:2181(CONNECTED) 1] ls /zookeeper
    [quota]
    [zk: localhost:2181(CONNECTED) 2] ls /zookeeper/quota
    []
    [zk: localhost:2181(CONNECTED) 3] quit
    Quitting...
    2019-04-12 09:23:13,101 [myid:] - INFO  [main:ZooKeeper@693] - Session: 0x6500007f14d00000 closed
    2019-04-12 09:23:13,102 [myid:] - INFO  [main-EventThread:ClientCnxn$EventThread@522] - EventThread shut down for session: 0x6500007f14d00000
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# zkCli.sh                                              #测试zookeeper是否可用

    三.zookeeper客户端四字符指令

      ZooKeeper 支持某些特定的四字命令字母与其的交互。它们大多是查询命令,用来获取 ZooKeeper 服务的当前状态及相关信息。用户在客户端可以通过 telnet 或 nc 向 ZooKeeper 提交相应的命令,接下来我们一起体验一下吧。

    [root@node101.yinzhengjie.org.cn ~]#  echo conf |  nc node101.yinzhengjie.org.cn 2181            #查看配置信息
    clientPort=2181
    dataDir=/home/yinzhengjie/zookeeper/version-2
    dataLogDir=/home/yinzhengjie/zookeeper/version-2
    tickTime=2000
    maxClientCnxns=60
    minSessionTimeout=4000
    maxSessionTimeout=40000
    serverId=101
    initLimit=5
    syncLimit=2
    electionAlg=3
    electionPort=3888
    quorumPort=2888
    peerType=0
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# echo conf | nc node101.yinzhengjie.org.cn 2181              #查看配置信息,输出相关服务配置的详细信息
    [root@node101.yinzhengjie.org.cn ~]# echo ruok |  nc node101.yinzhengjie.org.cn 2181           #注意,他会恢复一个字符串为“imok”,表示其为存活状态
    imok[root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# echo ruok |  nc node102.yinzhengjie.org.cn 2181           #注意,如果恢复的不是"imok",那就说明该节点挂掉啦!注意管擦好输出结果哟!
    Ncat: Connection refused.
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# echo ruok |  nc node103.yinzhengjie.org.cn 2181 
    imok[root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# echo ruok | nc node102.yinzhengjie.org.cn 2181               #注意,如果恢复的不是"imok",那就说明该节点挂掉啦!注意观察输出结果哟!
    [root@node101.yinzhengjie.org.cn ~]# echo envi | nc node103.yinzhengjie.org.cn 2181              #查看指定zookeeper主机环境变量
    Environment:
    zookeeper.version=3.4.14-4c25d480e66aadd371de8bd2fd8da255ac140bcf, built on 03/06/2019 16:18 GMT
    host.name=node103.yinzhengjie.org.cn
    java.version=1.8.0_201
    java.vendor=Oracle Corporation
    java.home=/yinzhengjie/softwares/jdk1.8.0_201/jre
    java.class.path=/yinzhengjie/softwares/zookeeper-3.4.14/bin/../zookeeper-server/target/classes:/yinzhengjie/softwares/zookeeper-3.4.14/bin/../build/classes:/yinzhengjie/softwares/zookeeper-3.4.14/bin/../zookeeper-server/target/lib/*.jar:/yinzhengjie/softwares/zookeeper-3.4.14/bin/../build/lib/*.jar:/yinzhengjie/softwares/zookeeper-3.4.14/bin/../lib/slf4j-log4j12-1.7.25.jar:/yinzhengjie/softwares/zookeeper-3.4.14/bin/../lib/slf4j-api-1.7.25.jar:/yinzhengjie/softwares/zookeeper-3.4.14/bin/../lib/netty-3.10.6.Final.jar:/yinzhengjie/softwares/zookeeper-3.4.14/bin/../lib/log4j-1.2.17.jar:/yinzhengjie/softwares/zookeeper-3.4.14/bin/../lib/jline-0.9.94.jar:/yinzhengjie/softwares/zookeeper-3.4.14/bin/../lib/audience-annotations-0.5.0.jar:/yinzhengjie/softwares/zookeeper-3.4.14/bin/../zookeeper-3.4.14.jar:/yinzhengjie/softwares/zookeeper-3.4.14/bin/../zookeeper-server/src/main/resources/lib/*.jar:/yinzhengjie/softwares/zookeeper-3.4.14/bin/../conf:
    java.library.path=/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
    java.io.tmpdir=/tmp
    java.compiler=<NA>
    os.name=Linux
    os.arch=amd64
    os.version=3.10.0-957.el7.x86_64
    user.name=root
    user.home=/root
    user.dir=/root
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# echo envi | nc node103.yinzhengjie.org.cn 2181              #查看指定zookeeper主机环境变量,输出关于服务环境的详细信息
    [root@node101.yinzhengjie.org.cn ~]# echo cons | nc node103.yinzhengjie.org.cn 2181 
     /172.30.1.102:57816[1](queued=0,recved=20,sent=20,sid=0x67000b2416210000,lop=PING,est=1556176886312,to=30000,lcxid=0x1,lzxid=0xffffffffffffffff,lresp=187317065,llat=0,minlat=0,avglat=0,maxlat=5)
     /172.30.1.101:57124[0](queued=0,recved=1,sent=0)
     /127.0.0.1:50638[1](queued=0,recved=17,sent=17,sid=0x67000b2416210001,lop=GETC,est=1556176940249,to=30000,lcxid=0x4,lzxid=0x400000005,lresp=187315052,llat=1,minlat=0,avglat=0,maxlat=4)
    
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# echo cons | nc node103.yinzhengjie.org.cn 2181              #查看终端链接信息
    [root@node101.yinzhengjie.org.cn ~]# echo dump | nc node103.yinzhengjie.org.cn 2181                 #查看未处理会话的节点
    SessionTracker dump:
    org.apache.zookeeper.server.quorum.LearnerSessionTracker@515b070f
    ephemeral nodes dump:
    Sessions with Ephemerals (0):
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# echo dump | nc node103.yinzhengjie.org.cn 2181               #查看未处理会话的节点
    [root@node101.yinzhengjie.org.cn ~]# echo stat | nc node103.yinzhengjie.org.cn 2181                 #查看统计信息
    Zookeeper version: 3.4.14-4c25d480e66aadd371de8bd2fd8da255ac140bcf, built on 03/06/2019 16:18 GMT
    Clients:
     /172.30.1.102:57816[1](queued=0,recved=36,sent=36)
     /127.0.0.1:50638[1](queued=0,recved=33,sent=33)
     /172.30.1.101:57128[0](queued=0,recved=1,sent=0)
    
    Latency min/avg/max: 0/0/5
    Received: 84
    Sent: 83
    Connections: 3
    Outstanding: 0
    Zxid: 0x400000005
    Mode: follower
    Node count: 4
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# echo stat | nc node103.yinzhengjie.org.cn 2181               #查看统计信息,一般用来查看哪个节点被选择作为follower或者leader
    [root@node101.yinzhengjie.org.cn ~]# echo wchs | nc node103.yinzhengjie.org.cn 2181                 #查看链接的watch信息
    0 connections watching 0 paths
    Total watches:0
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# echo wchs | nc node103.yinzhengjie.org.cn 2181                #查看服务器的watch的详细信息
    [root@node101.yinzhengjie.org.cn ~]# echo wchc | nc node103.yinzhengjie.org.cn 2181                #通过 session 列出服务器 watch 的详细信息,它的输出是一个与 watch 相关的会话的列表。
    wchc is not executed because it is not in the whitelist.
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# echo wchc | nc node103.yinzhengjie.org.cn 2181               #通过 session 列出服务器 watch 的详细信息,它的输出是一个与 watch 相关的会话的列表。(需要进一步调研)
    [root@node101.yinzhengjie.org.cn ~]# echo wchp | nc node103.yinzhengjie.org.cn 2181                #通过路径列出服务器 watch 的详细信息。它输出一个与 session 相关的路径。
    wchp is not executed because it is not in the whitelist.
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# echo wchp | nc node103.yinzhengjie.org.cn 2181               #通过路径列出服务器 watch 的详细信息。它输出一个与 session 相关的路径。(需要进一步调研)
    [root@node101.yinzhengjie.org.cn ~]# echo reqs | nc node103.yinzhengjie.org.cn 2181                 #查看未经处理的请求。
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# echo reqs | nc node103.yinzhengjie.org.cn 2181               #查看未经处理的请求。 
    [root@node101.yinzhengjie.org.cn ~]# echo crst | nc node101.yinzhengjie.org.cn 2181                   #重置所有的客户端连接
    Connection stats reset.
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# echo crst | nc node101.yinzhengjie.org.cn 2181               #重置所有的客户端连接
    [root@node101.yinzhengjie.org.cn ~]# echo dump | nc node101.yinzhengjie.org.cn 2181                 #打印集群的所有会话信息,包括ID,以及临时节点等信息。用在Leader节点上才有效果。
    SessionTracker dump:
    Session Sets (7):
    0 expire at Sat Jan 03 12:27:32 CST 1970:
    0 expire at Sat Jan 03 12:27:40 CST 1970:
    0 expire at Sat Jan 03 12:27:42 CST 1970:
    0 expire at Sat Jan 03 12:27:50 CST 1970:
    0 expire at Sat Jan 03 12:27:52 CST 1970:
    1 expire at Sat Jan 03 12:28:00 CST 1970:
            0x67000b2416210001
    2 expire at Sat Jan 03 12:28:02 CST 1970:
            0x65000b248f060000
            0x67000b2416210000
    ephemeral nodes dump:
    Sessions with Ephemerals (0):
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# echo dump | nc node101.yinzhengjie.org.cn 2181                #打印集群的所有会话信息,包括ID,以及临时节点等信息。用在Leader节点上才有效果。
    [root@node101.yinzhengjie.org.cn ~]# echo srst | nc node101.yinzhengjie.org.cn 2181                  #重置服务器统计信息
    Server stats reset.
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# echo srst | nc node101.yinzhengjie.org.cn 2181               #重置服务器统计信息
    [root@node101.yinzhengjie.org.cn ~]# echo srvr | nc node101.yinzhengjie.org.cn 2181                #和stat输出信息一样,只不过少了客户端连接信息。
    Zookeeper version: 3.4.14-4c25d480e66aadd371de8bd2fd8da255ac140bcf, built on 03/06/2019 16:18 GMT
    Latency min/avg/max: 0/0/1
    Received: 7
    Sent: 7
    Connections: 2
    Outstanding: 0
    Zxid: 0x400000006
    Mode: leader
    Node count: 4
    Proposal sizes last/min/max: -1/-1/-1
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# echo srvr | nc node101.yinzhengjie.org.cn 2181               #和stat输出信息一样,只不过少了客户端连接信息。
    [root@node101.yinzhengjie.org.cn ~]# echo mntr | nc node101.yinzhengjie.org.cn 2181                #输出比stat更为详细的服务器统计信息
    zk_version      3.4.14-4c25d480e66aadd371de8bd2fd8da255ac140bcf, built on 03/06/2019 16:18 GMT
    zk_avg_latency  0
    zk_max_latency  1
    zk_min_latency  0
    zk_packets_received     13
    zk_packets_sent 13
    zk_num_alive_connections        2
    zk_outstanding_requests 0
    zk_server_state leader
    zk_znode_count  4
    zk_watch_count  0
    zk_ephemerals_count     0
    zk_approximate_data_size        27
    zk_open_file_descriptor_count   34
    zk_max_file_descriptor_count    1048576
    zk_fsync_threshold_exceed_count 0
    zk_followers    2
    zk_synced_followers     2
    zk_pending_syncs        0
    zk_last_proposal_size   -1
    zk_max_proposal_size    -1
    zk_min_proposal_size    -1
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# 
    [root@node101.yinzhengjie.org.cn ~]# echo mntr | nc node101.yinzhengjie.org.cn 2181               #输出比stat更为详细的服务器统计信息 

    参考链接1:https://www.cnblogs.com/yinzhengjie/p/10739218.html

    参加链接2:https://www.cnblogs.com/yinzhengjie/articles/10698719.html

    参考链接3:https://www.jianshu.com/p/4f11d7bfc9ce

    参考链接4:https://blog.csdn.net/u013673976/article/details/47321067

    参考链接5:https://blog.csdn.net/paincupid/article/details/78058087#Zookeeper_1782

  • 相关阅读:
    CentOS 7 搭建 LAMP
    CentOS 7 安装 nginx
    ms-sql关联表操作
    在CentOS下自动备份mysql
    Redhat 7 或者 CentOS 7 密码破解
    java环境变量的设置
    CentOS6.6安装及配置vsftpd文件服务器
    Virtualbox虚拟机配置CentOS7.0静态网络
    CentOS6.6安装vmware workstation报错
    CentOS6.6安装virtualbox4.1.44
  • 原文地址:https://www.cnblogs.com/yinzhengjie/p/10747747.html
Copyright © 2020-2023  润新知