当前位置: 首页 > news >正文

源码部署ELK

目录

资源列表

基础环境

关闭防护墙

关闭内核安全机制

修改主机名

添加hosts映射

一、部署elasticsearch

修改limit限制

部署elasticsearch

修改配置文件

单节点

集群(3台节点集群为例)

启动

二、部署logstash

部署logstash

添加配置文件

启动

三、部署kibana

单节点kibana

部署kibana

修改配置文件

启动

多节点kibana


        ELK架构是最经典的一个日志收集平台,本文详细讲述了ELK的部署方式,其中包括单机es,集群es,单机kibana,集群kibana的部署流程。本文中涉及到的软件包如果有需要可以评论区找我要,无偿提供。

资源列表

操作系统配置主机名IP
CentOS7.3.16112C4Ges01192.168.207.131
CentOS7.3.16112C4Gkibana192.168.207.165
CentOS7.3.16112C4Glogstash192.168.207.166

基础环境

关闭防护墙

systemctl stop firewalld
systemctl disable firewalld

关闭内核安全机制

sed -i "s/.*SELINUX=.*/SELINUX=disabled/g" /etc/selinux/config
reboot

修改主机名

hostnamectl set-hostname es01
hostnamectl set-hostname kibana
hostnamectl set-hostname logstash

添加hosts映射

cat >> /etc/hosts << EOF
192.168.207.131 es01
192.168.207.165 kibana
192.168.207.166 logstash
EOF

一、部署elasticsearch

修改limit限制

cat > /etc/security/limits.d/es.conf << EOF
* soft nproc 655360
* hard nproc 655360
* soft nofile 655360
* hard nofile 655360
EOF
​
cat >> /etc/sysctl.conf << EOF
vm.max_map_count=655360
EOF
sysctl -p

部署elasticsearch

mkdir -p /data/elasticsearch
tar zxvf elasticsearch-7.14.0-linux-x86_64.tar.gz -C /data/elasticsearch

修改配置文件

单节点

mkdir /data/elasticsearch/{data,logs}[root@es01 elasticsearch-7.14.0]# grep -v "^#" /data/elasticsearch/elasticsearch-7.14.0/config/elasticsearch.yml
cluster.name: my-application
node.name: es01
path.data: /data/elasticsearch/data
path.logs: /data/elasticsearch/logs
bootstrap.memory_lock: false
network.host: 0.0.0.0
http.port: 9200
cluster.initial_master_nodes: ["es01"]

集群(3台节点集群为例)

需要准备3台机器,主机名分别是es01,es02,es03

[root@es01 ~]# grep -v "^#" /data/elasticsearch/elasticsearch-7.14.0/config/elasticsearch.yml
cluster.name: es
node.name: es01
path.data: /data/elasticsearch/data
path.logs: /data/elasticsearch/logs
bootstrap.memory_lock: false
network.host: 0.0.0.0
http.port: 9200
discovery.seed_hosts: ["es01","es02","es03"]
cluster.initial_master_nodes: ["es01","es02","es03"]
node.master: true
node.data: true
http.cors.enabled: true
http.cors.allow-origin: "*"
​
[root@es02 ~]# grep -v "^#" /data/elasticsearch/elasticsearch-7.14.0/config/elasticsearch.yml
cluster.name: es
node.name: es02
path.data: /data/elasticsearch/data
path.logs: /data/elasticsearch/logs
bootstrap.memory_lock: false
network.host: 0.0.0.0
http.port: 9200
discovery.seed_hosts: ["es01","es02","es03"]
cluster.initial_master_nodes: ["es02", "es01", "es03"]
node.master: true
node.data: true
http.cors.enabled: true
http.cors.allow-origin: "*"
​
​
[root@es03 ~]# grep -v "^#" /data/elasticsearch/elasticsearch-7.14.0/config/elasticsearch.yml
cluster.name: es
node.name: es03
path.data: /data/elasticsearch/data
path.logs: /data/elasticsearch/logs
bootstrap.memory_lock: false
network.host: 0.0.0.0
http.port: 9200
discovery.seed_hosts: ["es01","es02","es03"]
cluster.initial_master_nodes: ["es01", "es02", "es03"]
node.master: true
node.data: true
http.cors.enabled: true
http.cors.allow-origin: "*"

启动

useradd es 
chown -R es:es /data/
su - es
/data/elasticsearch/elasticsearch-7.14.0/bin/elasticsearch -d

二、部署logstash

部署logstash

mkdir -p /data/logstash
tar zxvf logstash-7.14.0-linux-x86_64.tar.gz -C /data/logstash/

添加配置文件

mkdir /data/logstash/logstash-7.14.0/conf.dcat > /data/logstash/logstash-7.14.0/conf.d/system.conf << 'EOF'
input { file{ path =>"/var/log/messages" type =>"system" start_position =>"beginning" } 
}
output { elasticsearch { hosts => ["192.168.207.131:9200"] index =>"system-%{+YYYY.MM.dd}" } 
}
EOFcat > /data/logstash/logstash-7.14.0/conf.d/apache.conf << 'EOF'
input {file{ path =>"/var/log/httpd/access_log"  type =>"access" start_position =>"beginning" }file {path =>"/var/log/httpd/error_log" type =>"error" start_position =>"beginning" }
}output {if [type] == "access" { elasticsearch { hosts => ["192.168.207.131:9200"] index =>"apache_access-%{+YYYY.MM.dd}" }}if [type] == "error" { elasticsearch { hosts => ["192.168.207.131:9200"]index =>"apache_error-%{+YYYY.MM.dd}"}}
}
EOF

启动

/data/logstash/logstash-7.14.0/bin/logstash -f /data/logstash/logstash-7.14.0/conf.d/

三、部署kibana

单节点kibana

部署kibana

mkdir -p /data/kibana
tar zxvf kibana-7.14.0-linux-x86_64.tar.gz -C /data/kibana/

修改配置文件

grep -v "^#" /data/kibana/kibana-7.14.0-linux-x86_64/config/kibana.yml  | grep -v "^$"
server.port: 5601
server.host: "0.0.0.0"
elasticsearch.hosts: ["http://192.168.207.131:9200"]
kibana.index: ".kibana"

启动

useradd kibana
chown -R kibana:kibana /data 
su - kibana
/data/kibana/kibana-7.14.0-linux-x86_64/bin/kibana

多节点kibana

每个节点配置相同

[root@es01 ~]# grep -v "^#" /data/kibana/kibana-7.14.0-linux-x86_64/config/kibana.yml  | grep -v "^$"
server.port: 5601
server.host: "0.0.0.0"
server.name: "your-hostname"
elasticsearch.hosts: ["http://es01:9200", "http://es02:9200", "http://es03:9200"]
kibana.index: ".kibana"

http://www.lryc.cn/news/357997.html

相关文章:

  • 构造+模拟,CF1148C. Crazy Diamond
  • CAD二次开发(2)-将直线对象添加到CAD图形文件
  • 代码随想录二刷 Day05 | 242.有效的字母异位词,349. 两个数组的交集,202. 快乐数,1. 两数之和,454.四数相加II,383. 赎金信
  • 2024年四川省三支一扶报名流程图解✅
  • js Dom基础
  • pytest识别测试用例的机制以及和unittest的区别
  • 民国漫画杂志《时代漫画》第17期.PDF
  • [AIGC] Spring Boot 2 自定义 Starter 指南
  • HCIP综合实验命令
  • JS移动端设置mouseover,mouseleave有效么
  • IAR9.30安装和注册相关
  • HTTP Digest Access Authentication Schema
  • MySql超大Sql文件导入效率优化
  • 【leetcode1944--队列中可以看到的人数】
  • 基于51单片机的室内空气质量检测-仿真设计
  • day22二叉树part08 | 235. 二叉搜索树的最近公共祖先 701.二叉搜索树中的插入操作 450.删除二叉搜索树中的节点
  • 【Linux】Linux环境基础开发工具_2
  • 长方形边框 上方中间有缺口 css
  • 2024-05-29 架构-程序设计-思考
  • 关于网络的基础知识
  • CTF网络安全大赛简单web题目:eval
  • Linux通过 SSH 使用 rsync 进行文件传输
  • 【保姆级介绍下Foxmail 邮箱】
  • ABAP MD04增强排除MRP元素
  • 构建一个简单的情感分析器:使用Python和spaCy
  • 数据库设计实例---学习数据库最重要的应用之一
  • 数据结构算法题day05
  • 关于《Java并发编程之线程池十八问》的补充内容
  • 扒出秦L三个槽点,我不考虑买它了
  • 【408真题】2009-28