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

相关推荐
光芒再现dev17 分钟前
已解决,部署GPTSoVITS报错‘AsyncRequest‘ object has no attribute ‘_json_response_data‘
运维·python·gpt·语言模型·自然语言处理
AndyFrank30 分钟前
mac crontab 不能使用问题简记
linux·运维·macos
成都古河云1 小时前
智慧场馆:安全、节能与智能化管理的未来
大数据·运维·人工智能·安全·智慧城市
算法与编程之美1 小时前
文件的写入与读取
linux·运维·服务器
Amelio_Ming2 小时前
Permissions 0755 for ‘/etc/ssh/ssh_host_rsa_key‘ are too open.问题解决
linux·运维·ssh
心灵彼岸-诗和远方2 小时前
Devops业务价值流:软件研发最佳实践
运维·产品经理·devops
JuiceFS2 小时前
好未来:多云环境下基于 JuiceFS 建设低运维模型仓库
运维·云原生
Ven%3 小时前
centos查看硬盘资源使用情况命令大全
linux·运维·centos
萨格拉斯救世主3 小时前
戴尔R930服务器增加 Intel X710-DA2双万兆光口含模块
运维·服务器
Jtti3 小时前
Windows系统服务器怎么设置远程连接?详细步骤
运维·服务器·windows