ElasticSearch集群的搭建

本文详细介绍在CentOS7环境下,使用jdk1.8和Elasticsearch5.4.3搭建单节点及集群的过程,包括环境准备、用户权限设置、配置文件修改、集群配置等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1.环境

       CentOS7  jdk1.8  elasticsearch 5.4.3

       首先在已经装好CentOS7的基础上克隆三台机器,要想克隆后继续克隆需要给机器装备CentOS镜像

 2.首先单节点安装ES

     

  1. 上传ES安装包
  2. 创建普通的用户,赋予权限

        #es启动时需要使用非root用户,所有创建一个node1用户:

                  useradd node1

        #为node1用户添加密码:

                  echo 123456| passwd --stdin node1

        #将node1添加到sudoers,这是重新创建一个用户组,他有着自己的home/node1目录

                  echo "node1ALL = (root) NOPASSWD:ALL" | tee /etc/sudoers.d/node1

                  chmod 0440 /etc/sudoers.d/node1

      #修改配置文件sudo vim /etc/sudoers

                  root ALL=(ALL) ALL

                  node1 ALL=(ALL) ALL

    

     配置完成以后使用node1用户登陆:

     查看防火墙状态: firewall-cmd --state    

     永久关闭防火墙: systemctl disable firewalld.service

    #但是如果普通用户无法访问root 用户下的目录,上传的文件是在这个目录下的,所以更改权限

    打开控制台,切换ROOT用户输入su,输入密码,然后输入以下命令:

                    chmod 777 /root

  3.解压文件夹到bigdata目录

                   tar -zxvf elasticsearch-5.4.3.tar.gz  bigdata/

 4.修改配置文件config/elasticsearch.yml

                  network.host: 192.168.203.128  #这个如果不修改它只会绑定在虚拟机上,无妨从外部浏览器访问。

      

  5.修改用户最大可创建文件数

               sudo vi /etc/security/limits.conf

              * soft nofile 65536

              * hard nofile 65536

    

   #修改最大虚拟内存

            sudo vi /etc/sysctl.conf

            vm.max_map_count=262144

   6.切换到root用户重启虚拟机, shutdown -r now

   7.启动es的时候报错,

     

     

    这个错误的原因是前用户操作的文件夹不属于当前的用户

    所以修改一下

    chown -R node1:node1/{bigdata,data}

      

     再次启动:

        

        

 

      在第二,三台虚拟机上安装es(当然可以在安装一台es后直接克隆三台,没试过,不知道能不能成功,storm试过可以成功)

     三台单节点的机器启动成功,现在需要将他们组成集群

     修改虚拟机名字: hostnamectl set-hostname

     修改yml文件,vi /bigdata/elasticsearch-5.4.3/config/elasticsearch.yml

#集群名称,通过组播的方式通信,通过名称判断属于哪个集群
cluster.name: my-es
#节点名称,要唯一
node.name: node1
#数据存放位置
path.data: /data/es/data
#日志存放位置(可选)
path.logs: /data/es/logs
#es绑定的ip地址
network.host: 192.168.203.128
#初始化时可进行选举的节点
discovery.zen.ping.unicast.hosts: ["node-1", "node-2", "node-3"]

   修改host文件

192.168.203.128  node1

192.168.203.129  node2

129.168.203.130  node3

  这样的话可能启动会报错:原因:这个目录处于root的权限下面,访问文件失败从根目录开始的,根目录在root权限下面所以计 就算子目录改了权限,在es启动的时候也访问不到。不要想着去修改原本文件夹目录的权限,比如修改usr文件夹的访问权限

      sudo chown -R node1:node1 usr

  这样做的后果就是无法再使用sudo的命令,如果不幸你这样做了还好我找到了补救的措施

  

  现在将其恢复,登陆root用户,

  chown -R root:root usr/ 将usr文件夹改为root权限

  chmod 4755 /usr/bin/sudo

  sudo -i

  chmod +s /bin/su

  依次执行完就可以了,现在有面临es数据日志的存放目录的问题了

  在/目录下新建一个data文件,然会赋值为node1的权限即可

 然后就是启动集群,加上-d就是后台启动,擦好看集群的健康状态

 http://192.168.203.128:9200/_cluster/health?pretty

  

  ok  没有问题,

  接下来会教大家如何安装ES的插件,敬请期待。。。。

  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

时空恋旅人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值