ElasticSearch集群部署与head插件安装

使用3个物理节点做测试,分别为:master、slave1、slave2

Step1. 下载elasticsearch-rtf-master并解压:

         该版本集成了大部分插件,部署简单高效。

ElasticSearch集群部署与head插件安装_第1张图片

Step2. 创建一个普通ES账户。Elasticsearch5版本以后,不能再使用root账户启动。

         #adduser esuser

         #chown –R esuser ‘elasticsearch安装目录’

         #su esuser

         #chmod 777 ‘elasticsearch安装目录’

Step3. 默认的虚拟内存不足以启动elasticsearch服务,因此报错。需要更改虚拟内存:

ElasticSearch集群部署与head插件安装_第2张图片

         (1)#vim/etc/security/limits.conf

                   添加了一下内容:

ElasticSearch集群部署与head插件安装_第3张图片

         (2)#vim/etc/sysctl.conf

                   添加下面一行:

                    vm.max_map_count=655360
                    并执行命令:
                    #sysctl-p
                    重新启动elasticsearch,即可启动成功。

Step4. 设置外网访问:

         编辑elasticsearch.yml配置文件:

         添加一行:network.host: 0.0.0.0

         注:如果想通过集群外部机器连接elasticsearch服务,需开通集群硬件防火墙相应端口。

Step5. 添加elasticsearch-head插件,方便web端查看数据:

         (1)github下载:https://github.com/mobz/elasticsearch-head,解压

         (2)按照github文档,需要先安装npm

注:(JavaScript中的npm:相当于python中的pip、java中的maven)

                            ①下载并解压node-v6.14.3-linux-x64

                            ②cd进bin目录,测试./node –v

                            ③创建软连接 ln –s ‘源文件node位置’/usr/local/bin/node

                                                 ln –s ‘源文件npm位置’/usr/local/bin/npm

④因为/usr/local/bin是环境变量PATH的内容,所以建立软连接后可以直接使用node命令

         (3)使用npm安装elasticsearch-head

                        ①cd到elasticsearch-head目录下

                        ②#npm install

                        ③#npm run start

                        ④默认在localhost:9100端口启动

                      ⑤打开原安装的elasticsearch.yml配置文件,再修改一下elasticsearch的服务安全策略,使得elasticsearch-head插件与elasticsearch服务连接,如下图

ElasticSearch集群部署与head插件安装_第4张图片

                         ⑥重启服务即可。

Step6. 扩展elasticsearch集群:

         假设创建由一个master、两个slave组成的集群:

                   ①:将原单机elasticsearch先设置为es-master节点,修改elasticsearch.yml文件添加以下内容:

                          #cluster.name: ‘集群名称’ 

                          #node.master:true

                   ②:将elasticsearch整个文件夹拷贝至slave16,slave17,分别对elasticsearch.yml做修改:

                          参考master修改,不过http.port不能使用默认9200,这里改成9201和9202;

                          此外,再分别添加discovery.zen.ping.unicast.hosts:[11.11.11.130](master的ip)

                        (注意:elasticsearch.yml配置文件冒号后必须加一空格)

                   ③:依次启动节点,创建一个test索引,从elasticsearch-head可以看到集群形式:

ElasticSearch集群部署与head插件安装_第5张图片

你可能感兴趣的:(编程珠玑)