博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
elasticsearch学习——环境搭建2
阅读量:5903 次
发布时间:2019-06-19

本文共 4477 字,大约阅读时间需要 14 分钟。

hot3.png

一、head插件安装

打开cmd,并且cd到elasticsearch的bin目录下面

接着输入命令:plugin install mobz/elasticsearch-head,

然后就会开始安装head插件,如果出现Installed head into的字样,证明head插件安装成功。

然后就会在elasticsearch安装目录的plugins文件夹里看到head目录

二、head插件界面介绍

1、装好head插件之后,如果在本机装的,则访问localhost:9200/_plugin/head,就可以看到head插件的界面了

这里介绍一下界面,使用方法多摸索就会了。

2、elasticsearch分区,备份等概念介绍

cluster:集群,一个ES集群由一个或多个节点(Node)组成,每个集群都有一个cluster name作为标识。

node:节点,即一个 Elasticsearch 的运行实例,一台机器上可以运行多个节点

shard:分区,是一个Lucene 实例。Elasticsearch 基于 Lucene,shard 是一个 Lucene 实例,被 Elasticsearch 自动管理。index 是一个逻辑命名空间, shard 是具体的物理概念,建索引、查询等都是具体的shard在工作。shard 包括primary shard 和 replica shard,写数据时,先写到primary shard, 然后,同步到 replica shard,查询时,primary 和 replica 充当相同的作用。replica shard 可以有多份,也可以没有。

replica:备份

    2.1、主分片和备分片不会出现在同一个节点上(防止单点故障),默认情况下一个索引创建5个分片,每个分片一个备份分片(即5primary+5replica=10个分片)

    2.2、如果你只有一个节点,那么5个replica都无法分配(unassigned),此时cluster status会变成yellow
    2.3、ES集群状态有三种:
            Green:所有主分片和备份分片都准备就绪(分配成功),即使有一台机器挂了(假设一台机器一个实例),数据都不会丢失,但会变成Yellow状(主分片所在节点挂了备份分片会顶上去)
            Yellow:所有主分片准备就绪,但存在至少一个主分片对应的备份分片没有就绪,此时集群属于警告状态,意味着集群高可用和容灾能力下降,如果刚好这个分片所在的节点挂了,并且你只设置了一个备份(而且这个备份刚好是未就绪状态),那么这个分区的数据就会丢失,导致查询结果不完整,此时集群进入Red状态
            Red:至少有一个主分片没有就绪(直接原因是找不到对应的备份分片成为新的主分片),导致查询结果数据不完整
    2.4、replica shard的存在有两个作用,一是容灾,如果primary shard 挂了,数据也不会丢失,集群仍然能正常工作;二是提高性能,因为replica 和 primary shard 都能处理查询,如果设置合理的备份数量可以增加查询速度,相应的会增加索引大小。

三、集群搭建配置

1、将上面得到的elasticsearch的安装目录复制两份,记住新的名字最好不要含有中文。修改config目录下的elasticsearch.yml文件

# ======================== Elasticsearch Configuration =========================## NOTE: Elasticsearch comes with reasonable defaults for most settings.#       Before you set out to tweak and tune the configuration, make sure you#       understand what are you trying to accomplish and the consequences.## The primary way of configuring a node is via this file. This template lists# the most important settings you may want to configure for a production cluster.## Please see the documentation for further information on configuration options:# 
## ---------------------------------- Cluster -----------------------------------## Use a descriptive name for your cluster:# 集群的名字,这三个文件的必须一样 cluster.name: elasticsearch## ------------------------------------ Node ------------------------------------## Use a descriptive name for the node:# 节点的名字,三个节点的不能一样,另外两个可以写成node-2,node-3 node.name: node-1## Add custom attributes to the node:## node.rack: r1## ----------------------------------- Paths ------------------------------------## Path to directory where to store the data (separate multiple locations by comma):## path.data: /path/to/data## Path to log files:## path.logs: /path/to/logs## ----------------------------------- Memory -----------------------------------## Lock the memory on startup:## bootstrap.memory_lock: true## Make sure that the `ES_HEAP_SIZE` environment variable is set to about half the memory# available on the system and that the owner of the process is allowed to use this limit.## Elasticsearch performs poorly when the system is swapping the memory.## ---------------------------------- Network -----------------------------------## Set the bind address to a specific IP (IPv4 or IPv6):# network.host: 127.0.0.1## Set a custom port for HTTP:## http.port: 9200## For more information, see the documentation at:#
## --------------------------------- Discovery ----------------------------------## Pass an initial list of hosts to perform discovery when new node is started:# The default list of hosts is ["127.0.0.1", "[::1]"]## discovery.zen.ping.unicast.hosts: ["host1", "host2"]## Prevent the "split brain" by configuring the majority of nodes (total number of nodes / 2 + 1):## discovery.zen.minimum_master_nodes: 3## For more information, see the documentation at:#
## ---------------------------------- Gateway -----------------------------------## Block initial recovery after a full cluster restart until N nodes are started:## gateway.recover_after_nodes: 3## For more information, see the documentation at:#
## ---------------------------------- Various -----------------------------------## Disable starting multiple nodes on a single system:## node.max_local_storage_nodes: 1## Require explicit names when deleting indices:## action.destructive_requires_name: true#shard的数目 index.number_of_shards: 6#replica的数目 index.number_of_replicas: 2#制定分词器为ik index.analysis.analyzer.ik.type: "ik"

改好配置文件后就可以启动三个集群名为elasticsearch的节点了。

 

转载于:https://my.oschina.net/u/3534905/blog/1631350

你可能感兴趣的文章
Android开发的前景分析——之你为何看好Android?
查看>>
linux学习笔记
查看>>
页面自动刷新
查看>>
No free lunch in search and optimization
查看>>
分析 Spring 的编程式事务管理及声明式事务管理(转)
查看>>
[每天一个知识点]8-人件摘抄-管理:莽汉的定义
查看>>
我的友情链接
查看>>
网站优化和竞价有什么区别
查看>>
MySQL开源热备工具XtraBackup的原理与程序说明
查看>>
如何从apache/nginx日志分析ip的来源并写入到数据库
查看>>
Buffer和Cache的区别 DMA
查看>>
回归假设问题的改进
查看>>
ATI FirePro V3800显卡试用
查看>>
多区OSPF协议
查看>>
Project Facet
查看>>
系统和网络调优
查看>>
linux常见命令
查看>>
NIST:制定Cybersecurity的框架进行时
查看>>
内存问题的检查
查看>>
shell统计当前目录所有指定后缀文件名的行数
查看>>