es(elsaticsearch6)入门

1.需要准备的资料链接
2.es安装与集群配置
3.head插件安装
4.es基本用法
5.es高级用法
6.springboot整合es
7.计划学习elk搭建

一.准备的资料
https://download.csdn.net/download/wuzhuang12/10643242 相关数据下载

http://www.imooc.com/learn/920 相关学习视频

二.es安装

要注意的问题

1.jdk至少需要在1.8.0_73以上版本

2.linux的内核版本需要在2.6以上(我用的是centos7.x) 下载地址 https://www.elastic.co/downloads/elasticsearch

3.es不能用root用户启动

异常信息:can not run elasticsearch as root

解决方案: 新建用户 adduser xxx 将es文件夹权限修改 chown -R xx|xx 文件夹

安装步骤

1.把下载好的tar包解压至/usr/local目录下

2.进入bin文件加 ./elasticsearch 启动es

  1. ./elasticsearch -d 后台启动

4.外部访问端口默认9200,多台机器交互时默认9300 使用命令查看端口绑定的ip地址netstat -aon|grep 9200 ,如果绑定的是127.0.0.1只能内部访问,不能外部访问

5.curl -XGET http://ip地址:9200 确认是否启动成功

--安装过程注意的问题

1.修改内存

异常信息:Java HotSpot(TM) 64-Bit Server VM warning: INFO: os::commit_memory(0x00000000c5330000, 986513408, 0) failed; error='Cannot allocate memory' (errno=12)

解决方案: 修改/config/jvm.options文件 -Xms200m -Xmx200m

2.修改文件大小

异常信息: max file descriptors [65535] for elasticsearch process is too low, increase to at least [65536]

[2]: max number of threads [3895] for user [elastic] is too low, increase to at least [4096]

[3]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]

解决方案: 1.修改/etc/security/limits.conf,修改到提示值即可

  • hard nofile 65536

2.修改/etc/security/limits.d/90-nproc.conf 文件 添加

  • hard nproc 4096

3.修改/etc/sysctl.conf

添加配置:vm.max_map_count=262144, 然后执行命令 sysctl -p

soft nproc: 可打开的文件描述符的最大数(软限制)

hard nproc: 可打开的文件描述符的最大数(硬限制)

soft nofile:单个用户可用的最大进程数量(软限制)

hard nofile:单个用户可用的最大进程数量(硬限制)

三.简单的集群配置

主节点配置

集群名称,其他节点就是通过这个名字找到指定的集群

cluster.name: wali

节点名称,一个集群里节点名称不能重复

node.name: master

是否为主节点

node.master: true

存放数据的位置

path.data: /home/tar/elasticsearch-6.3.2/data

存放日志的位置

path.logs: /home/tar/elasticsearch-6.3.2/logs

绑定的ip

network.host : 172.31.69.209

指示是否为 Elasticsearch 服务启用 HTTP。如果您要通过使用 Elasticsearch REST 请求来直接查询 Elasticsearch 数据,那么可以启用 HTTP 端口

http.cors.enabled: true

如果 http.cors.enabled 的值为 true,那么该属性会指定允许 REST 请求来自何处。

http.cors.allow-origin: "*"

如果启用了 HTTP 端口,那么此属性指定由 Elasticsearch 服务使用的端口。

http.port: 9200

用于某个集群中 Elasticsearch 节点之间的通信的端口

transport.tcp.port: 9300

其他节点配置

集群名称,其他节点就是通过这个名字找到指定的集群

cluster.name: wali

节点名称,一个集群里节点名称不能重复

node.name: slave2

存放数据的位置

path.data: /home/wuzhuang/data2

存放日志的位置

path.logs: /home/wuzhuang/logs2

绑定的ip

network.host : 172.31.69.209

提供其他 Elasticsearch 服务节点的单点广播发现功能。配置集群中基于主机 TCP 端口的其他 Elasticsearch 服务的逗号分隔列表。

discovery.zen.ping.unicast.hosts: ["172.31.69.209"]

elasticsearch.yml配置属性

属性 缺省值 描述
cluster.name federated_cluster Elasticsearch 集群名称。使用集群可将单独 Process Federation Server 绑定到单个分布式系统中。参与集群的所有服务器都必须具有相同的集群名称。
node.name node1 Elasticsearch 节点名。集群中的每个 Process Federation Server 都必须具有唯一节点名。
node.master true 指示某个节点是否符合成为主节点的条件。主节点管理 Elasticsearch 集群的状态。在运行时,Elasticsearch 服务会自动提名某一个合格的集群成员成为主节点。
node.data true 指示节点是否为数据节点。数据节点包含并管理索引的一部分。
http.enabled false 指示是否为 Elasticsearch 服务启用 HTTP。如果您要通过使用 Elasticsearch REST 请求来直接查询 Elasticsearch 数据,那么可以启用 HTTP 端口。
htttp.port 9200 如果启用了 HTTP 端口,那么此属性指定由 Elasticsearch 服务使用的端口。
http.cors.enabled true 如果启用了 HTTP 端口,那么此属性会指定是否允许跨源 REST 请求。
http.cors.allowed.origin localhost 如果 http.cors.enabled 的值为 true,那么该属性会指定允许 REST 请求来自何处。
transport.tcp.port 9300 用于某个集群中 Elasticsearch 节点之间的通信的端口。
discovery.zen.minimum_master_nodes 1 指示某个集群定额所需的 Process Federation Server 的数量。
discovery.zen.ping.multicast.enabled false 通过发送节点所接收和响应的一个或多个多点广播请求来提供对其他 Elasticsearch 服务节点的多点广播 ping 发现功能。有关更多信息,请参阅 Elasticsearch 文档。
discovery.zen.ping.unicasts.hosts localhost 提供其他 Elasticsearch 服务节点的单点广播发现功能。配置集群中基于主机 TCP 端口的其他 Elasticsearch 服务的逗号分隔列表。
discovery.zen.ping.timeout 3s Elastic 搜索节点等待加入 Elasticsearch 集群的时间。

你可能感兴趣的:(es(elsaticsearch6)入门)