1.1 环境安装
1.1.1 安装ElasticSearch
1.1.1.1 环境准备
–安装环境
linux服务器三台:8核cpu,16G内存,,CentOS6.9 200G
–搭建3个node
192.168.2.225 node-225
192.168.2…226 node-226
192.168.2…230 node-230
注意:目前ES仅支持Oralce的JDK和OpenJDK,其他的可能会出现问题
1.1.1.2 新建安装目录
(1).新建用户
[root @localhost ~]# adduser elk
[root @localhost ~]# mkdir es
1.1.1.3 安装jdk
(1).使用WinSCP工具拷贝下载好的安装文件jdk-8u121-linux-x64.gz到建的es文件夹下
(2).解压java包到es文件夹下
[root@localhost es]# tar -zxf jdk-8u121-linux-x64.gz
(3).配置java环境变量
[root@localhost es]# vi /etc/profile
–文件末添加如下
export JAVA_HOME=/es/jdk1.8.0_121
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:$CLASSPATH
(5).使修改的配置立刻生效
[root@localhost elk]# source /etc/profile
(6).测试java环境配置是否成功
[root@localhost elk]# java -version
1.1.1.4 安装ElasticSearch
(1).设置资源参数,修改系统文件/etc/security/limits.conf 避免错误:
[root@localhost es]# vi /etc/security/limits.conf
–添加如下内容,可以使用ulimit -a 命令查看变化
elk soft nofile 65536
elk hard nofile 65536
elk soft nproc 4096
elk hard nproc 4096
(2).设置内核参数,修改/etc/sysctl.conf文件避免错误:
[root@localhost es]# vi /etc/sysctl.conf
–添加如下内容:
vm.max_map_count = 262144
保存之后运行指向命令:
```go
[root@localhost es]# sudo sysctl -p
(3).使用WinSCP工具拷贝下载好的安装文件elasticsearch-5.2.0.tar.gz拷贝到建的es文件夹下
(4).解压ElasticSearch包到es文件夹
```go
[elk@localhost es]# tar -zxf elasticsearch-5.2.0.tar.gz
目录认识:
bin—这里面是ES启动的脚本
conf—elasticsearch.yml为ES的配置文件
data—这里是ES得当前节点的分片的数据,可以直接拷贝到其他的节点进行使用
logs—日志文件
plugins—这里存放一些常用的插件,如果有一切额外的插件,可以放在这里使用。
(5).修改配置文件elasticsearch-5.2.0/Configs/elasticsearch.yml
[elk@localhost es]# vi /elasticsearch-5.2.0/bin/Configs/elasticsearch.yml
–修改如下参数
# ---------------------------------- Cluster -----------------------------------
#这是集群名字
cluster.name: es-tt
# ------------------------------------ Node ------------------------------------
#节点名字
node.name: node-200
#节点是否可为主节点
node.master: true
#节点是否存储数据
node.data: true
# ----------------------------------- Paths ------------------------------------
#数据存放路径
path.data: /es/elasticsearch-5.2.0/data
#日志存放路径
path.logs: /es/elasticsearch-5.2.0/logs
# ----------------------------------- Memory -----------------------------------
#锁定物理内存地址,防止elasticsearch内存被交换出去,也就是避免es使用swap交换分区
bootstrap.memory_lock: false
#centos操作系统不支持SecComp,而es默认bootstrap.system_call_filter为true进行检测,所以导致检测失败,失败后直接导致ES不能启动
bootstrap.system_call_filter: false
# ---------------------------------- Network -----------------------------------
# 为es设置ip绑定,默认是127.0.0.1,也就是默认只能通过127.0.0.1 或者localhost才能访问
network.host: 172.18.1.225
#是否使用http协议对外提供服务,默认为true,开启。
http.enabled: true
#如果启用了HTTP协议,那么此属性指定由 Elasticsearch 对外服务使用的端口
http.port: 9200
#如果启用了HTTP协议,那么此属性会指定是否允许跨源 REST 请求。
http.cors.enabled: true
#如果 http.cors.enabled 的值为 true,那么该属性会指定允许 REST 请求来自何处。
http.cors.allow-origin: "*"
# Elasticsearch 内部通讯使用的端口
transport.tcp.port: 9300
# --------------------------------- Discovery ----------------------------------
#数据在节点间传输最大带宽
indices.recovery.max_bytes_per_sec : 50mb
#设置集群中master节点的初始列表,可以通过这些节点来自动发现新加入集群的节点
discovery.zen.ping.unicast.hosts: ["172.18.1.225:9300","172.18.1.226:9300","172.18.1.230:9300"]
#设置这个参数来保证集群中的节点可以知道其它N个有master资格的节点。默认为1,对于大的集群来说,可以设置节点数/2+1
discovery.zen.minimum_master_nodes: 2
--=============================================================================
(6).设置用户组
[root @localhost es]# chown –R elk:elk /es/elasticsearch-5.2.0
1.1.1.5 启动ElasticSearch
(1).另外两台机器重复以上操作
(2).切换到elasticsearch根目录,启动elasticsearch
[elk@localhost es]# su elk
[elk@localhost es]# cd /es/elasticsearch-5.2.0/bin
(3).启动程序
[elk@localhost es]# ./elasticsearch
(4).后台启动
[elk@localhost es]# ./elasticsearch -d
(5).查看进程
[elk@localhost es]# ps -ef | grep elastic
(6).测试 浏览器中打开http://192.168.2.225:9200/?pretty出现下图【注:如果公网地址,页面查询请使用公网ip,并开放对内端口】
1.1.1.6 维护elastic
查看es进程
ps aux | grep elsticsearch
关闭es进程
kill -9 pid
后台运行
./elasticsearch -d