首页 > 在CentOS 6.3 64bit上安装Apache Trafficserver 4.2.3

在CentOS 6.3 64bit上安装Apache Trafficserver 4.2.3

这篇博客是我整理的内网开发环境的ATS安装文档,以便日后参考。

下面的安装假定是以root用户身份进行的,Linux服务器已经安装好系统,磁盘已经做好分区。

1.新建用户

useradd -s /sbin/nologin tserver

我们打算将tserver作为ATS所在的user和group名称。使用如下命令检测用户组是否创建成功

cat /etc/passwd | cut -f 1 -d :





2.安装依赖包

yum install gcc gcc-c++ pkgconfig pcre-devel tcl-devel expat-devel openssl-devel -y

yum install perl-ExtUtils-MakeMaker -y

yum install libcap libcap-devel hwloc hwloc-devel -y

yum install libunwind libunwind-devel -y

yum install autoconf automake libtool -y

yum install git -y





3.下载并解压

cd /usr/local/src

wget -d "http://mirror.bit.edu.cn/apache/trafficserver/trafficserver-4.2.3.tar.bz2"

tar -jxvf trafficserver-4.2.3.tar.bz2 

cd trafficserver-4.2.3





4.编译和安装

根据CPU内核数来确定-j后面的参数,这里我是8核的CPU,所以选8

这步mkdir -p /opt/ats可以省略,因为不存在指定安装目录时ATS安装时会自动创建安装目录,同时为了内网测试方便,采用debug版本,线上可以去掉

./configure --prefix=/opt/ats --with-user=tserver --with-group=tserver --enable-reclaimable-freelist --enable-debug

make -j 8

make -j 8 install





这里指定安装前缀的好处是,如果安装失败,可以直接删除掉ats文件夹,再重新编译和安装。





5.配置

主要有这几个文件需要配置:

如果是正向代理测试,需要做如下配置

traffic_line -s proxy.config.reverse_proxy.enabled -v 0

traffic_line -s proxy.config.url_remap.remap_required -v 0

traffic_line -s proxy.config.url_remap.pristine_host_hdr -v 0





traffic_line -s  proxy.config.http.insert_request_via_str -v 1    

traffic_line -s  proxy.config.http.insert_response_via_str -v 2   #会产生类似Via:http/1.1localhost (ApacheTrafficServer/4.3.2 [cHs f ])的头

traffic_line -s proxy.config.http.cache.required_headers -v 0     #配置在源服务器没有定义缓存的情况缓存文件

traffic_line -s proxy.config.http.cache.enable_default_vary_headers -v 1





6.添加环境变量

echo "export PATH=/opt/ats/bin:$PATH" >> /etc/profile

更新配置文件

source /etc/profile

再次确认环境变量是否添加成功

echo $PATH

这样的话,在命令行直接运行trafficserver start就可以识别了。





7.启动查看

trafficserver start

确保如下有3个进程在运行:





8.浏览器测试

以firefox为例,设置代理服务器ip和端口,并在地址栏中输入网址进行测试,查看ATS业务插件的处理效果。这里选择火狐浏览器的原因是因为它的代理设置不是本机全局的代理设置。





9.安装中遇到的问题





10.业务插件测试

将本地编译好的几个动态库远程复制到/opt/ats/libexec/trafficserver/下面,同时将对应的配置文件复制到/opt/ats/etc/trafficserver/下面

根据不同的业务需要进行不同的配置来进行测试,通过main.config来确定开启哪几个业务功能。



11.安装Valgrind来调试内存泄露

cd /usr/local/src

wget -d "http://www.valgrind.org/downloads/valgrind-3.10.1.tar.bz2"

tar -jxvf valgrind-3.10.1.tar.bz2

cd  valgrind-3.10.1

./configure

make 

make install

查看命令选项

valgrind -h



检查ATS 4.2.3原版的内存泄露情况,以便心里有底

使用Valgrind跟踪内存泄露,以下面的方式开启ATS

valgrind --trace-children=yes --time-stamp=yes --leak-check=full --show-leak-kinds=definite  trafficserver start

使用下面的命令查看traffic进程是否都存在

ps auxf | grep traffic



同时刷新日志

tail -f /opt/ats/var/log/trafficserver/traffic.out

点击一些网页后,使用kill -9 pid依次杀掉ATS的3个相关进程,在traffic.out中查看内存泄露的地方



右侧可见,使用正向代理导致的内存泄露还不多。



参考文献

[1].https://cwiki.apache.org/confluence/display/TS/CentOS

[2].http://www.valgrind.org/downloads/current.html

更多相关:

  • 如果你想在自己的IPhone上安装一个ipa文件,你的手机是无法正常安装的,(越狱,企业证书分发除外)但是我们可以通过以下步骤来实现,前提要有自己的开发者账号。接下来就看一下具体的步骤:第一步:用Xcode新建一个工程Bundle identifier不要和手机中已有的的APP重复,然后用自己的证书打包出ipa文件。第二步:获取mob...

  • 刚接触,啥子都不会,按着教程走需求:识别图片中的文字信息环境:windows系统开发语言:python3.5使用工具类:1.pyocr2.PIL3.tesseract-ocr步骤:1.pyocr网络通直接使用命令:pip install pyocr网络不通,转至https://pypi.python.org/pypi/pyocr/0....

  • 1、前言程序设计好以后会生成若干可执行文件和依赖文件。为了方便程序被更好地使用,需要将程序封装为一个安装程序。2、平台和环境Windows系统安装NSIS下载地址:https://nsis.sourceforge.io/DownloadNSIS(Nullsoft Scriptable Install System)是一个开源的 Win...

  • 展开全部 f=open('xxx','r',encoding='utf-8') file=f.readlines() f.close() f=open('xxx','w',encoding='utf-8') for i in len(file): ----file[i]=file[i].split(',') ----file[i][1...

  • PIL(Python Imaging Library)是Python中一个强大的图像处理库,但目前其只支持到Python2.7 pillow是PIL的一个分支,虽是分支但是其与PIL同样也具有很强的图像处理库。 Python3.7.0 如何安装pillow 此安装方法在windows7环境下完成: >>>win+r调出运行窗口,键入c...

  • 由于ATS 5.3是社区刚推出的LTS最新版本,比以前的版本改动幅度相当大,所以我决定抛弃以前的经验,从零开始探索该版本。下面是我的摸索实录。 1.下载源码 cd /usr/local/src wget -d "http://mirror.bit.edu.cn/apache/trafficserver/trafficserv...

  • 转载自https://blog.zymlinux.net/index.php/archives/374 Apache Traffic Server的程序文件,与传统的服务器系统有大不同,这里我们将会对这些文件进行详细的解读,并尽可能的对程序的功能和基本用法、参数等进一步说明,以利于新入门的同学们快速上手。 本文中,我们以Fedor...

  • 环境:ubuntu,python2/3 命令: pip3 install ipy  # 通过pip3给python3.x安装ipypip3 install --upgrade pip  # 升级pippip install ipy  # 通过pip给python2.x安装ipy 如果显示程序“pip/pip3”尚未安装 sudo...

  • 脚本:sh.sh 1 #!/bin/zsh 2 #安装rpmfusion源 3 dnf config-manager --add-repo=http://repo.fdzh.org/FZUG/FZUG.repo 4 #安装一下有用的一些软件包 5 yum -y install yum-fastestmirror 6...

  • 安装pip: apt-get install python-setuptools easy_install pip pip install   xxxx 转载于:https://www.cnblogs.com/arhatlohan/p/4737828.html...

  • 1. nginx  rpm -ivh http://nginx.org/packages/centos/6/noarch/RPMS/nginx-release-centos-6-0.el6.ngx.noarch.rpm  yun install nignx 2.php yum install php yum install php-f...