Loading... ### Logstash与Rsyslog安装配置指南 #### 一、简介 **Logstash** 是一个开源的数据收集引擎,允许你从各种来源收集、解析和存储日志。**Rsyslog** 是一个高性能的日志处理工具,广泛用于系统日志收集和传输。将Logstash和Rsyslog结合使用,可以实现强大的日志收集、传输和分析功能。 ![](https://www.8kiz.cn/usr/uploads/2024/07/4251757736.png) #### 二、Rsyslog的安装与配置 ##### 1. 安装Rsyslog 在大多数Linux发行版中,Rsyslog通常已经预装。如果没有,可以通过以下命令进行安装: ```bash # 在Debian/Ubuntu系统上 sudo apt-get update sudo apt-get install rsyslog # 在CentOS/RHEL系统上 sudo yum update sudo yum install rsyslog ``` ##### 2. 配置Rsyslog 配置文件通常位于 `/etc/rsyslog.conf`。以下是一个示例配置,用于接收和转发日志: ```conf # 加载UDP和TCP的输入模块 module(load="imudp") input(type="imudp" port="514") module(load="imtcp") input(type="imtcp" port="514") # 将日志转发到远程Logstash服务器 *.* @@logstash_server:5044 ``` 确保Rsyslog服务启动并设置为开机启动: ```bash sudo systemctl start rsyslog sudo systemctl enable rsyslog ``` #### 三、Logstash的安装与配置 ##### 1. 安装Logstash 首先,添加Elasticsearch源并安装Logstash: ```bash # 在Debian/Ubuntu系统上 wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add - sudo apt-get install apt-transport-https echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-7.x.list sudo apt-get update sudo apt-get install logstash # 在CentOS/RHEL系统上 sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch cat <<EOF | sudo tee /etc/yum.repos.d/logstash.repo [logstash-7.x] name=Elastic repository for 7.x packages baseurl=https://artifacts.elastic.co/packages/7.x/yum gpgcheck=1 gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch enabled=1 autorefresh=1 type=rpm-md EOF sudo yum install logstash ``` ##### 2. 配置Logstash Logstash的配置文件通常位于 `/etc/logstash/conf.d/`目录。创建一个新的配置文件,例如 `/etc/logstash/conf.d/rsyslog.conf`,并添加以下内容: ```conf input { tcp { port => 5044 codec => "json" } udp { port => 5044 codec => "json" } } filter { if [type] == "syslog" { grok { match => { "message" => "%{SYSLOGLINE}" } } date { match => [ "timestamp", "MMM d HH:mm:ss", "MMM dd HH:mm:ss" ] } } } output { elasticsearch { hosts => ["http://localhost:9200"] index => "syslog-%{+YYYY.MM.dd}" } stdout { codec => rubydebug } } ``` ##### 3. 启动Logstash 确保Logstash服务启动并设置为开机启动: ```bash sudo systemctl start logstash sudo systemctl enable logstash ``` ### 思维导图 ```plaintext +------------------------------------------------------+ | Logstash与Rsyslog安装配置指南 | +------------------------------------------------------+ | +-----------------------------+ | 一、简介 | +-----------------------------+ | +-----------------------------+ | 二、Rsyslog的安装与配置 | | 1. 安装Rsyslog | | 2. 配置Rsyslog | +-----------------------------+ | +-----------------------------+ | 三、Logstash的安装与配置 | | 1. 安装Logstash | | 2. 配置Logstash | | 3. 启动Logstash | +-----------------------------+ ``` ### 四、总结 通过将Logstash和Rsyslog结合使用,可以实现强大的日志收集和处理功能。Rsyslog负责接收和转发系统日志,Logstash负责解析和存储日志数据。以上指南提供了详细的安装和配置步骤,确保了两者能够无缝协作,以满足各种日志管理需求。希望本文能帮助你在实际项目中高效地部署和使用Logstash与Rsyslog。 最后修改:2024 年 07 月 23 日 © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 如果觉得我的文章对你有用,请随意赞赏