环境

主机名 IP 操作系统 ES 版本
test1 192.168.1.2 CentOS7.5 7.0.1
test2 192.168.1.3 CentOS7.5 7.0.1
test3 192.168.1.4 CentOS7.5 7.0.1

下载:

wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.0.1-linux-x86_64.tar.gz
或者到官网自行下载:https://www.elastic.co/cn/downloads/elasticsearch

各节点初始配置

  • 关闭 selinux、防火墙
  • 部署 java 运行环境
  • 创建 elastic 用户
    useradd -m elastic
  • 创建数据目录
    cd /var/lib
    mkdir elasticsearch
    chown elastic.elastic elasticsearch
  • 创建日志目录
    cd /var/log
    mkdir -p elasticsearch
    chown elastic.elastic elasticsearch
  • 增加 /etc/sysctl.conf 配置,执行 sysctl -p 生效
    vm.max_map_count = 262144
  • 增加 /etc/security/limits.conf 配置
    elastic soft nofile 65536
    elastic hard nofile 65536
    elastic soft memlock unlimited
    elastic hard memlock unlimited

部署 ELASTICSEARCH

  • 登陆 test1,下载 elasticsearch,解压至 /opt/ 下
  • 修改 elasticsearch 目录的权限
    chown -R elastic.elastic /opt/elasticsearch
  • 修改 jvm 参数文件 /opt/elasticsearch/config/jvm.options
  • 修改 /opt/elsaticsearch/config/elasticsearch.yml
    cluster.name: TEST_ES_CLUSTER
    node.name: test1
    network.host: 192.168.1.2
    cluster.initial_master_nodes: ["test1", "test2"]
    path.data: /var/lib/elasticsearch
    path.logs: /var/log/elasticsearch
    bootstrap.memory_lock: true
    discovery.zen.ping.unicast.hosts: ["192.168.1.2", "192.168.1.3", "192.168.1.4"]
    discovery.zen.minimum_master_nodes: 2
    gateway.recover_after_nodes: 2
  • 打包 elasticsearch 目录,复制到 test2 和 test3 上,并修改 elasticsearch.yml
    # test2
    node.name: test2
    network.host: 192.168.1.3
    # test3
    node.name: test3
    network.host: 192.168.1.4

启动集群(两种启动方式)

  • 直接启动二进制

    • 在每个节点上启动 elasticsearch 服务

      su - elastic -c '/opt/elasticsearch/bin/elasticsearch -d'
  • systemd 启动
    • 创建文件 /usr/lib/systemd/system/elasticsearch.service,内容如下

      [Unit]
      Description=ElasticSearch
      Requires=network.service
      After=network.service
      [Service]
      User=elastic
      Group=elastic
      LimitNOFILE=65536
      LimitMEMLOCK=infinity
      Environment=JAVA_HOME=/opt/jre
      ExecStart=/opt/elasticsearch/bin/elasticsearch
      SuccessExitStatus=143
      [Install]
      WantedBy=multi-user.target
    • 启动 elasticsearch 服务
      systemctl daemon-reload
      systemctl start elasticsearch

查看集群状态

  • 查看集群节点状态

    # 查看节点状态
    curl http://192.168.1.2:9200/_cat/nodes?pretty
    # 查看集群状态
    curl http://192.168.1.2:9200/_cluster/state?pretty

安装分词插件

  • 登陆 test1,下载插件 elasticsearch-analysis-ik-7.0.1.zip 至根目录下 地址:https://github.com/medcl/elasticsearch-analysis-ik/releases
  • 复制该文件至 test2 和 test3 的根目录下
  • 每个节点上安装
    su - elastic
    /opt/elasticsearch/bin/elasticsearch-plugin install file:///elasticsearch-analysis-ik-7.0.1.zip
  • 配置远程扩展字典时,出现 java.net.SocketPermission 拒绝连接,此时需配置 jre 策略
    # vim /opt/jre/lib/security/java.policy,在最后一个 "}" 前追加下面一行
    permission java.net.SocketPermission "*:*","accept,connect,resolve";

CentOS7 部署 ElasticSearch7.0.1 集群的更多相关文章

  1. centos7多节点部署redis4.0.11集群

    1.服务器集群服务器 redis节点node-i(192.168.0.168) 7001,7002node-ii(192.168.0.169) 7003,7004node-iii(192.168.0. ...

  2. centos7安装redis-4.0.1集群

    试验机操作系统:CentOS Linux release 7.2.1511 (Core) 本文的目的是教会大家快速搭建redis集群,完了再深入学习. 试问如果不上手试验,看的资料再多有个毛用? 下载 ...

  3. 部署Hadoop2.0高性能集群

    废话不多说直接实战,部署Hadoop高性能集群: 拓扑图: 一.实验前期环境准备: 1.三台主机配置hosts文件:(复制到另外两台主机上) [root@tiandong63 ~]# more /et ...

  4. hype-v上centos7部署高可用kubernetes集群实践

    概述 在上一篇中已经实践了 非高可用的bubernetes集群的实践 普通的k8s集群当work node 故障时是高可用的,但是master node故障时将会发生灾难,因为k8s api serv ...

  5. kubeadm部署kubernetes-1.12.0 HA集群-ipvs

    一.概述 主要介绍搭建流程及使用注意事项,如果线上使用的话,请务必做好相关测试及压测. 1.基础环境准备 系统:ubuntu TLS 16.04  5台 docker-ce:17.06.2 kubea ...

  6. Centos7离线部署kubernetes 1.13集群记录

    一.说明 本篇主要参考kubernetes中文社区的一篇部署文章(CentOS 使用二进制部署 Kubernetes 1.13集群),并做了更详细的记录以备用. 二.部署环境 1.kubernetes ...

  7. hbase-2.0.4集群部署

    hbase-2.0.4集群部署 1. 集群节点规划: rzx1 HMaster,HRegionServer rzx2 HRegionServer rzx3 HRegionServer 前提:搭建好ha ...

  8. 最新二进制安装部署kubernetes1.15.6集群---超详细教程

    00.组件版本和配置策略 00-01.组件版本 Kubernetes 1.15.6 Docker docker-ce-18.06.1.ce-3.el7 Etcd v3.3.13 Flanneld v0 ...

  9. Kubernetes 部署 Nebula 图数据库集群

    Kubernetes 是什么 Kubernetes 是一个开源的,用于管理云平台中多个主机上的容器化的应用,Kubernetes 的目标是让部署容器化的应用简单并且高效,Kubernetes 提供了应 ...

随机推荐

  1. c++入门构造函数

    一种方法: class Student{ public: //声明有默认参数的构造函数 Student(,,float=10); //声明成员函数 void total(); private: //声 ...

  2. 【LeetCode】最长公共前缀【二分】

    编写一个函数来查找字符串数组中的最长公共前缀. 如果不存在公共前缀,返回空字符串 "". 示例 1: 输入: ["flower","flow" ...

  3. 【面试】C++类中的相关函数【构造,拷贝构造,析构,友元】

    构造函数:值的初始化,可带参数,无返回值,可重载,可存在多个 析构函数:释放对象内存空间,无参数,无返回值,不可重载,只能存在一个 拷贝构造函数:拷贝对象,其形参必须是引用 1.空类会默认添加哪些东西 ...

  4. 自己实现简单版SpringMVC

    SpringMVC的主要作用是:从http请求中得到一个url字符串和对应的请求参数,根据该字符串找到Controller中的一个方法,利用反射执行该方法,将结果返回给前端 1,初始化 将url请求路 ...

  5. vm采用NAT方式连接时,设置静态ip

    一,共享无线连接或本地连接,给VMnet8. 在网络配置中,选着无线连接,右键属性,共享. 这里默认给虚拟网卡VMnet8,分配了IP:192.168.137.1. 二,在VMware中配置VMnet ...

  6. JVM之java并发 ——线程安全与锁优化

    概述 人们很难想象现实中的对象在一项工作进行期间,会被不停地中断和切换,对象的属性(数据)可能会在中断期间被修改和变“脏”,而这些事情在计算机世界中则是很正常的事情.有时候,良好的设计原则不得不向现实 ...

  7. Linux06 文件的打包和压缩(gzip/gunzip、tar、bzip2)

    一.gzip/gunzip 这是用于压缩和解压单个文件的工具,且使用方法比较简单 gzip  文件名 gunzip  文件名 二.tar(用的比较多) 不仅可以用于打包文件,还可以将整个目录中的全部文 ...

  8. Spring 框架的概述以及Spring中基于XML的IOC配置

    Spring 框架的概述以及Spring中基于XML的IOC配置 一.简介 Spring的两大核心:IOC(DI)与AOP,IOC是反转控制,DI依赖注入 特点:轻量级.依赖注入.面向切面编程.容器. ...

  9. day41——数值类型、完整性约束

    day41 数值类型 整数类型 有符号的设置 mysql> create table t1(id tinyint); # 默认有符号,即数字前有正负号 无符号的设置 mysql> crea ...

  10. springboot项目 配置https

    感谢  https://www.jianshu.com/p/1b7b9e0803c6 帮我解决了问题 生成自签名证书 keytool -genkey -storetype PKCS12 -keysiz ...