3台机器快速安装ELK集群

安装和配置 Elasticsearch、Kibana 和 Logstash

以下是安装和配置 Elasticsearch、Kibana 和 Logstash 的详细步骤,并设置开机自启。

步骤 1:修改系统参数

编辑系统参数并使其生效:

bash 复制代码
vim /etc/sysctl.conf

添加以下行:

bash 复制代码
vm.max_map_count=655360

使配置生效:

bash 复制代码
sysctl -p
关闭防火墙和 SELinux

关闭防火墙:

bash 复制代码
systemctl stop firewalld
systemctl disable firewalld

关闭 SELinux:

bash 复制代码
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
grep SELINUX=disabled /etc/selinux/config
setenforce 0
步骤 2:创建用户

创建一个新用户 es 并设置密码:

bash 复制代码
adduser es
echo "es:P@ssw0rd123" | chpasswd
步骤 3:上传并解压安装包

将安装包上传到服务器,然后解压并赋权:

bash 复制代码
tar -zxvf elasticsearch-8.13.3-linux-x86_64.tar.gz -C /data/elk
chown -R es:es /data/elk
步骤 4:编辑 Elasticsearch 配置文件

编辑 Elasticsearch 配置文件 /data/elk/elasticsearch-8.13.3/config/elasticsearch.yml

bash 复制代码
vi /data/elk/elasticsearch-8.13.3/config/elasticsearch.yml

添加以下内容:

yaml 复制代码
cluster.name: my-application
node.name: node-1
path.data: /data/elk/data
path.logs: /data/elk/data
network.host: 0.0.0.0
http.port: 9200
步骤 5:启动 Elasticsearch 并设置开机自启

切换到 es 用户并启动 Elasticsearch:

bash 复制代码
sudo -u es /data/elk/elasticsearch-8.13.3/bin/elasticsearch -d

设置开机自启:

bash 复制代码
echo "[Unit]
Description=Elasticsearch
Documentation=https://www.elastic.co
Wants=network-online.target
After=network-online.target

[Service]
Type=simple
User=es
Group=es
ExecStart=/data/elk/elasticsearch-8.13.3/bin/elasticsearch
Restart=on-failure
RestartSec=10
LimitNOFILE=65536

[Install]
WantedBy=multi-user.target" | sudo tee /etc/systemd/system/elasticsearch.service

sudo systemctl daemon-reload
sudo systemctl enable elasticsearch.service
步骤 6:修改 Elasticsearch 密码

切换到 es 用户并修改 elastic 用户密码:

bash 复制代码
sudo -u es /data/elk/elasticsearch-8.13.3/bin/elasticsearch-reset-password -u elastic -i
步骤 7:生成主节点 Token

切换到 es 用户并生成 Token:

bash 复制代码
sudo -u es /data/elk/elasticsearch-8.13.3/bin/elasticsearch-create-enrollment-token -s node
步骤 8:其他节点配置

在其他节点上,重复上述步骤 1-3,解压安装包并编辑配置文件 /data/elk/elasticsearch-8.13.3/config/elasticsearch.yml

yaml 复制代码
cluster.name: my-application
node.name: node-2
path.data: /data/elk/data
path.logs: /data/elk/data
network.host: 0.0.0.0
http.port: 9200

启动 Elasticsearch 并加入主节点:

bash 复制代码
sudo -u es /data/elk/elasticsearch-8.13.3/bin/elasticsearch -d --enrollment-token <主节点生成的token>
步骤 9:验证 Elasticsearch

在浏览器中访问:

https://192.168.9.181:9200/_cat/health?v

或使用命令行验证:

bash 复制代码
curl -u elastic:<password> -k -X GET "https://192.168.9.181:9200/_cluster/health?pretty"
Kibana 安装和配置
步骤 1:上传并解压 Kibana 安装包

将安装包上传到服务器并解压:

bash 复制代码
tar -zxvf kibana-8.13.3-linux-x86_64.tar.gz -C /data/elk
chown -R es:es /data/elk/kibana-8.13.3
步骤 2:编辑 Kibana 配置文件

编辑 Kibana 配置文件 /data/elk/kibana-8.13.3/config/kibana.yml

bash 复制代码
vi /data/elk/kibana-8.13.3/config/kibana.yml

添加以下内容:

yaml 复制代码
server.port: 5601
server.host: "0.0.0.0"
server.publicBaseUrl: "http://192.168.9.181:5601"
i18n.locale: "zh-CN"
步骤 3:启动 Kibana 并设置开机自启

切换到 es 用户并启动 Kibana:

bash 复制代码
sudo -u es /data/elk/kibana-8.13.3/bin/kibana &

设置开机自启:

bash 复制代码
echo "[Unit]
Description=Kibana
Documentation=https://www.elastic.co
Wants=network-online.target
After=network-online.target

[Service]
Type=simple
User=es
Group=es
ExecStart=/data/elk/kibana-8.13.3/bin/kibana
Restart=on-failure
RestartSec=10
LimitNOFILE=65536

[Install]
WantedBy=multi-user.target" | sudo tee /etc/systemd/system/kibana.service

sudo systemctl daemon-reload
sudo systemctl enable kibana.service
步骤 4:生成注册令牌

在 Elasticsearch 主节点上生成注册令牌:

bash 复制代码
sudo -u es /data/elk/elasticsearch-8.13.3/bin/elasticsearch-create-enrollment-token --scope kibana
步骤 5:生成验证码

在 Kibana 目录下生成验证码:

bash 复制代码
sudo -u es /data/elk/kibana-8.13.3/bin/kibana-verification-code
步骤 6:访问 Kibana

在浏览器中访问:

http://192.168.9.181:5601

按照提示使用生成的注册令牌和验证码完成 Kibana 配置。

Logstash 安装和配置

步骤 1:上传并解压 Logstash 安装包

将安装包上传到服务器并解压:

bash 复制代码
tar -zxvf logstash-8.13.3-linux-x86_64.tar.gz -C /data/elk
chown -R es:es /data/elk/logstash-8.13.3
步骤 2:配置 Logstash

编辑 Logstash 配置文件 /data/elk/logstash-8.13.3/config/logstash.yml

bash 复制代码
vi /data/elk/logstash-8.13.3/config/logstash.yml

添加以下内容:

yaml 复制代码
path.data: /data/elk/logstash/data
path.logs: /data/elk/logstash/logs

创建 Logstash 管道配置文件 /data/elk/logstash-8.13.3/pipeline/logstash.conf

bash 复制代码
vi /data/elk/logstash-8.13.3/pipeline/logstash.conf

添加以下内容:

plaintext 复制代码
input {
  beats {
    port => 5044
  }
}

filter {
  # Add any filters here
}

output {
  elasticsearch {
    hosts => ["http://localhost:9200"]
    index => "logstash-%{+YYYY.MM.dd}"
  }
}
步骤 3:启动 Logstash 并设置开机自启

切换到 es 用户并启动 Logstash:

bash 复制代码
sudo -u es /data/elk/logstash-8.13.3/bin/logstash -f /data/elk/logstash-8.13.3/pipeline/logstash.conf &

设置开机自启:

bash 复制代码
echo "[Unit]
Description=Logstash
Documentation=https://www.elastic.co
Wants=network-online.target
After=network-online.target

[Service]
Type=simple
User=es
Group=es
ExecStart=/data/elk/logstash-8.13.3/bin/logstash -f /data/elk/logstash-8.13.3/pipeline/logstash.conf
Restart=on-failure
RestartSec=10
LimitNOFILE=65536

[Install]
WantedBy=multi-user.target" | sudo tee /etc/systemd/system/logstash.service

sudo systemctl daemon-reload
sudo systemctl enable logstash.service

以上步骤涵盖了使用 二进制包安装 Elasticsearch、Kibana 和 Logstash

相关推荐
m0_7482475540 分钟前
重学SpringBoot3-整合 Elasticsearch 8.x (二)使用Repository
大数据·elasticsearch·jenkins
web2u41 分钟前
Docker入门及基本概念
java·运维·服务器·spring·docker·容器
元气满满的热码式2 小时前
Docker实战-使用docker compose搭建博客
运维·docker·容器
Rhys..2 小时前
如何在Jenkins上查看Junit报告
servlet·junit·jenkins
不良人天码星2 小时前
Linux的基础指令和环境部署,项目部署实战(下)
linux·运维·服务器
m0_748244834 小时前
(CICD)自动化构建打包、部署(Jenkins + maven+ gitlab+tomcat)
自动化·jenkins·maven
EasyNVR4 小时前
基于WebRTC与AI大模型接入EasyRTC:打造轻量级、高实时、强互动的嵌入式音视频解决方案
运维·服务器·微信·小程序·webrtc·p2p·智能硬件
技术小齐4 小时前
网络运维学习笔记 022 HCIA-Datacom新增知识点03园区网典型组网架构及案例实战
运维·网络·学习
Java潘老师4 小时前
Automa 浏览器自动化编排 实现自动化浏览器操作
运维·自动化
waves浪游4 小时前
Linux基本指令(上)
linux·运维·服务器