Install by RPM Package v4 (Red Hat Linux)
This article explains how to install the
td-agent
rpm package, the stable Fluentd distribution package maintained by Treasure Data, Inc.Fluentd is written in Ruby for flexibility, with performance-sensitive parts in C. However, some users may have difficulty installing and operating a Ruby daemon.
That is why Treasure Data, Inc provides the stable distribution of Fluentd, called
td-agent
. The differences between Fluentd and td-agent
can be found here.This installation guide is for
td-agent
v4. td-agent
v4 use fluentd v1 in the core. See this page for the comparison and supported OS.NOTE: About deprecated Treasure Agent (td-agent) 3 will not be maintained anymore, see Install by RPM Package v3.
It is highly recommended to set up
ntpd
on the node to prevent invalid timestamps in the logs. See Pre-installation Guide.Download and execute the install script with
curl
:# td-agent 4
$ curl -L https://toolbelt.treasuredata.com/sh/install-redhat-td-agent4.sh | sh
Executing this script will automatically install
td-agent
on your machine. This shell script registers a new rpm
repository at /etc/yum.repos.d/td.repo
and installs td-agent
.We use
$releasever
for repository path in the script and $releasever
should be the major version only like "7"
. If your environment uses some other format like "7.2"
, change it to the major version only or set up TD repository manually.For Amazon Linux 2:
# td-agent 4
$ curl -L https://toolbelt.treasuredata.com/sh/install-amazon2-td-agent4.sh | sh
td-agent
provides two (2) scripts:Use
/usr/lib/systemd/system/td-agent
script to start
, stop
, or restart
the agent:$ sudo systemctl start td-agent.service
$ sudo systemctl status td-agent.service
● td-agent.service - td-agent: Fluentd based data collector for Treasure Data
Loaded: loaded (/usr/lib/systemd/system/td-agent.service; enabled; vendor preset: disabled)
Active: active (running) since Tue 2022-09-27 06:14:36 UTC; 1s ago
Docs: https://docs.treasuredata.com/display/public/PD/About+Treasure+Data%27s+Server-Side+Agent
Process: 33953 ExecStart=/opt/td-agent/bin/fluentd --log $TD_AGENT_LOG_FILE --daemon /var/run/td-agent/td-agent.pid $TD_AGENT_OPTIONS (code=exited, status=0>
Main PID: 33959 (fluentd)
Tasks: 10 (limit: 4958)
Memory: 78.1M
CGroup: /system.slice/td-agent.service
├─33959 /opt/td-agent/bin/ruby /opt/td-agent/bin/fluentd --log /var/log/td-agent/td-agent.log --daemon /var/run/td-agent/td-agent.pid
└─33962 /opt/td-agent/bin/ruby -Eascii-8bit:ascii-8bit /opt/td-agent/bin/fluentd --log /var/log/td-agent/td-agent.log --daemon /var/run/td-agent/td>
To customize
systemd
behavior, put your td-agent.service
in /etc/systemd/system
.NOTE: In
td-agent
4, the path is different i.e. /opt/td-agent/bin
instead of /opt/td-agent/embedded/bin
.This is for CentOS 6, non-
systemd
based system.Use
/etc/init.d/td-agent
script to start
, stop
, or restart
the agent:$ sudo /etc/init.d/td-agent start
Starting td-agent: [ OK ]
$ sudo /etc/init.d/td-agent status
td-agent (pid 21678) is running...
The following commands are supported:
$ sudo /etc/init.d/td-agent start
$ sudo /etc/init.d/td-agent stop
$ sudo /etc/init.d/td-agent restart
$ sudo /etc/init.d/td-agent status
Please make sure your configuration file path is:
/etc/td-agent/td-agent.conf
The default configuration (
/etc/td-agent/td-agent.conf
) is to receive logs at an HTTP endpoint and route them to stdout
. For td-agent
logs, see /var/log/td-agent/td-agent.log
.You can post sample log records with
curl
command:$ curl -X POST -d 'json={"json":"message"}' http://localhost:8888/debug.test
$ tail -n 1 /var/log/td-agent/td-agent.log
2018-01-01 17:51:47 -0700 debug.test: {"json":"message"}
You are now ready to collect real logs with Fluentd. Refer to the following tutorials on how to collect data from various sources:
- Basic Configuration
For further steps, follow these:
If this article is incorrect or outdated, or omits critical information, please let us know. Fluentd is an open-source project under Cloud Native Computing Foundation (CNCF). All components are available under the Apache 2 License.
Last modified 1mo ago