版权声明:有不正确的地方,还望各位指正指导,Thanks! https://blog.csdn.net/a544258023/article/details/85229389
ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎。
ElasticSearch安装包下载
到ElasticSearch官网 对应版本的安装包,本文以ElasticSearch 6.5.4为例。
将下载好的elasticsearch-6.5.0.tar.gz传到/opt/ansible/roles/files目录下,本文将所有tar安装包都进行了重命名操作,比如将elasticsearch-6.5.0.tar.gz解压后重命名为elasticsearch并打成elasticsearch.tar.gz包。
编写主机hosts
编辑/opt/ansible/hosts文件添加部署Kafka机器IP
[es_servers]
172.18.18.120
172.18.18.121
172.18.18.122
编写ElasticSearch配置文件
将elasticsearch-6.5.0.tar.gz解压后的配置文件elasticsearch.yml和elasticsearch.in.sh修改成自己的配置并重命名为elasticsearch.yml.j2和elasticsearch.in.sh.j2,然后上传到/opt/ansible/roles/templates/ 目录下。由于配置文件较多,本文不进行展示。
编写参数配置main.yml
编辑/opt/ansible/roles/vars/main.yml文件,添加变量
BigdataDir: /opt/hzgc
AnsibleDir: /opt/ansible
编写执行文件elasticsearch.yml
- hosts: es_servers remote_user: root roles: - roles tasks: - name: create elsearch user user: name=elsearch password={{password}} vars: password: 123456 - name: copy /etc/sysctl.conf template: src=/etc/sysctl.conf dest=/etc/sysctl.conf - name: reload sysctl.conf shell: sysctl -p /etc/sysctl.conf - name: copy /etc/security/limits.conf template: src=/etc/security/limits.conf dest=/etc/security/limits.conf - name: copy and unzip es unarchive: src={{AnsibleDir}}/roles/files/elasticsearch.tar.gz dest={{BigdataDir}} - name: mkdir ditectory for logs data file: dest={{BigdataDir}}/elastic/logs mode=0755 state=directory owner=elsearch group=elsearch - name: install memory configuration file for es template: src={{AnsibleDir}}/roles/templates/elasticsearch.in.sh.j2 dest={{BigdataDir}}/elastic/bin/elasticsearch.in.sh - name: install configuration file for es template: src={{AnsibleDir}}/roles/templates/elasticsearch.yml.j2 dest={{BigdataDir}}/elastic/config/elasticsearch.yml - name: change owner and group file: path={{BigdataDir}}/elastic owner=elsearch group=elsearch recurse=yes - name: source env shell: source /etc/profile - name: make elastic permission shell: su - elsearch -c 'chmod +x {{BigdataDir}}/elastic/bin/*' - name: start es remote_user: root shell: su - elsearch -c '{{BigdataDir}}/elastic/bin/elasticsearch -d' tags: - start elasticsearch |
执行ElasticSearch安装部署 及启动
ansible-playbook -i hosts yml/elasticsearch.yml
查看是否安装成功:jps