- 安装jdk
自行安装jdk1.8
- 安装elasticsearch(下载地址: https://www.elastic.co/cn/downloads )
- 将下载好的安装包复制到对应目录
- 解压
tar -xzvf elasticsearch.tar.gz
- 修改ES配置文件,使用cd命令进入到config 文件下,执行 vi elasticsearch.yml 命令,
主要修改如下参数
- node.name: 指定当前节点的名称;
- node.master: 指定主节点。值一个设置为 true,另一个为 false;
- discovery.zen.ping.unicast.hosts:这里设置的是节点的 ip,或者自己配置 hosts 文件,指定 ip映射关系,直接写ip对应的名称;
- discovery.zen.minimum_master_nodes:主节点数,具体的可以参考 https://www.elastic.co/guide/en/elasticsearch/reference/5.3/important-settings.html#minimum_master_nodes
注:vi有两个模式:一个是编辑一个是命令。我们从命令进入编辑为:i,o,a。一般使用的是i。退出点击esc键,
编辑完内容后,按下Esc键,并输入“:wq”,然后回车就可以保存退出,
// master节点配置:
cluster.name: es-demo
node.name: master
node.master: true
node.attr.rack: r1
path.data: /data/elasticsearch // 存储数据
path.logs: /data/logs/elasticsearch // 日志
bootstrap.memory_lock: false
network.host: 192.168.48.123 # 从节点成对应的 ip
http.port: 9200
discovery.zen.ping.unicast.hosts:["192.168.48.123", "192.168.48.124"] // 所有es节点
discovery.zen.minimum_master_nodes: 1 // nodes / 2 +1
http.cors.enabled: true
http.cors.allow-origin: "*"
// node节点:
node.name 更新成 node1,
node.master: false,其他的保持一致
network.host: 192.168.48.124
参数修改参考 如下链接
单机配置:https://www.cnblogs.com/lizichao1991/p/7809156.html
集群配置:https://www.linuxidc.com/Linux/2017-04/143136.htm
4、问题处理
- max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536] 意思是说你的进程不够用了
解决方案: 切到root 用户:进入到security目录下的limits.conf;执行命令 vim /etc/security/limits.conf 在文件的末尾添加下面的参数值:
* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096
前面的*符号必须带上,然后重新启动就可以了。执行完成后可以使用命令 ulimit -n 查看进程数
- max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144] 需要修改系统变量的最大值了
解决方案:切换到root用户修改配置sysctl.conf 增加配置值: vm.max_map_count=655360
执行命令 sysctl -p ,然后重新启动ES服务 就可以了
5、启动
在bin目录下,输入 sh elasticsearch -d(或nohup ./elasticsearch &)后台运行
6、检查集群是否有效 curl -XGET 'http://192.168.48.123:9200/_cat/nodes?pretty
- 安装kibana(与elasticsearch版本一致)
- Kibana官方下载地址:https://www.elastic.co/cn/downloads/kibana
- 将已下载文件复制到指定目录,解压 tar –zxvf kibana.tar.gz
- 然后到kibana安装目录的config下,编辑kibana.yml配置文件(vi kibana.yml),添加如下配置:
#配置本机ip
server.host: "192.168.48.123"
#配置es集群url(配置master节点)
elasticsearch.url: http://192.168.48.123:9200
4. 切换到kibana安装目录的bin目录下,执行kibana文件
./kibana(利用 nohup ./kibana & 可永久启动)
- 安装head 插件 (与kibana二选一)
- 下载head安装包,下载地址: https://github.com/mobz/elasticsearch-head/archive/master.zip
- 上传到虚拟机上,由于head 插件不能放在elasticsearch 文件夹里,需要单独放,单独去执行;所以在elasticsearch 同级目录下解压 head 插件;解压命令(unzip elasticsearch-head.zip)
- node.js安装(安装head时需要)
执行命令一:curl -sL https://rpm.nodesource.com/setup_8.x | bash -
命令二:yum install -y nodejs
执行完成后,可以使用命令 node -v 验证是否安装成功,同时npm 也安装成功了;执行命令 npm -v 也是可以验证
4. 安装grunt(安装head时需要)
cd /home/ntc/code/elasticsearch-head
安装命令一:npm install -g grunt-cli //执行后会生成node_modules文件夹
命令二:npm install
5. 修改head源码
vi /home/ntc/code/elasticsearch-head/Gruntfile.js
connect: {
server: {
options: {
port: 9100,
hostname: '*',
base: '.',
keepalive: true
}
}
}
6. 修改 _site/app.js
vi /home/ntc/code/elasticsearch-head/_site/app.js
把localhost修改成你es的服务器地址,如:
this.base_uri = this.config.base_uri || this.prefs.get("app-base_uri") || "http://192.168.48.123:9200";
7. 修改Elasticsearch配置
修改elasticsearch.yml文件加入以下内容:
# 是否支持跨域
http.cors.enabled: true
# *表示支持所有域名
http.cors.allow-origin: "*"
8. 启动服务
cd /home/ntc/code/elasticsearch-head //先跳转到head目录下
grunt server //若想在后台运行,结尾追加“&”
- ik分词器(与elasticsearch版本对应)
- 下载最新版本的ik分词库,github地址为:https://github.com/medcl/elasticsearch-analysis-ik 下载zip包;
- 假如分词库未打包,请按照以下步骤操作;
1) 解压elasticsearch-analysis-ik-master.zip 得到elasticsearch-analysis-ik-master,进入elasticsearch-analysis-ik-master目 录,运行mvn package 进行打包,这个过程会比较慢,内存越小越慢,并且内存不够的话,可能会失败,如果已打包过了,就可以跳过该步骤;
2) 打包成功后,运行如下命令
Unzip -d /usr/local/elasticsearch/plugins/ik ./target/releases/elasticsearch-analysis-ik-5.3.0.zip
将打包的文件解压到elasticsearch的plugins目录下;
3. 假如分词库已打包了,请按照下面的操作步骤来处理
unzip -d /usr/local/elasticsearch/plugins/ik ./target/releases/elasticsearch-analysis-ik-5.3.0.zip
4. 重新启动elasticsearch服务
5. 输入下面的测试连接看看是否有相应的结果输出 curl -XGET 'http://localhost:9200/_analyze?pretty&analyzer=ik_max_word' -d '联想是全球最大的笔记本厂商',如安装成功会有相应的数据输出;
- Elasticsearch-sql安装
Elasticsearch-sq可以通过编写sql语句查询es中的数据
官方安装指导:https://github.com/NLPchina/elasticsearch-sql
- 在线安装
执行安装命令,选择与es匹配的版本,在bin目录下执行命令:Plugin install
执行成功后,可以看到es的插件中多了sql
2. 离线安装
选择与es匹配的版本进行下载,
https://github.com/NLPchina/elasticsearch-sql/releases/download/
将其解压,放至es的plugins文件夹下,并更名为sql
注:5.x/6.x 需下载安装 extract site. 解压后进行如下操作
cd site-server
npm install express --save
node node-server.js // 启动 sql
3. 重启es
4. Sql使用