Linux-Elasticsearch-Install

Elasticsearch CentOS7 下 RPM 安装

一 安装环境查看

二 软件版本选用

jdk 1.8.0_242
elasticsearch 7.6.2
kibana 7.6.2
logstash 7.6.2

三 安装配置

1 安装 JDK

过程不详述

2 安装 ELK

官网下载安装包:https://www.elastic.co/cn
以下文件是装 head 时会用到,下载资源特别慢
源码包:源码包下载

安装

rpm -ivh elasticsearch-7.6.2-x86_64.rpm
rpm -ivh kibana-7.6.2-x86_64.rpm
rpm -ivh logstash-7.6.2.rpm

修改 elasticsearch 配置文件

/etc/elasticsearch/elasticsearch.yml

 
# 集群名
cluster.name: my-es
# node 名
node.name: node-1
# 数据目录
path.data: /data/es-data
# 日志目录
path.logs: /var/log/elasticsearch
network.host: 0.0.0.0
http.port: 9200
# 集群 master 需要和 node 名设置一致
cluster.initial_master_nodes: [“node-1”]

设置 elasticsearch 的 java 目录(手动安装 java 需设置 yum 安装的 java 无需设置)

修改配置文件

vim /etc/sysconfig/elasticsearch

设置 java 目录

JAVA_HOME=/usr/local/jdk1.8.0_242

创建数据目录并设置权限

mkdir -p /data/es-data
chown -R elasticsearch:elasticsearch /data/es-data/

启动 elasticsearch

systemctl start elasticsearch
systemctl enable elasticsearch

检测是否启动

设置 kibana 修改配置文件

vim /etc/kibana/kibana.yml

server.port: 5601
server.host: "0.0.0.0"
server.name: "node-1"
elasticsearch.hosts: ["http://192.168.1.4:9200"]
kibana.index: ".kibana"

PS: 7 版本 elasticsearch.hosts 的配置在 6 版本里面为 elasticsearch.url 需要配置正确否则 message 日志会报错

FATAL  Error: [elasticsearch.url]: definition for this key is missing

  
启动

systemctl start kibana
systemctl enable kibana

web 页面查看 http:/127.0.0.1:5601

head 插件安装

elasticsearch-head 下载地址:https://github.com/mobz/elasticsearch-head
node 下载地址:https://npm.taobao.org/mirrors/node/latest-v13.x/node-v13.0.0-linux-x64.tar.gz
elasticsearch-head-master和node-v13.0.0-linux-x64 解压到 /usr 下

修改配置文件 /etc/elasticsearch/elasticsearch.yml 增加参数

# 增加参数,使head插件可以访问es 
http.cors.enabled: true 
http.cors.allow-origin: "

修改环境变量 /etc/profile 添加

export NODE_HOME=/usr/node-v13.0.0-linux-x64
export PATH=$PATH:$NODE_HOME/bin
export NODE_PATH=$NODE_HOME/lib/node_modules

设置生效

source /etc/profile

安装 grunt

cd /usr/elasticsearch-head-master
npm install -g grunt-cli

检查是否安装成功

修改 head 插件源码 /usr/elasticsearch-head-master/Gruntfile.js

PS:hostname 是新增的,不要忘记原有的 true 后面加,符号

修改连接地址 /usr/elasticsearch-head-master/_site/app.js
PS: 如果不是 ES 不是本机请修改

下载运行 head 必要的文件(放置在文件夹/tmp下),注意这边下载好后不需要解压,执行 npm install 的时候会自动去完成

cd /tmp
wget https://github.com/Medium/phantomjs/releases/download/v2.1.1/phantomjs-2.1.1-linux-x86_64.tar.bz2
yum -y install bzip2

运行 head

cd /usr/elasticsearch-head-master
npm install

后台启动

grunt server &

web 页面验证

http://127.0.0.1:9100

集群健康状态检查

使用 logstash 收集日志

标准输入输出

/usr/share/logstash/bin/logstash -e 'input { stdin{} } output { stdout {} }'

输出至 ES

/usr/share/logstash/bin/logstash -e 'input { stdin{} } output { elasticsearch { hosts => ["127.0.0.1:9200"] index => "logstash-%{+YYYY.MM.dd}" } }'

打开 head 即可查看

写一个配置文件收集系统日志 /etc/logstash/conf.d/file.conf

input{
  file{
    path => ["/var/log/messages"]
    type => "system-log"
    start_position => "beginning"
  }
}
 
filter{
 
}
 
output{
  elasticsearch{
    hosts => ["192.168.10.5:9200"]
    index => "system-log-%{+YYYY.MM}"
  }
}

启动放置在后台

/usr/share/logstash/bin/logstash -f /etc/logstash/conf.d/file.conf &

当文件 /var/log/messages 有日志写入时就会写 es,在 head 可以查看

把日志添加至 kibana 展示

查看

elk7 搭建完成与 elk6 搭建几乎一致
区别为 elasticsearch 配置文件需要添加配置,否则 elasticsearch 启动不成功
cluster.initial_master_nodes: [“node-1”]

Contents
  1. 1. Elasticsearch CentOS7 下 RPM 安装
    1. 1.1. 一 安装环境查看
    2. 1.2. 二 软件版本选用
    3. 1.3. 三 安装配置
      1. 1.3.1. 1 安装 JDK
      2. 1.3.2. 2 安装 ELK
|