CentOS 6.8 x86_64上安装ATS 6.2.1过程详解

因为ATS目前最新的LTS版本6.2.1的安装,写出来更多的是整理自己的思路,因为很多东西搞过不整理,过一段时间就完全忘记掉了。

安装环境:

下面是安装步骤:

1.安装依赖包

yum -y install Git gcc gcc-c++ autoconf automake libtool pkgconfig pcre-devel tcl-devel expat-devel openssl-devel xz-devel boost-devel curl curl-devel ncurses  ncurses-devel
yum -y install perl-ExtUtils-MakeMaker
yum -y install libcap libcap-devel hwloc hwloc-devel
yum -y install libunwind libunwind-devel

2.下载源码包并安装

wget http://apache.fayea.com/trafficserver/trafficserver-6.2.1.tar.bz2

下面我们假定使用ats用户来运行ATS 6.2.1并且根目录在/opt/ats下面,之所以指定这样的安装prefix是为了删除方便,不需要了直接删除整个目录就可以了。另外我一般会使用debug模式运行,便于发现和调试问题。

创建指定用户和组
id ats &>/dev/null || /usr/sbin/useradd -u 176 -r ats -s /sbin/nologin -d /

下面开始编译安装

tar jxvf trafficserver-6.2.1.tar.bz2
cd trafficserver-6.2.1
./configure --prefix=/opt/ats --with-user=ats --with-group=ats --enable-debug --enable-example-plugins --enable-experimental-plugins
make
make install
查看生成的可执行文件,我们会额外注意到会生成traffic_top和traffic_line工具

3.下面是相应配置
[records.config]
CONFIG proxy.config.http.server_ports STRING 18980
CONFIG proxy.config.http2.enabled INT 0
CONFIG proxy.config.http.insert_response_via_str INT 2
CONFIG proxy.config.log.custom_logs_enabled INT 1
CONFIG proxy.config.log.xml_config_file STRING logs_xml.config
CONFIG proxy.config.diags.show_location INT 1

#no ssl and cpu affinity
CONFIG proxy.config.ssl.number.threads INT 0
CONFIG proxy.config.exec_thread.affinity INT 0  

[remap.config]
regex_map http://(.*) http://$1

[logs_xml.config]
< LogFormat>
  <Name = "ats_access_log"/>
  <Format = "%<cqtd>/%<cqtt> %<cqhm> \"%<cquuc>\" %<pssc> %<ttms> %<cqhl> %<psql> %<crc> \"%<chi>\" %<pqsn> \"%<{Referer}cqh>\" \"%<psct>\" \"%<{User-agent}cqh>\" %<csssc> %<pqsi>"/>
< /LogFormat>

< LogObject>
  <Format = "ats_access_log"/>
  <Filename = "access"/>
  <Protocols = "http"/>
  <RollingEnabled = "3"/>
  <RollingIntervalSec = "7200"/>
  <RollingSizeMb = "2048"/>
< /LogObject>

[storage.config]
var/trafficserver 4G

4.启动ats并测试功能是否正常
cd /opt/ats/bin
./trafficserver start
ps auxf | grep traffic


请求一个普通url来检查ats是否允许正常
curl -vx 127.0.0.1:18980 -o /dev/null 'http://news.sohu.com/'


执行traffic_top查看允许情况
./traffic_top


使用traffic_line来查看对应的配置变量
./traffic_line -r proxy.config.diags.show_location

重要声明:

1.如何编译生成traffic_top和traffic_line?

按照官网链接https://cwiki.apache.org/confluence/display/TS/CentOS的安装依赖并不会生成traffic_line和traffic_top这样的顺手工具,我们需要额外安装libcurl和ncurses开发库安装包,为此我们需要再追加下面的依赖库

yum -y install curl curl-devel

yum -y install ncurses  ncurses-devel

2.如果是在虚拟机上,不用使用make -jxx,直接使用make就可以了,可能是虚拟机兼容性的问题,会导致编译失败问题

猜你喜欢

转载自www.linuxidc.com/Linux/2017-02/141139.htm