美文网首页
学习基于CentOS的ES集群部署方法

学习基于CentOS的ES集群部署方法

作者: StephenXP | 来源:发表于2019-02-28 21:07 被阅读0次

    1.首先必须关闭虚拟机的防火墙(如不关闭防火墙,需要开放端口,目前没测试该情况)

    停止防火墙命令:systemctl stop firewalld.service

    禁止开机启动防火墙命令:systemctl disable firewalld.service

    关闭selinux :进入到/etc/selinux/config文件,vi /etc/selinux/config,将SELINUX=enforcing改为SELINUX=disabled

    2.设置本机地址(centos7下是需要设置静态IP)

    vi/etc/sysconfig/network-scripts/ifcfg-eth0

    将BOOTPROTO 设置为static,onboot= yes

    新增 IPADDR,GATEWAY,NETMASK,DNS 属性

    设置完成后,重启network:systemctl restart network

    3.安装ifconfig

    yuminstall net-tools.x86_64

    4. 安装wget

    yuminstall wget

    5.设置hosts

    vi/etc/ hosts

    需要将相关节点全部设置

    6.安装ES

    先安装java环境,这里采用懒人一键安装方式

    yum install java*

    配置

    vim /etc/profile

    在尾部加上

    export JAVA_HOME=/usr/lib/jvm/java-1.7.0-openjdk-1.7.0.91.x86_64

    export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

    export PATH=$PATH:$JAVA_HOME/bin

    保存退出后更新配置

    source /etc/profile

    这个命令避免对java不熟悉的开发人员的误操作,能够避免学习繁杂的知识点。

    下面安装ES

    Wget https://download.elastic.co/elasticsearch/release/org/elasticsearch/distribution/rpm/elasticsearch/2.3.5/elasticsearch-2.3.5.rpm

    rpm

    -ivh elasticsearch-2.3.5.rpm

    7.启动并查看安装状态

    systemctl start elasticsearch

    systemctl status elasticsearch

    8.本地查看版本信息

    curl-XGET "127.0.0.1:9200"


    9.查找elasticsearch 安装路径与配置路径,并且配置

    whereis elasticsearch

    vim/etc/elasticsearch/elasticsearch.yml

    修改:

    保存退出后重启elasticsearch

    systemctl restart elasticsearch

    在浏览器访问虚拟机ip:9200

    10.重启虚拟机

    reboot

    11.设置集群

    环境

    三台centos7的机器,每台机器上都已安装好elasticsearch:

    Hostnameip

    node1 192.168.1.128

    node2 192.168.1.129

    node3 192.168.1.130

    添加hosts

    每个节点,用vim打开/etc/hosts,然后添加以下内容:

    192.168.163.128 node1

    192.168.163.129 node2

    192.168.163.130 node3

    其中node1、node2、node3即为集群中三台机器的hostname。

    修改配置文件

    如ES已经安装完成,我们需要修改Elasticsearch的默认配置项。所有的配置文件位于/etc/elasticsearch/目录下面

    由于我们做的是Elasticsearch的集群配置,所以我们要按照集群的方法进行配置。Elasticsearch的配置文件是/etc/elasticsearch/elasticsearch.yml:

    # vim /etc/elasticsearch/elasticsearch.yml

    我们以node1机器为例:

    cluster.name: wooyoo-es

    node.name: node1

    network.host: node1

    discovery.zen.ping.unicast.hosts: ["node1", "node2","node3"]

    discovery.zen.minimum_master_nodes: 2

    另外,由于我们通过rpm方式安装,所以我们无需配置日志和数据存储的路径,日志默认的路径为/var/log/elasticsearch,数据的默认路径为/var/data/elasticsearch。

    配置文件的修改操作,每个节点都要执行一遍。

    启动Elasticsearch

    由于我们是通过rpm的方式进行安装,所以直接通过启动脚本进行启动即可:

    # /etc/init.d/elasticsearch start

    如果是停止,或者重启的话,对应的参数就是stop和restart。或者我们用systemctl来启动:

    # systemctl start elasticsearch

    当每个节点都启动之后,我们来确认一下每个节点的启动状态。启动信息可以通过查看/var/log/elasticsearch/wooyoo-es.log该日志文件。如果某个节点被选为了master,那么日志中就会出现对应的信息,我们查看node2节点的日志:

    [2016-12-25T21:27:29,788][INFO ][o.e.c.s.ClusterService ] [node2] new_master{node2}{HYeMegH7QCamfOuvv5rqYQ}{ImIkUQkvRbC2tOxCoSTKdw}{node2}{192.168.163.129:9300},added{{node1}{eGLt364yRZiRDWROmIkVhw}{uKnUR0fBTASgxgMkqRS3OQ}{node1}{192.168.163.128:9300},},reason: zen-disco-elected-as-master ([1] nodesjoined)[{node1}{eGLt364yRZiRDWROmIkVhw}{uKnUR0fBTASgxgMkqRS3OQ}{node1}{192.168.163.128:9300}]

    [2016-12-25T21:27:30,350][INFO ][o.e.c.s.ClusterService ] [node2] added{{node3}{Q1QfOueFQR-jKJ6j2QV7jg}{NsTdYP9GRxygcfEgTrcBrg}{node3}{192.168.163.130:9300},},reason:zen-disco-node-join[{node3}{Q1QfOueFQR-jKJ6j2QV7jg}{NsTdYP9GRxygcfEgTrcBrg}{node3}{192.168.163.130:9300}]

    通过日志可以看到,new_master表示node2被选为了master节点,added表示有其他slave节点添加进了集群,added一共出现了两次,对应的分别是node1节点和node3节点。

    至此,Elasticsearch集群已经搭建成功。

    相关文章

      网友评论

          本文标题:学习基于CentOS的ES集群部署方法

          本文链接:https://www.haomeiwen.com/subject/bstluqtx.html