1.下载对应jar 包
elasticsearch-7.10.1-linux-x86_64.tar.gz,logstash-7.10.1-linux-x86_64.tar.gz,kibana-7.10.1-linux-x86_64.tar.gz,对应地址为:
https://www.elastic.co/cn/downloads/past-releases#elasticsearch
注意几个包的版本尽量保持一致
2.elasticsearch 安装
tar -zvxf elasticsearch-7.10.1-linux-x86_64.tar.gz -C /home/ambity/
mkdir -p /usr/local/es/elasticsearch-7.10.1/log
mkdir -p /usr/local/es/elasticsearch-7.10.1/data
修改对应的elasticsearch.yml
vi /home/ambity/elasticsearch-7.10.1/config/elasticsearch.yml
修改为如下内容
cluster.name: my-application
node.name: node1
path.data: /usr/local/es/elasticsearch-7.10.1/data
path.logs: /usr/local/es/elasticsearch-7.10.1/log
network.host: 0.0.0.0
http.port: 9200
discovery.seed_hosts: ["服务器IP"]
#node1 为node.name 的值,这里用execl 格式分隔
cluster.initial_master_nodes: ["node1"]
bootstrap.system_call_filter: false
bootstrap.memory_lock: false
http.cors.enabled: true
http.cors.allow-origin: "*"
修改jvm.option 的堆大小
vim jvm.options
-Xms2g
-Xmx2g
启动:
nohup ./bin/elasticsearch &
es启动中遇到的问题
1.找不到java 文件
如果es 是 tar 包安装,那么jdk 也使用tar 包安装,如果是rpm 安装,那么jdk 最好也是用jdk安装,这个我改过各种文件,最后保持一致才不出问题。
2. 普通用户打开文件的最大数限制
问题错误信息描述:
max file descriptors [4096] for elasticsearch process likely too low, increase to at least [65536]
ES因为需要大量的创建索引文件,需要大量的打开系统的文件,所以我们需要解除linux系统当中打开文件最大数目的限制,不然ES启动就会抛错
三台机器使用baiqi用户执行以下命令解除打开文件数据的限制
sudo vi /etc/security/limits.conf
添加如下内容: 注意*不要去掉了
* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 4096
此文件修改后需要重新登录用户,才会生效
3.普通用户启动线程数限制
问题错误信息描述
max number of threads [1024] for user [es] likely too low, increase to at least [4096]
修改普通用户可以创建的最大线程数
max number of threads [1024] for user [es] likely too low, increase to at least [4096]原因:无法创建本地线程问题,用户最大可创建线程数太小解决方案:修改90-nproc.conf 配置文件。
三台机器使用ambity用户执行以下命令修改配置文件
Centos7
sudo vi /etc/security/limits.d/20-nproc.conf
找到如下内容:
* soft nproc 1024
* soft nproc 4096
4. 普通用户调大虚拟内存
错误信息描述:
max virtual memory areas vm.max_map_count [65530] likely too low, increase to at least [262144]
调大系统的虚拟内存
原因:最大虚拟内存太小
每次启动机器都手动执行下。
三台机器执行以下命令
编辑 /etc/sysctl.conf,
追加以下内容:vm.max_map_count=262144
保存后,执行:sysctl -p
3.kibana 安装
解压文件
tar -zxvf kibana-7.10.1-linux-x86_64.tar.gz
修改配置文件kibana.yml
server.port: 5601
server.host: "服务器IP"
elasticsearch.hosts: ["http://IP:9200"] #这里是elasticsearch的访问地址
启动
nohup ./kibana &
4.logstash 安装与导入数据
下载数据集
下载数据集
movielens/ml-latest-small/movies.csv
地址为
https://grouplens.org/datasets/movielens/
安装logstash
tar -zxvf logstash-7.10.1-linux-x86_64.tar.gz
添加logstash.conf
input {
file {
# 数据集的地址
path => "/home/ambity/logstash/config/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://192.168.2.166:9200"
index => "movies"
document_id => "%{id}"
}
stdout {}
}
启动logstash
./bin/logstash -f ../config/logstash.conf