ELK集群的搭建和logstash实例

本文详细介绍ELK集群的搭建过程,包括虚拟机配置、主机名设置、免密登录配置及Elasticsearch集群配置。同时,讲解Logstash的使用方法,如测试运行、JSON数据转换及从文件读取数据并上传至Elasticsearch。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ELK集群

一、复制虚拟机、修改主机名和主机列表
在这里插入图片描述
1.网络地址
(1)输入:vi /etc/sysconfig/network-script/ifcfg-enp0s3 修改网络ip地址
2.主机名
(1)hostnamectl set-hostname bigdata01
(2)输入命令vi /etc/hostname进入内容,也可以修改为bigdata01
(3)重启虚拟机: reboot
(4连接moba
3.主机列表
(1)vi /etc/hosts 内容增加 主机的ip地址 主机名
在这里插入图片描述
二、配置免密登录
1.ssh-keygen -t rsa -P "" 生成私钥
2.cat .ssh/id_rsa.pub >> .ssh/authorized_keys 复制私钥到公钥
ssh-copy-id -i .ssh/id_rsa.pub -p22 root@bigdata01远程复制到另一台机器
3.ssh root@bigdata01远程登录验证,不需要输入密码即可
在这里插入图片描述
注:配置完,把每台虚拟机,切换至自身的主机名下。
三、配置elasticsearch集群
1.输入:vi /opt/es622/config/elasticsearch.yml 修改节点名,ip地址,主机列表
第一台主机配置如下:
在这里插入图片描述

cluster.name : bigdata
node.name : master
node.master : true
network.host : 192.168.56.105
discovery.zen.ping.unicast.hosts : ["192.168.56.105","192.168.56.106","192.168.56.107"]
http.cors.enabled : true

第二三台,修改地方如下:
在这里插入图片描述

node.name : test01
node.master : false

2.切换用户:su es
在/opt目录下输入:./es622/bin/elasticsearch
启动ES;
底部出现 started即是启动成功
cd /opt/es622 进入文件夹下删除data和logs目录,再进入eshead目录下,npm run start运行。
在这里插入图片描述

logstash实例

1.输入:cd /opt/logstash622 进入logstash的安装目录
2.输入:./bin/logstash -e 'input { stdin{} } output { stdout{} }' 来测试logstash是否正常工作
在这里插入图片描述
3.输入:./bin/logstash -e 'input { stdin{} } output { stdout{ codec => json } }' 把控制台输入的数据转换成json格式的数据,也可以替换成rubydebug类型的
4../bin/logstash -e 'input { stdin{} } output { stdout{ codec => json } elasticsearch { hosts => ["192.168.56.105:9200"] } }' 把控制台输入的数据转换成rubydebug类型的数据,同时上传到es服务器,可以在对应192.168.56.110:9100的页面进行查看
5.使用logstash读取文件
在文件夹logstash622下,建一个测试文件夹:tmp;
在tmp中,创建一个demo.conf和test.txt文件。
运行:./bin/logstash -f demo.conf
demo.conf 的内容代码如下:

input{
        file{
                path => "/opt/logstash622/tmp/test.txt"
                start_position => "beginning"
                sincedb_path => "/dev/null"
        }
}
output{
        stdout{
                codec => rubydebug
			}
        elasticsearch{
                hosts => ["192.168.56.105:9200"]
			}
}

使用命令:./bin/logstash -f temp/logstash.conf启动

### 如何在 Ubuntu 上搭建 ELK 集群 #### 安装 JDK 为了运行 Elasticsearch 其他依赖 Java 的组件,在开始之前需要先安装 OpenJDK 11。这可以通过更新软件包列表并执行以下命令来完成: ```bash sudo apt-get update && sudo apt-get install openjdk-11-jdk -y ``` 确认已成功安装了正确的版本,通过 `java -version` 命令验证。 #### 使用 Docker 安装 ELK 组件 ##### Elasticsearch 对于 Elasticsearch 的部署,建议采用官方提供的 Docker 映像来进行快速设置[^3]。具体操作如下: 1. **下载镜像** ```bash docker pull docker.elastic.co/elasticsearch/elasticsearch:8.0.0 ``` 2. **创建网络以便各服务间通信** ```bash docker network create elk-stack ``` 3. **启动容器** 创建配置文件如 `elasticsearch.yml` 并指定必要的参数后,利用下面的指令启动容器: ```bash docker run --name es-node1 \ --net=elk-stack \ -p 9200:9200 \ -p 9300:9300 \ -e "discovery.type=single-node" \ -v /path/to/your/config:/usr/share/elasticsearch/config \ -d docker.elastic.co/elasticsearch/elasticsearch:8.0.0 ``` 4. **安全措施** 设置用户名密码用于身份验证,并启用 X-Pack 功能以增强安全性。 ##### Kibana 同样地,也推荐使用 Docker 来简化 Kibana 的安装过程: 1. **拉取映像** ```bash docker pull docker.elastic.co/kibana/kibana:8.0.0 ``` 2. **准备配置文件** (`kibana.yml`) 3. **启动 Kibana 实例** 将其连接到先前建立好的自定义网络中去: ```bash docker run --name=kibana \ --net=elk-stack \ -p 5601:5601 \ -e "ELASTICSEARCH_HOSTS=http://es-node1:9200" \ -v /path/to/kibana.yml:/usr/share/kibana/config/kibana.yml \ -d docker.elastic.co/kibana/kibana:8.0.0 ``` ##### Logstash 最后一步是集成 Logstash 到这个环境中,它负责处理来自不同源头的日志数据流。 1. **获取最新的 Logstash 版本** ```bash docker pull docker.elastic.co/logstash/logstash:8.0.0 ``` 2. **编写输入、过滤器以及输出插件配置文件** (`logstash.conf`) 3. **启动 Logstash 节点** 确保能够访问 Elasticsearch 其他可能的数据源: ```bash docker run --name=logstash \ --net=elk-stack \ -v /path/to/logstash.conf:/usr/share/logstash/pipeline/logstash.conf \ -d docker.elastic.co/logstash/logstash:8.0.0 ``` 以上就是在 Ubuntu 中基于 Docker 构建完整的 ELK 日志分析平台的方法概述[^1][^2][^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值