Elastaticsearch

1. 环境配置

安装参考: https://www.elastic.co/guide/en/elasticsearch/reference/7.3/install-elasticsearch.html

(1)禁用 swap 分区

交换对性能,节点稳定性非常不利,应该不惜一切代价避免。它可能导致垃圾收集持续数分钟而不是毫秒,并且可能导致节点响应缓慢甚至断开与群集的连接。

解决此问题有三种方法:

  • 禁用交换分区
  • 设置 vm.swappiness 为 1 ,降低内核交换的倾向,正常情况下不交换,但允许系统在紧急情况下交换
  • 启用 bootstrap.memory_lock 尝试将进程地址空间锁定在 RAM 中,从而防止任何Elasticsearch内存被换出。

//禁用交换分区

1
2
3
4
5
$ swapoff - a
$ vi /etc/fstab
...
#/dev/mapper/centos-swap swap swap defaults 0 0
...

[success] 配置说明参考:https://www.elastic.co/guide/en/elasticsearch/reference/7.3/setup-configuration-memory.html

(2)文件描述符

rpm包安装的,默认都已经设置为 65535 ,具体查看启动文件

(3)虚拟内存

rpm 包安装,默认已经设置 infinity。

(4)线程数

rpm 包安装,默认已经设置 4096

2. Elasticsearch 安装

[success]目前新的 Elasticsearch 版本已经内置 JDK ,不需要单独安装.

1
2
3
4
$ wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.3.0-x86_64.rpm
$ wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.3.0-x86_64.rpm.sha512
$ shasum -a 512 -c elasticsearch-7.3.0-x86_64.rpm.sha512
$ rpm --install elasticsearch-7.3.0-x86_64.rpm

3. Elasticsearch 配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
$ vim /etc/elasticsearch/elasticsearch.yml
cluster.name: aishangwei-test
node.name: c720175.xiodi.cn
path.data: /data/elasticsearch
path.logs: /var/log/elasticsearch
network.host: 192.168.20.175
http.port: 9200
discovery.seed_hosts: ["c720175.xiodi.cn","c720176.xiodi.cn", "c720177.xiodi.cn"]
cluster.initial_master_nodes: ["c720175.xiodi.cn","c720176.xiodi.cn", "c720177.xiodi.cn"]

$ mkdir /data/elasticsearch
$ chown -R elasticsearch:elasticsearch /data/elasticsearch
$ systemctl start elasticsearch && systemctl enable elasticsearch
$ curl http://192.168.20.175:9200

Kibana

1. Kibana 介绍

Kibana是一种可视化工具,它依赖于Elasticsearch来查询用于生成可视化的数据。因此,在继续之前,请确保Elasticsearch已启动并正在运行。

Kibana是一个Web应用程序,与在JVM上运行的Elasticsearch和Logstash不同,Kibana由Node.js提供支持。在启动过程中,Kibana尝试连接到正在运行的Elasticsearch ( http://localhost:9200 )。Kibana 的默认端口为5601http://localhost:5601/status 查看Kibana服务器状态。

2. Kibana 安装

1
2
3
$ wget https://artifacts.elastic.co/downloads/kibana/kibana-7.3.0-x86_64.rpm
$ sha512sum kibana-7.3.0-x86_64.rpm
$ yum -y install kibana-7.3.0-x86_64.rpm

3. Kibana 配置

一些关键的配置如下:

  • server.port //默认为 5601
  • server.host //默认为localhost
  • server.name //用于标识此 Kibana 实例,默认为主机名
  • elasticsearch.hosts //默认为 http://localhost:9200
  • elasticsearch.username //只有开启 x-pack的时候,才会有用
  • elasticsearch.password
  • kibana.index // Kibana在Elasticsearch中使用索引来存储保存的搜索、可视化和仪表板。如果索引不存在,Kibana将创建一个新索引。默认 .kibana。

Logstatch

1. 环境配置

Logstash需要Java 8或Java 11。使用 官方Oracle发行版或OpenJDK等开源发行版。

1
2
3
4
5
$ cat /etc/profile.d/java.sh
export JAVA_HOME=/usr/local/java
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib/rt.jar
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
1
2
3
4
$ java -version
java version "1.8.0_221"
Java(TM) SE Runtime Environment (build 1.8.0_221-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.221-b11, mixed mode)

[success]官方的Oracle发行版: http://www.oracle.com/technetwork/java/javase/downloads/index.html )
OpenJDK:http://openjdk.java.net/

2. 安装配置 Logstash

Logstash 旧版本和 Elasticsearch 7 兼容参考:https://www.elastic.co/cn/support/matrix#matrix_compatibility

(1)yum 方式安装

1
2
$ wget https://artifacts.elastic.co/downloads/logstash/logstash-7.3.0.rpm
$ yum -y install logstash-7.3.0.rpm
1
$ /usr/share/logstash/bin/logstash -e "input { stdin { } } output { stdout {} }"

[success] CTRL-D 退出