Ansible入门篇(五):Zookeeper自动化安装

版权声明:有不正确的地方,还望各位指正指导,Thanks! https://blog.csdn.net/a544258023/article/details/85162714

ZooKeeper是一个分布式应用程序协调服务,是Hadoop、Kafka及Hbase等的重要组件。

Zookeeper安装包下载

Zookeeper官网下载对应版本的安装包,本文以zookeeper 3.4.5为例。

将下载好的zookeeper-3.4.5.tar.gz上传到/opt/ansible/roles/files目录下,本文将所有tar安装包都进行了重命名操作,比如将zookeeper-3.4.5.tar.gz解压后重命名为zookeeper并打成zookeeper.tar.gz包

编写主机hosts

编辑/opt/ansible/hosts文件添加部署Zookeeper机器IP

[zookeeper_servers]
172.18.18.120   myid=1
172.18.18.121   myid=2
172.18.18.122   myid=3

编写Zookeeper配置文件

将zookeeper-3.4.5.tar.gz解压后里面的 conf/zoo_sameple.cfg文件上传到/opt/ansible/roles/templates/目录下并重命名为zoo.cfg.j2,编辑内容如下:

tickTime=2000
initLimit=20
syncLimit=10
dataDir={{BigdataDir}}/zookeeper/data
dataLogDir={{BigdataDir}}/zookeeper/dataLogDir
clientPort=2181
quorumListenOnAllIPs=true
server.1={{server1_hostname}}:2888:3888
server.2={{server1_hostname}}:2888:3888
server.3={{server1_hostname}}:2888:3888

编写参数配置main.yml

编辑/opt/ansible/roles/vars/main.yml文件,添加变量 

server1_hostname: 172.18.18.130
server2_hostname: 172.18.18.131
server3_hostname: 172.18.18.132
BigdataDir: /opt/hzgc 

编写执行文件zookeeper.yml 

- hosts: zookeeper_servers
  remote_user: root
  roles:
  - roles

  tasks:
    - name: mkdir directory for bigdata data
      file: dest={{BigdataDir}} mode=0755 state=directory
    - name: install zookeeper
      unarchive: src={{AnsibleDir}}/roles/files/zookeeper.tar.gz dest={{BigdataDir}}
    - name: install configuration file for zookeeper
      template: src={{AnsibleDir}}/roles/templates/zoo.cfg.j2 dest={{BigdataDir}}/zookeeper/conf/zoo.cfg
    - name: create log directory
      file: dest={{BigdataDir}}/zookeeper/dataLogDir mode=0755 state=directory
    - name: add myid file
      shell: echo {{ myid }} > {{BigdataDir}}/zookeeper/data/myid
    - name: start zookeeper
      shell:  sh {{BigdataDir}}/zookeeper/bin/zkServer.sh start
      tags:
      - start zookeeper

执行Zookeeper安装部署 及启动

ansible-playbook -i hosts  yml/zookeeper.yml  

查看是否安装成功:jps 

  

猜你喜欢

转载自blog.csdn.net/a544258023/article/details/85162714