这里使用的6.6.0版本,ES需要JDK环境,对应1.8
Elasticsearch安装:
1.下载:https://elasticsearch.cn/download/
2.解压:
3.修改配置:jvm.options和elasticsearch.yml
因为默认的jvm参数-Xms和Xmx都是1G。如果自己搭的虚拟机 可能内存分配不多,会导致启动失败:
vim /apps/elasticsearch-6.6.0/config/jvm.options,修改-Xms512m和Xmx512m的值。根据自己的机器情况合理分配
vim /apps/elasticsearch-6.6.0/config/elasticsearch.yml
设置端口:http.port: 9200
开放外网访问:network.host: 0.0.0.0
数据存放位置:path.data: /apps/data/es/data
日志存放位置:path.logs: /apps/data/es/logs
4.设置内核参数
vim /etc/sysctl.conf
添加如下内容:
fs.file-max=65536
vm.max_map_count=262144
刷新配置:sysctl -p
如果后续启动失败:
rm -f /sbin/modprobe
ln -s /bin/true /sbin/modprobe
rm -f /sbin/sysctl
ln -s /bin/true /sbin/sysctl
5.设置资源参数
vim /etc/security/limits.conf
添加一下内容:(*表示所有用户可享受这个配置,如果要指定用户可以改成用户名)
* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096
6.修改进程参数:
vim /etc/security/limits.d/20-nproc.conf
添加:* soft nproc 4096
7.es不能用root用户启动,因此我们要添加一个一个新的用户,如果有其他的用户,可以直接使用,注意下es相关目录的权限即可
adduser admin 添加一个admin用户
passwd admin 设置admin用户密码
chown -R admin /apps -R(递归)分配目录下所有文件/目录的拥有者
或者 chown -R 777 /apps 修改文件权限
8.使用上面添加admin用户启动服务
最好新开个窗口去连接服务器,有可能在当前窗口操作,刚才修改哪些配置可能不生效。
./bin/elasticsearch -d (-d后台启动)
启动日志就在我们第三部配置日志目录中,查看日志:
cat /apps/data/es/logs/elasticsearch.log
看到日志中started标志 就表示服务起来了
因为我的是在vmware虚拟机中启动的,我就直接用宿主机去访问下虚拟机就相当于是外网访问了,http://192.168.0.67:9200/
看到如下类容就说明elasticsearch服务已经正常启动了
Elasticsearch和关系型数据库名词对比:
Index——>Database 创建一个索引就相当于创建一个库
Type——>table type相当于表,但是es6之前可以建多个,es6只能一个,es7就没有type了,都是建多个Index了
Document——>Row 文档相当于行数据
Field——>Column 字段相当于列
Mapping——>Schema 字段属性映射
everything is index——>index 在es中什么都是“索引”,此“索引”是类比关系型数据库的索引
Get http://xxxx ——> select请求相当于查询
POST/PUT http://xxxx——>update/insert
DELETE http://xxxx——>DELETE
Kibana安装:
Kibana是一个针对Elasticsearch的开源分析及可视化平台,用来搜索、查看交互存储在Elasticsearch索引中的数据。使用Kibana,可以通过各种图表进行高级数据分析及展示。它让海量数据更容易理解。操作简单,基于浏览器的用户界面可以快速创建仪表板实时显示Elasticsearch查询动态。
1.下载es对应的kibana版本:同样是这个地址:https://elasticsearch.cn/download/
2.解压:tar -zxvf kibana-6.6.0-linux-x86_64.tar.gz
3.配置:vim config/kibana.yml
server.port: 5601 端口
server.host: "0.0.0.0" 开放外网访问
elasticsearch.hosts: ["http://192.168.0.67:9200"] es的服务器
4.启动服务:./bin/kibana
也可以后台启动kibana:nohup ./bin/kibana &
这样日志就在当前目录的nohup.out文件中
Kibana简单操作ES:
//查询所有 GET _search { "query": { "match_all": {} } } //删除 index test1 DELETE /test1 { } //创建index test并设置分片数1,备份数0 PUT /test { "settings":{ "number_of_shards": 1, "number_of_replicas": 0 } } //往test中插入id为1的数据 PUT /test/_doc/1 { "age":18, "name":"zhansgan1" } //往test中插入id为2的数据 PUT /test/_doc/2 { "age":18, "name":"zhansgan2" } //查询test的所有数据 GET /test/_search { } //修改test中id为1的数据 POST /test/_doc/1 { "age":19, "name":"zhansgan" }