最近在学习极客时间《Elasticsearch核心技术实战》 ,本文记录ElasticSearch:7.7.1和kibana:7.7.1的安装,我这边在macOS10.14.6上测试安装
下载es
https://www.elastic.co/cn/downloads/past-releases/elasticsearch-7-1-1
es的目录结构
目录 | 配置文件 | 描述 |
---|---|---|
bin | 脚本文件,包括启动es,安装插件,运行统计数据 | |
config | es.yml | 集群配置文件,user、role based相关文件 |
JDK | java运行环境 | |
data | path.data | 数据文件 |
lib | java类库 | |
logs | path.log | 日志文件 |
modules | 包含所有es模块 | |
plugins | 包含所有已安装插件 |
jvm配置
-
修改jvm - config/jvm.options
7.1下载的默认设置是1GB
-
配置的建议
Xmx和Xms设置成一样 Xmx不要超过机器内存的50% 不要超过30GB
运行es
进入解压包 在bin目录下执行 ./elasticsearch
执行完成后,在浏览器输入http://127.0.0.1:9200/ 可以看到es已经运行
-
查询运行的插件 ./elasticsearch-plugin list 发现没有安装任何插件
-
./elasticsearch-plugin install analysis-icu 安装analysis-icu(国际化分词插件)
-
再使用 ./elasticsearch-plugin list 命令查看就可以看到插件
-
打开浏览器通过http://127.0.0.1:9200/_cat/plugins 查看安装的插件
如何运行多个Elasticsearch实例
配置多个节点
- ./elasticsearch -E node.name=node0 -E cluster.name=geektime -E path.data=node1_data -d
- ./elasticsearch -E node.name=node1 -E cluster.name=geektime -E path.data=node1_data -d
- ./elasticsearch -E node.name=node2 -E cluster.name=geektime -E path.data=node2_data -d
- ./elasticsearch -E node.name=node3 -E cluster.name=geektime -E path.data=node3_data -d
- 删除进程 ps|grep elasticsearch
kill pid
可以通过http://127.0.0.1:9200/_cat/nodes查看新建节点
Kibana安装与界面快速浏览
- 下载地址 https://www.elastic.co/cn/downloads/past-releases/kibana-7-1-1 (注意kibana和es的版本必须一致)
- 直接解压执行bin目录下的kibana(es需要同时打开)
- 浏览器访问localhost:5601
Logstash安装域数据导入
- 到es官网下logstash
- 到bin目录下vim logstash.conf 加入如下内容
input {
file {
path => "/Users/project/geektime-ELK/part-1/3.3-文档的基本CRUD与批量操作/ml-latest-small/movies.csv"
start_position => "beginning"
sincedb_path => "/dev/null"
}
}
filter {
csv {
separator => ","
columns => ["id","content","genre"]
}
mutate {
split => { "genre" => "|" }
remove_field => ["path", "host","@timestamp","message"]
}
mutate {
split => ["content", "("]
add_field => { "title" => "%{[content][0]}"}
add_field => { "year" => "%{[content][1]}"}
}
mutate {
convert => {
"year" => "integer"
}
strip => ["title"]
remove_field => ["path", "host","@timestamp","message","content"]
}
}
output {
elasticsearch {
hosts => "http://localhost:9200"
index => "movies"
document_id => "%{id}"
}
stdout {}
}
其中file.path填写movies.csv 的地址
- 下载最MovieLens最小测试数据集:https://grouplens.org/datasets/movielens/
- 然后在bin目录下 执行sudo ./logstash -f logstash.conf 发下控制台有导入数据打印出来
原文地址
http://cbaj.gitee.io/blog/2020/07/09/%E5%AE%89%E8%A3%85Elasticsearch/#more
网友评论