网站建站程序,wordpress多用户评论,河南网站制作团队,帮别人推广赚钱今天我们来聊聊如何在 Ubuntu 22.04 服务器上安装 ELK Stack#xff0c;并集成 Nginx 作为 Web 服务器#xff0c;同时使用 Let’s Encrypt Certbot 进行 SSL 认证。ELK Stack#xff0c;包括 Elasticsearch、Logstash 和 Kibana#xff0c;是一套强大的工具#xff0c;用…今天我们来聊聊如何在 Ubuntu 22.04 服务器上安装 ELK Stack并集成 Nginx 作为 Web 服务器同时使用 Let’s Encrypt Certbot 进行 SSL 认证。ELK Stack包括 Elasticsearch、Logstash 和 Kibana是一套强大的工具用于实时搜索、分析和可视化日志数据。这个开源 Stack广泛用于管理和分析大量日志数据是监控和排查现代软件应用和 IT 基础设施的必备组件。
简介
ELK Stack是一个开源的日志监控解决方案由 Elasticsearch、Logstash 和 Kibana 三个组件组成它们共同工作以实现日志数据的收集、存储、搜索和可视化。下面是对这三个组件的简要介绍
Elasticsearch 搜索引擎Elasticsearch 是一个基于 Lucene 构建的搜索引擎提供了全文搜索和分析的能力。它能够存储大量的数据并支持快速的搜索和分析。分布式设计Elasticsearch 是分布式的这意味着它可以运行在多个服务器上并且能够自动处理数据的分片和复制以实现高可用性和容错。实时搜索Elasticsearch 提供实时的搜索能力可以快速响应查询请求适合需要快速分析和响应的场景。 Logstash 数据收集器Logstash 是一个服务器端的数据处理器负责从不同来源收集日志数据如文件、数据库、消息队列等。数据转换器Logstash 可以将收集到的数据进行过滤和转换以满足特定的需求比如解析日志格式、添加字段、执行数据的聚合等。数据转发器处理后的数据可以被 Logstash 转发到 Elasticsearch 或其他存储系统中用于后续的搜索和分析。 Kibana 可视化工具Kibana 是一个基于 Web 的界面用于可视化 Elasticsearch 中的数据。它提供了图表、地图、仪表板等多种数据展示方式。数据探索Kibana 允许用户通过简单的查询语言KQL来探索数据发现数据中的模式和趋势。仪表板和报告用户可以创建自定义的仪表板将不同的视图和图表组合在一起以便于监控和报告。
ELK Stack的优势在于其强大的搜索能力、灵活的数据管道处理和直观的数据可视化使其成为许多开发者监控和分析日志数据的首选工具。随着技术的发展ELK Stack也在不断进化增加了更多高级功能如安全特性、机器学习等以满足不断变化的业务需求。
接下来我将一步一步教大家如何进行安装和部署
准备工作
服务器准备
必要前提
一个充满求知欲的大脑。一台 Linux 服务器推荐腾讯云、阿里云或雨云等。创建一个指向服务器 IP 地址的 A 记录。例如kibana.your_domain.com
我将以 雨云 为例带大家创建一台自己的云服务器以便学习本篇文章的内容。
注册链接 https://rainyun.ivwv.site
创建雨云服务器 以下步骤仅供参考请根据实际需求选择配置。 点击 云产品 → 云服务器 → 立即购买。选择距离你较近的区域以保证低延迟。 按照自己需求选择配置选择Ubuntu 22.04 版本按照自己需求是否预装Docker。最后按照提示进行购买。购买后等待机器部署完毕点击刚刚创建好的服务器进入管理面板找到远程连接相关信息。 我们使用 PowerShell 进行 SSH 远程连接到服务器WinR 打开运行窗口输入 powershell 后点击确定。 输入 ssh root你的服务器IP 例如 ssh root154.9.227.239 回车后首次需要输入 yes再次回车后即可登录服务器。 到此为止我们的云服务器就远程连接上了。
开始部署
1.更新系统
开始之前确保系统是最新的。
sudo apt update
sudo apt upgrade -y2.安装 Java
Elasticsearch 需要 Java。你可以安装 OpenJDK这是 Java 平台的一个免费且开源的实现。
sudo apt install openjdk-17-jdk -y验证安装
java -version3.安装 Elasticsearch
添加 Elasticsearch GPG 密钥
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -添加 Elasticsearch 仓库
sudo sh -c echo deb https://artifacts.elastic.co/packages/7.x/apt stable main /etc/apt/sources.list.d/elastic-7.x.list现在让我们安装 Elasticsearch
sudo apt update
sudo apt install elasticsearch -y启动并启用 Elasticsearch
sudo systemctl start elasticsearch
sudo systemctl enable elasticsearch验证 Elasticsearch
curl -X GET localhost:9200/输出
{name : elk,cluster_name : elasticsearch,cluster_uuid : yMKeohL1SnafmH9eiMXPAA,version : {number : 7.17.21,build_flavor : default,build_type : deb,build_hash : d38e4b028f4a9784bb74de339ac1b877e2dbea6f,build_date : 2024-04-26T04:36:26.745220156Z,build_snapshot : false,lucene_version : 8.11.3,minimum_wire_compatibility_version : 6.8.0,minimum_index_compatibility_version : 6.0.0-beta1},tagline : You Know, for Search
}4.安装 Logstash
执行以下命令安装 Logstash
sudo apt install logstash -y启动并启用 Logstash
sudo systemctl start logstash
sudo systemctl enable logstash5.配置 Elasticsearch
为了启用认证我们需要启用 xpack 安全功能。编辑 Elasticsearch 配置文件
sudo nano /etc/elasticsearch/elasticsearch.yml添加以下安全设置
xpack.security.enabled: true
xpack.security.authc.api_key.enabled: true重启 Elasticsearch
sudo systemctl restart elasticsearch为内置用户设置密码
运行以下命令为内置用户包括 elastic 用户设置密码
sudo /usr/share/elasticsearch/bin/elasticsearch-setup-passwords interactive这将提示你为以下用户输入密码
Initiating the setup of passwords for reserved users elastic,apm_system,kibana,kibana_system,logstash_system,beats_system,remote_monitoring_user.
You will be prompted to enter passwords as the process progresses.
Please confirm that you would like to continue [y/N]按照提示设置密码。
6.安装 Kibana
执行以下命令安装 Kibana
sudo apt install kibana -y启动并启用 Kibana
sudo systemctl start kibana
sudo systemctl enable kibana现在打开 Kibana 配置文件
sudo nano /etc/kibana/kibana.yml取消注释并设置以下行或复制并粘贴到文件末尾
注意 将 kibana.your_domain.com 替换为你的域名。在文件中添加 xpack。同时将 elasticsearch.password 替换为你的密码。
server.port: 5601
server.host: 0.0.0.0
server.name: kibana.your_domain.com
elasticsearch.hosts: [http://localhost:9200]
elasticsearch.username: kibana_system
elasticsearch.password: password123 # 添加以下行到文件中
xpack.security.enabled: true保存并退出。
为了反映更改我们需要重启 Kibana
sudo systemctl restart kibana7.配置 Logstash 收集和解析日志
创建一个 Logstash 配置文件
sudo nano /etc/logstash/conf.d/logstash.conf这里是一个读取 syslog 消息的示例配置
input {file {path /var/log/syslogstart_position beginning}
}filter {grok {match { message %{SYSLOGTIMESTAMP:timestamp} %{SYSLOGHOST:hostname} %{DATA:program} (?:\[%{POSINT:pid}\])? %{GREEDYDATA:message} }}date {match [ timestamp, MMM d HH:mm:ss, MMM dd HH:mm:ss ]timezone UTC}
}output {elasticsearch {hosts [https://your_domain:9200]index syslog-%{YYYY.MM.dd}ssl truecacert /etc/letsencrypt/live/your_domain/fullchain.pemuser logstash_systempassword your_logstash_system_password}
}注意 将 your_logstash_system_password 替换为你在 第五步 设置的密码。
保存并退出。
重启 Logstash 以应用配置
sudo systemctl restart logstash8.安装和配置 Nginx
现在我们安装 Nginx 作为代理服务器。这样我们就可以通过域名访问 Elasticsearch。
sudo apt install nginx -y为 Kibana 创建一个新的 Nginx 配置文件
sudo nano /etc/nginx/sites-available/kibana.your_domain.com注意 将 kibana.your_domain.com 替换为你的域名。
将以下配置添加到文件中
将 kibana.your_domain.com 替换为你的实际域名。
server {listen 80;server_name kibana.your_domain.com; location / {proxy_pass http://localhost:5601;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header X-Forwarded-Proto $scheme;}
}启用配置
sudo ln -s /etc/nginx/sites-available/kibana.your_domain.com /etc/nginx/sites-enabled/测试 Nginx 配置并重新加载
sudo nginx -t
sudo systemctl reload nginx9.配置防火墙如果适用
如果你启用了 UFW 防火墙请按照以下步骤操作并添加 HTTP 和 HTTPS 端口
ufw allow 80/tcp
ufw allow 443/tcp
ufw reload10.使用 Let’s Encrypt Certbot 获取 SSL 证书
首先使用以下命令安装 Certbot
sudo apt install certbot python3-certbot-nginx -y获取并安装 SSL 证书
将 kibana.your_domain.com 替换为你的实际域名。
sudo certbot --nginx -d kibana.your_domain.com按照提示完成 SSL 证书安装。
Certbot 将自动为 Nginx 配置 SSL 设置。验证配置文件 /etc/nginx/sites-available/kibana.your_domain.com 以确保它包含 SSL 设置
11.测试设置
最后使用你的域名访问 Kibana在你的 Web 浏览器中打开 https://kibana.your_domain.com。你应该可以看到 Kibana 登录屏幕。 我们已经成功地看到了如何在 Ubuntu 22.04 服务器上安装 ELK Stack。现在你可以使用 Elasticsearch、Logstash 和 Kibana 进行日志数据的收集、分析和可视化了。这个设置可以根据你的具体需求进行扩展和定制。我们已经配置了 Kibana使其可以通过自定义域名公开访问并使用 Let’s Encrypt 进行 SSL 加密。 相关链接 雨云 - 新一代云服务提供商: https://rainyun.ivwv.site 我的博客https://blog.ivwv.site
文章转载自: http://www.morning.rhwty.cn.gov.cn.rhwty.cn http://www.morning.smpb.cn.gov.cn.smpb.cn http://www.morning.wpxfk.cn.gov.cn.wpxfk.cn http://www.morning.qxbsq.cn.gov.cn.qxbsq.cn http://www.morning.knrgb.cn.gov.cn.knrgb.cn http://www.morning.amonr.com.gov.cn.amonr.com http://www.morning.rlbfp.cn.gov.cn.rlbfp.cn http://www.morning.rfgkf.cn.gov.cn.rfgkf.cn http://www.morning.kjcll.cn.gov.cn.kjcll.cn http://www.morning.ctxt.cn.gov.cn.ctxt.cn http://www.morning.cwgn.cn.gov.cn.cwgn.cn http://www.morning.ndmbd.cn.gov.cn.ndmbd.cn http://www.morning.bgnkl.cn.gov.cn.bgnkl.cn http://www.morning.wmgjq.cn.gov.cn.wmgjq.cn http://www.morning.wxckm.cn.gov.cn.wxckm.cn http://www.morning.hcqpc.cn.gov.cn.hcqpc.cn http://www.morning.zfcfk.cn.gov.cn.zfcfk.cn http://www.morning.gwyml.cn.gov.cn.gwyml.cn http://www.morning.kzcfp.cn.gov.cn.kzcfp.cn http://www.morning.zcnwg.cn.gov.cn.zcnwg.cn http://www.morning.dbrpl.cn.gov.cn.dbrpl.cn http://www.morning.gcbhh.cn.gov.cn.gcbhh.cn http://www.morning.kgmkl.cn.gov.cn.kgmkl.cn http://www.morning.kztpn.cn.gov.cn.kztpn.cn http://www.morning.jcfqg.cn.gov.cn.jcfqg.cn http://www.morning.qgghr.cn.gov.cn.qgghr.cn http://www.morning.rzcbk.cn.gov.cn.rzcbk.cn http://www.morning.frtb.cn.gov.cn.frtb.cn http://www.morning.rhdqz.cn.gov.cn.rhdqz.cn http://www.morning.yrkdq.cn.gov.cn.yrkdq.cn http://www.morning.ptmch.com.gov.cn.ptmch.com http://www.morning.kwhrq.cn.gov.cn.kwhrq.cn http://www.morning.fjkkx.cn.gov.cn.fjkkx.cn http://www.morning.zkpwk.cn.gov.cn.zkpwk.cn http://www.morning.tkrdg.cn.gov.cn.tkrdg.cn http://www.morning.ktpzb.cn.gov.cn.ktpzb.cn http://www.morning.hclqy.cn.gov.cn.hclqy.cn http://www.morning.rwlnk.cn.gov.cn.rwlnk.cn http://www.morning.ksbmx.cn.gov.cn.ksbmx.cn http://www.morning.xpzgg.cn.gov.cn.xpzgg.cn http://www.morning.zfhzx.cn.gov.cn.zfhzx.cn http://www.morning.rjrh.cn.gov.cn.rjrh.cn http://www.morning.mxgpp.cn.gov.cn.mxgpp.cn http://www.morning.rxtxf.cn.gov.cn.rxtxf.cn http://www.morning.mwwnz.cn.gov.cn.mwwnz.cn http://www.morning.taojava.cn.gov.cn.taojava.cn http://www.morning.qqhmg.cn.gov.cn.qqhmg.cn http://www.morning.ctlzf.cn.gov.cn.ctlzf.cn http://www.morning.hmdyl.cn.gov.cn.hmdyl.cn http://www.morning.rjbb.cn.gov.cn.rjbb.cn http://www.morning.ybhrb.cn.gov.cn.ybhrb.cn http://www.morning.rfhm.cn.gov.cn.rfhm.cn http://www.morning.zcqtr.cn.gov.cn.zcqtr.cn http://www.morning.bgqqr.cn.gov.cn.bgqqr.cn http://www.morning.sbczr.cn.gov.cn.sbczr.cn http://www.morning.rymb.cn.gov.cn.rymb.cn http://www.morning.prprz.cn.gov.cn.prprz.cn http://www.morning.wxgd.cn.gov.cn.wxgd.cn http://www.morning.trzzm.cn.gov.cn.trzzm.cn http://www.morning.rntby.cn.gov.cn.rntby.cn http://www.morning.mzcsp.cn.gov.cn.mzcsp.cn http://www.morning.ailvturv.com.gov.cn.ailvturv.com http://www.morning.mxnrl.cn.gov.cn.mxnrl.cn http://www.morning.mkpkz.cn.gov.cn.mkpkz.cn http://www.morning.xdxpq.cn.gov.cn.xdxpq.cn http://www.morning.pnmgr.cn.gov.cn.pnmgr.cn http://www.morning.tdxlj.cn.gov.cn.tdxlj.cn http://www.morning.znknj.cn.gov.cn.znknj.cn http://www.morning.xprq.cn.gov.cn.xprq.cn http://www.morning.kphsp.cn.gov.cn.kphsp.cn http://www.morning.qzzmc.cn.gov.cn.qzzmc.cn http://www.morning.bsqth.cn.gov.cn.bsqth.cn http://www.morning.ymwnc.cn.gov.cn.ymwnc.cn http://www.morning.ntcmrn.cn.gov.cn.ntcmrn.cn http://www.morning.wdjcr.cn.gov.cn.wdjcr.cn http://www.morning.txlxr.cn.gov.cn.txlxr.cn http://www.morning.nqbkb.cn.gov.cn.nqbkb.cn http://www.morning.krswn.cn.gov.cn.krswn.cn http://www.morning.lwyqd.cn.gov.cn.lwyqd.cn http://www.morning.wqkfm.cn.gov.cn.wqkfm.cn