In this guide, I will explain how to get setup Apache Traffic Server with a very very basic configuration.
I will be using RHEL6/CentOS 6, but actually creating the configuration files for Traffic Server is exactly the same on all distributions.
As a pre-requisite for setting up Traffic Server, you must know a little about the HTTP protocol, and what a reverse proxy’s job actually is.
What is Apache Traffic Server?
I don’t really want to go into too much detail into this as there are many sites which explain this better than I ever could, but in short, Traffic Server is a caching proxy created by Yahoo! and donated to the Apache Foundation.
Apache Traffic Server is available from the EPEL repository, and this is the version I will be using.
Firstly, you must add the EPEL repositories if you haven’t already:
rpm -ivh http://mirror.us.leaseweb.net/epel/6/i386/epel-release-6-7.noarch.rpm
Next, we can just use yum to install Traffic Server:
yum install trafficserver
While we are at it, we might as well set Traffic Server to start at boot:
chkconfig trafficserver on
In this tutorial, I will only configure Apache Traffic Server to forward all requests to a single webserver.
For this, we really really only need to edit two files:
This is the main configuration file which stores all the “global” configuration options.
This contains mapping rules for which real web server ATS should forward requests to.
Firstly, edit records.conf.
I didn’t really have to change much initially for a basic configuration.
The lines I changed were these:
CONFIG proxy.config.proxy_name STRING xantara.web.g3nius.net
CONFIG proxy.config.url_remap.pristine_host_hdr INT 1
Next we can edit remap.config.
Add the following line to the bottom:
regex_map http://(.*)/ http://webservers.hostname:80/
This should match everything and forward it to your web server.
Start traffic server:
service trafficserver start
And that’s it! It should now just work! 🙂