日志分析集群安装部署(ELK) 保姆级教程

embedded/2025/2/28 21:52:17/

创建用户es不用root用户 创建的用户是elasticsearch密码:elasticsearch

useradd elasticsearch && echo elasticsearch|passwd --stdin elasticsearch

1.优化最打进程数、最大文件打开数、优化虚拟内存 、elastic.co vim /etc/security/limit.conf

* soft nofile 65536
* hard nofile 131072
* soft nproc 4096
* hard nproc 6553
vim /etc/sysctl.confvm.max_map_count=262144
sysctl -p

1.获取安装包官网 Elastic — 搜索 AI 公司 | Elastic

tar  xf  elasticsearch-8.13.4-linux-x86_64.tar.gz -C /usr/local
mv  /usr/local/elasticsearch-8.13.4 /usr/local/es
chown -R elasticsearch.elasticsearch /usr/local/es

2.配置环境变量

vim  /etc/profile
JAVA_HOME=/usr/local/es/jdk
ES_HOME=/usr/local/es
PATH=$JAVA_HOME/bin:$ES_HOME/bin:$PATH
export JAVA_HOME  ES_HOME
#刷新环境变量
source  /etc/profile

4.创建用来存储数据和存放证书并赋予权限

mkdir -p /usr/local/es/data
mkdir -p /usr/local/es/config/certs
chown  -R  elasticsearch:elasticsearch  /usr/local/es

注意:所有节点的操作都是一样的,到目前为止 5.签发证书 证书如果说是购买的不用生成非法证书 可以只在第一台服务器上生成非法正书

su - elasticsearch
cd  /usr/local/es/bin
./elasticsearch-certutil  ca   #生成ca证书
直接回车2次
./elasticsearch-certutil  cert  --ca  elastic-stack-ca.p12
直接回车3次
cd /usr/local/es
证书转移到我们创建存放证书的目录
mv elastic-certificates.p12    config/certs
mv elastic-stack-ca.p12 config/certs/

6.设置集群多节点HTTP证书

cd  /usr/lolcal/es/bin
./elasticsearch-certutil  http
是否生成CSR,选择 N ,不需要Generate a CSR? [y/N]N
是否使用已经存在的CA证书,选择 y ,因为已经创建签发好了CA 
Use an existing CA? [y/N]y
指定CA证书的路径地址,CA Path:后写绝对路径   
CA Path: /usr/local/es/config/certs/elastic-stack-ca.p12
设置密钥库的密码,直接 回车 即可   
Password for elastic-stack-ca.p12:
设置证书的失效时间,这里的y表示年,5y则代表失效时间5年 
For how long should your certificate be valid? [5y] 5y
是否需要为每个节点都生成证书,选择 N 无需每个节点都配置证书
Generate a certificate per node? [y/N]N
输入需连接集群节点主机名信息,一行输入一个IP地址,空行回车结束
es1-flower.com
es2-flower.com
es-3.flower.com
确认以上是否为正确的配置,输入 Y 表示信息正确
Is this correct [Y/n]Y
输入需连接集群节点IP信息,一行输入一个IP地址,空行回车结束
192.168.72.100
192.168.72.101
192.168.72.102
确认以上是否为正确的配置,输入 Y 表示信息正确
Is this correct [Y/n]Y
是否要更改以上这些选项,选择 N ,不更改证书选项配置 
Do you wish to change any of these options? [y/N]N
是否要给证书加密,不需要加密,两次 回车 即可 
cd  /usr/local/es
unzip  elasticsearch-ssl-http.zip  #解压http证书的压缩包
mv ./elasticsearch/http.p12   config/certis
mv ./kibana/elasticsearch-ca.pem  config/certs
​
#再把证书分发到其他的节点上
scp   /usr/local/es/config/certs/*   192.168.72.101:/usr/local/es/config/certs
scp   /usr/local/es/config/certs/*   192.168.72.101:/usr/local/es/config/certs

7.修改配置

cd  /usr/local/es/config
vim   elasticsearch.yml
cluster.name: xingdian-es
node.name: es-1.xingdian.com
path.data: /usr/local/es/data
path.logs: /usr/local/es/logs
network.host: 0.0.0.0
http.port: 9200  # 种子主机,在选举时用于发现其他主机的,最好配置多个
discovery.seed_hosts: ["es-1.xingdian.com","es-2.xingdian.com","es-3.xingdian.com"]
cluster.initial_master_nodes: ["es-1.xingdian.com","es-2.xingdian.com","es-3.xingdian.com"]
xpack.security.enabled: true
xpack.security.enrollment.enabled: true
xpack.security.http.ssl:enabled: truekeystore.path: /usr/local/es/config/certs/http.p12keystore.password: 123456  #如果生成证书时设置了密码则要添加密码配置truststore.path: /usr/local/es/config/certs/http.p12truststore.password: 123456 #如果生成证书时设置了密码则要添加密码配置
xpack.security.transport.ssl:enabled: trueverification_mode: certificatekeystore.path: /usr/local/es/config/certs/elastic-certificates.p12keystore.password: 123456  #如果生成证书时设置了密码则要添加密码配置truststore.path: /usr/local/es/config/certs/elastic-certificates.p12truststore.password: 123456 #如果生成证书时设置了密码则要添加密码配置
http.host: [_local_, _site_]
ingest.geoip.downloader.enabled: false
xpack.security.http.ssl.client_authentication: none
http.cors.enabled: true
http.cors.allow-origin: "*"

8.JVM参数调整

vim  /usr/local/es/config/jvm.options
内存大小
-Xms2g
-Xms2g
注意该值为实际内存的二分之一
#启动集群 普通用户nohup  usr/local/es/bin/elasticsearch  &

9.设置的登入密码

/usr/local/es/bin/elasticsearch-reset-password -u elastic -i

10.浏览器访问 win上做解析 https://es1-flower.com 访问成功表示elasticsearch集群搭建成功

kibana的搭建 1.在官方获取安装包 官网[https://www.elastic.co] 2.安装部署

tar xf kibana-8.13.4-linux-x86_64.tar.gz  -C /usr/local/
mv /usr/local/kibana-8.13.4/ /usr/local/kibana
mkdir /usr/local/kibana/config/certs   #创建证书存储目录

11.配置修改

vim  /usr/local/kibana/config/kiabna.yml
server.port: 5601                   #kibana 的端口
server.host: "192.168.72.158"  #kibana 的主机ip
server.name: "Kibana"
elasticsearch.hosts: ["https://es-1.com:9200","https://es-2.com:9200","https://es-3.com:9200"]
elasticsearch.username: "kibana"
elasticsearch.password: "elastic"
elasticsearch.ssl.certificateAuthorities: [ "/usr/local/kibana/config/certs/elasticsearch-ca.pem" ]
i18n.locale: "zh-CN"

12.获取elasticsearch的ca证书

scp     192.168.72.100:/usr/local/es/config/certs/elasticsearch-ca.pem    /usr/local/kibana/config/certs

13.创建运行用户

useradd  kibana
echo "kibana" | passwd  --stdin  kibana
chown  kibana.kibana  /usr/local/kibana/  -R

14.用普通用户启动kibana

nohup  /usr/local/kibana/bin/kibana  &

15.如果报这样的错

Error: [config validation of [elasticsearch].username]: value of "elastic" is forbidden.
在es集群中设置为kibana账户设定密码
usr/local/es/bin/elasticsearch-reset-password  -u kibana  -i

16.浏览器进行访问 IP:5601

logstah的搭建

        1.logstash的部署对应跟es集群是同一版本 官方获取安装包 www.elastic.co

        2.解压安装

tar xf logstash-8.13.4-linux-x86_64.tar.gz  -C /usr/local/
mv /usr/local/logstash-8.13.4/   /usr/local/logstsh

        3.配置jdk环境 logstash中自带的是Java17

vim /etc/profile
JAVA_HOME=/usr/local/logstash/jdk
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME PATH
#做软连接的方式方便调用logstash
ln -s /usr/local/logstash/bin/logstash   /usr/bin/logstash

        4.模拟运行是否可以使用

logstash -e 'input { stdin { } } output { stdout {} }'

        5.创建logstash存储elasticsearch集群的ca证书

mkdir  /usr/local/logstash/config/certs

        6.将证书存放在创建的目录下

scp 192.168.72.100:/usr/local/es/config/certs/elasticsearch-ca.pem   /usr/local/logstash/config/certs

        7.创建logstash采集数据的配置文件 采集的是nginx的日志{在这里创建在opt目录下}

vim  /opt/stdin.comf
input {file {path => "/var/log/nginx/access.log"start_position => "beginning"}
}
output {elasticsearch {index => "nginx_access_logstash"hosts => [ "https://es1-flower.com:9200" ]cacert => "/usr/local.logstash/config/certs/elasticsearch-ca.pem"user => "elastic"password => "elastic"}
}


http://www.ppmy.cn/embedded/168890.html

相关文章

【星云 Orbit-F4 开发板】基于STM32F407按键状态机的设计与实现

【星云 Orbit-F4 开发板】基于STM32F407按键状态机设计与实现 引言 在嵌入式系统中,按键触发是最常见的用户交互方式之一。除了基本的单个按键触发,许多应用场景需要检测多种按键事件,如单击、双击、长按和按住等。本文将详细介绍如何使用ST…

Burp Suite Professional 2024版本安装激活指南

文章目录 burpsuite简介Burp Suite的主要组件:Burp Suite的版本使用场景 下载地址使用教程 burpsuite简介 Burp Suite 是一个广泛使用的网络安全测试工具,特别是在Web应用程序安全领域。它主要用于发现和修复Web应用中的安全漏洞,特别适用于渗…

计算机毕业设计Hadoop+Spark+DeepSeek-R1大模型民宿推荐系统 hive民宿可视化 民宿爬虫 大数据毕业设计(源码+文档+PPT+讲解)

温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 温馨提示:文末有 CSDN 平台官方提供的学长联系方式的名片! 作者简介:Java领…

【Linux】责任链模式和消息队列

📃个人主页:island1314 🔥个人专栏:Linux—登神长阶 ⛺️ 欢迎关注:👍点赞 👂🏽留言 😍收藏 💞 💞 💞 生活总是不会一帆风顺&#x…

前端面试真题 2025最新版

文章目录 写在前文CSS怪异盒模型JS闭包闭包的形成闭包注意点 CSS选择器及优先级优先级 说说flex布局及相关属性Flex 容器相关属性:Flex 项目相关属性 响应式布局如何实现是否用过tailwindcss,有哪些好处好处缺点 说说对象的 prototype属性及原型说说 pro…

windows下安装pyenv+virtualenv+virtualenvwrapper

1、下载pyenv 进入git官网,打包下载zip到本地 2、解压到安装目录 解压下载好的pyenv-win-master.zip到自己的安装目录,如D:\Program Files 3、配置环境变量 右击桌面 此电脑 --> 属性 --> 高端系统设置 --> 环境变量 --> 新建系统变量…

ubuntu:换源安装docker-ce和docker-compose

更新apt源 apt换源:ubuntu:更新阿里云apt源-CSDN博客 安装docker-ce 1、更新软件源 sudo apt update2、安装基本软件 sudo apt-get install apt-transport-https ca-certificates curl software-properties-common lrzsz -y3、指定使用阿里云镜像 su…

《Somewhat Practical Fully Homomorphic Encryption》笔记 (BFV 源于这篇文章)

文章目录 一、摘要二、引言1、FHE 一般分为三个逻辑部分2、噪声的管理3. 贡献点4. 文章思路 三、基础数学知识四、基于 RLWE 的加密1. LWE 问题2. RLWE 问题3. RLWE 问题的难度和安全性 五、加密方案1. LPR.ES 加密方案2. Lemma 1 (引理 1)3. Optimisation/Assumption 1 (优化/…