Elasticsearch配置

一、术语
1、索引(index)
相当于关系数据库当中的数据库
2、文档(document)
相当于MySQL中的一行记录,但是ES中的文档没有固定结构
3、文档类型(type)
一个索引当中可以用不同的文档类型代表不同的数据集合
4、节点(node)
一个节点就是一个实例
5、集群(cluster)
一个集群可以有一个或者多个节点组成(同一个集群下的节点名不能重复)
6、分片(shards)
一个索引会被分割成多个分片,分别存放在集群的不同节点
7、副本

每个分片可以设置多个副本,可以用来容错和提高查询性能

一个 Elasticsearch 集群可以 包含多个 索引 ,相应的每个索引可以包含多个 类型 。 这些不同的类型存储着多个 文档 ,每个文档又有 多个 属性 。

二、配置

//文件elasticsearch.yml
 #集群名称
 cluster.name: elasticsearch_dev
 #节点名称
 node.name: node-102
 #节点属性,可以用于集群碎片分配时过滤
 node.attr.rack: r102
 #设置索引数据的存储路径
 path.data: /data/es/data
 #设置日志路径
 path.logs: /data/es/logs
 #设置内存锁
 bootstrap.memory_lock: true
 #绑定的IP地址,默认为0.0.0.0
 network.host: 192.168.56.102
 #对外服务的Http端口 
 http.port: 9200

三、启动
执行如下命令
ps -p 1
查看是init还是systemd 
systemd执行如下命令

/bin/systemctl daemon-reload
/bin/systemctl enable elasticsearch.service
systemctl start elasticsearch
systemctl stop elasticsearch

四、错误解决
1.Unable to lock JVM Memory: error=12, reason=Cannot allocate memory
解决办法:设置配置当中

bootstrap.memory_lock: false

2..NoSuchFileException: /usr/share/elasticsearch/config

执行 ln -s /etc/elasticsearch /usr/share/elasticsearch/config

五、检查
访问http://192.168.56.102:9200可以看到

{
    "name": "node-102",
    "cluster_name": "elasticsearch_dev",
    "cluster_uuid": "PUxoA1mSTsGzGBZB7S6ZHQ",
    "version": {
        "number": "5.4.1",
        "build_hash": "2cfe0df",
        "build_date": "2017-05-29T16:05:51.443Z",
        "build_snapshot": false,
        "lucene_version": "6.5.1"
    },
    "tagline": "You Know, for Search"
}



Tagged , . Bookmark the permalink.

Comments are closed.