环境

主机名 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. GroupBy之后加ToList和不加ToList有什么区别吗?

        class Program    {        static void Main(string[] args)        {             List<Person> ...

  2. LeetCode 74. 搜索二维矩阵(Search a 2D Matrix)

    74. 搜索二维矩阵 74. Search a 2D Matrix 题目描述 编写一个高效的算法来判断 m x n 矩阵中,是否存在一个目标值.该矩阵具有如下特性: 每行中的整数从左到右按升序排列. ...

  3. Markdown Html高级功能 测试用例

    插入音频 后台样式代码: #cnblogs_post_body .music { height: 140px; /*padding-bottom: 14.39%;*/ /* 16:9 */ posit ...

  4. 用Python写一个滑动验证码

    1.准备阶段 滑动验证码我们可以直接用GEETEST的滑动验证码. 打开网址:https://www.geetest.com/ ,找到技术文档中的行为验证,打开部署文档,点击Python,下载ZIP包 ...

  5. MySql取消密码强度验证功能

    一.修改MySql配置文件(my.cnf)一般情况下,MySql的配置文件 my.cnf 会在  /etc/ 目录下,如果没有,可以使用以下命令查找位置: find / -name my.cnf 编辑 ...

  6. ES6之reduce和reduceRight方法应用实例

    for循环是最基本的遍历循环,但是有些时候并不是很实用,且效率和性能较低,故本文列举出工作学习中碰到的reduce方法应用实例,供自己揣摩熟练应用,以提高自己的研发水平和研发效率. reduce方法( ...

  7. MongoDB 增删改查 Shell使用及操作

    下载链接:https://robomongo.org/download 安装步骤省略,下一步下一步... 图形界面,连接默认,取个名字就行. 连接成功,可以愉快的使用了,不用总是敲命令了,简洁方便,多 ...

  8. 【洛谷 P4052】 [JSOI2007]文本生成器(AC自动机,DP)

    题目链接 AC自动机上dp第一题嗷. 如果直接求可读文本的数量,显然要容斥,不好搞. 于是考虑求不可读文本的数量,再用\(26^m\)减去其即可. 建出AC自动机,如果一个节点为单词结尾或其fail链 ...

  9. mysql 数据库 规范

    目录 mysql 数据库 规范 基础规范 命名规范 表设计规范 字段设计规范 索引设计规范 SQL编写规范 行为规范 mysql 数据库 规范 基础规范 必须使用InnoDB存储引擎 解读:支持事务. ...

  10. Java 之 函数式编程

    一.Lambda 的延迟执行 有些场景的代码执行后,结果不一定会被使用,从而造成性能浪费.而Lambda表达式是延迟执行的,这正好可以作为解决方案,提升性能 . 性能浪费的日志案例 注意:日志可以帮助 ...