Elasticsearch 7.6 集群部署_ansible 一键安装

物理机(推荐配置):(3,5,7)在多拆业务多搭几套

cpu:e5 2640 v3 *2

内存:64 推荐最大30G(官方)、一般内存的1/2

磁盘:I/O 足够  空间够大   raid 10  推荐  10K

elasticsearch 在7.x 之前,都需要安装JDK环境

elasticsearch在7.x开始,单独提供内置的JDK的安装包,如果下载的是NO JDK 的安装包,则需要安装JDK 环境

 

我这里因为测试,没有改最大和最小内存,默认最大最小都是1G

如果要修改,则执行下面的

[root@linux-host1 ~]# vim /etc/elasticsearch/jvm.options
22 -Xms2g
23 -Xmx2g # 最小和最大内存限制,为什么最小和最大设置一样大?
https://www.elastic.co/guide/en/elasticsearch/reference/current/heap-size.html
 
[root@ansible-11 es]# tree
.
├── conf
│   ├── elasticsearch.service
│   ├── elasticsearch.yml
│   └── hosts
├── es1.yaml
├── es2.yaml
├── es3.yaml
├── es_class.yaml
├── es.yaml
├── hosts
├── install_es.sh
└── pkg
    └── elasticsearch-7.6.2-x86_64.rpm
[root@ansible-11 es]# cat install_es.sh 
#!/bin/bash
ansible-playbook -i hosts es.yaml
ansible-playbook -i hosts es1.yaml
ansible-playbook -i hosts es2.yaml
ansible-playbook -i hosts es3.yaml
ansible-playbook -i hosts es_class.yaml 
[root@ansible-11 es]# cat es.yaml 
---
- hosts: es
  vars: 
  remote_user: root
  gather_facts: false
  
  tasks:
  - name: 分发es rpm 包 
    copy: src=pkg/elasticsearch-7.6.2-x86_64.rpm dest=/root

  - name: 安装es
    yum: name=elasticsearch-7.6.2-x86_64.rpm
  
  - name: 创建es 的数据目录
    file: dest=/data/elkdata state=directory

  - name: 分发配置文件
    copy: src=conf/elasticsearch.yml dest=/etc/elasticsearch/elasticsearch.yml

  - name: 替换hosts 解析
    copy: src=conf/hosts dest=/etc/hosts
[root@ansible-11 es]# cat es1.yaml 
---
- hosts: es1
  vars: 
  remote_user: root
  gather_facts: false
  
  tasks:
  - name: 修改配置文件node名字
    shell: sed -i 's/node-1/node-1-120/' /etc/elasticsearch/elasticsearch.yml
 
  - name: 修改ip
    shell: sed -i 's#192.168.0.1#10.1.234.120#' /etc/elasticsearch/elasticsearch.yml
[root@ansible-11 es]# cat es2.yaml 
---
- hosts: es2
  vars: 
  remote_user: root
  gather_facts: false
  
  tasks:
  - name: 修改配置文件node名字
    shell: sed -i 's#node-1#node-2-121#' /etc/elasticsearch/elasticsearch.yml

  - name: 修改ip
    shell: sed -i 's#192.168.0.1#10.1.234.121#' /etc/elasticsearch/elasticsearch.yml
[root@ansible-11 es]# cat es3.yaml 
---
- hosts: es3
  vars: 
  remote_user: root
  gather_facts: false
  
  tasks:
  - name: 修改配置文件node名字
    shell: sed -i 's#node-1#node-3-122#' /etc/elasticsearch/elasticsearch.yml

  - name: 修改ip
    shell: sed -i 's#192.168.0.1#10.1.234.122#' /etc/elasticsearch/elasticsearch.yml

 

[root@ansible-11 es]# cat es_class.yaml 
---
- hosts: es
  vars: 
  remote_user: root
  gather_facts: false
  
  tasks:
  - name: 给创建的目录划分到组
    shell: chown -R  elasticsearch.elasticsearch /data/elkdata

  - name: 修改启动内存,为无限制
    copy: src=conf/elasticsearch.service dest=/usr/lib/systemd/system/elasticsearch.service

  - name: reload
    shell: systemctl daemon-reload

  - name: 启动服务并设置开机自启
    systemd: name=elasticsearch state=restarted enabled=yes

  - name: sleep 5
    shell: sleep 5

  - name: 查看状态并将结果注入到elasticsearch变量
    shell: ss -nutlp |grep 9200 
    register: elasticsearch

  - name: 将结果输出到控制台
    debug: var=elasticsearch.stdout_lines

监控:

curl -sXGET http://10.1.234.120:9200/_cluster/health?pretty=true | grep 'green' |wc -l

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值