• HOME
  • CATEGORY
  • ABOUT ME
All Articles

  • HOME
  • CATEGORY
  • ABOUT ME

Linux-Elasticsearch-Install

2021-01-02

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”]

赏

谢谢你请我吃糖果

支付宝
微信
  • Elasticsearch
  • Linux

扫一扫,分享到微信

微信分享二维码
Elasticsearch-Cluster-Node-Parameters
Linux-Python-File-Sync
© 2025 Sevattal
这里只是一个微不足道的计算机从业者
  • All Articles

tag:

  • Ansible
  • JMeter
  • CRM
  • Mail
  • Conda
  • Corosync-Pacemaker-CRM
  • DM Database
  • Scrapy
  • Cloud
  • ASM
  • Mysql
  • Linux
  • Elasticsearch
  • FFmpeg
  • Hexo
  • RabbitMQ
  • SpringBoot
  • Spring
  • Maven
  • Kubernetes
  • Lightroom
  • Crontab
  • DRBD
  • LVM
  • Nginx
  • NTP
  • OpenSSH
  • SSH
  • NetworkCard
  • Supervisor
  • Swap
  • TinyProxy
  • GCC
  • VNC
  • Oracle
  • MongDB
  • MinIO
  • Mysql-Lock
  • Restore
  • MysqlDump
  • Procedure
  • HTML
  • XtraBackup
  • Nacos
  • Neo4j
  • Netty
  • NAT
  • Route
  • ACL
  • EIGRP
  • Cisco
  • OSPF
  • HUAWEI
  • Switch
  • STP
  • VLAN
  • VTP
  • Nmap
  • OpenFeign
  • Sentinel
  • Backup
  • EXP
  • RMAN
  • DG
  • FlashBack
  • Job
  • Oracle-Inspection
  • Oracle-Name
  • Oracle RAC
  • RAC
  • Trigger
  • Postgres
  • Postgres-Copy
  • Flask-SQLalchemy
  • PGPool-II
  • Postgres+PGPool-II
  • Rancher
  • Redis
  • Redis-Copy
  • Redis-Cluster
  • Redis-Memory
  • Redis-RDB
  • Redis-AOF
  • Redis-Sentinel
  • Interview
  • SNMP
  • Spring Security
  • Bus
  • Config
  • Consul
  • GateWay
  • Eureka
  • Sleuth
  • Stream
  • Zookeeper
  • Tomcat
  • VMware
  • ShareDisk
  • Video-Clip
  • Hystrix
  • Ribbon
  • Regedit
  • USB
  • Yaml
  • Zabbix

    缺失模块。
    1、请确保node版本大于6.2
    2、在博客根目录(注意不是yilia根目录)执行以下命令:
    npm i hexo-generator-json-content --save

    3、在根目录_config.yml里添加配置:

      jsonContent:
        meta: false
        pages: false
        posts:
          title: true
          date: true
          path: true
          text: false
          raw: false
          content: false
          slug: false
          updated: false
          comments: false
          link: false
          permalink: false
          excerpt: false
          categories: false
          tags: true