红联Linux门户
Linux帮助

在Ubuntu 14.04 64bit上升级安装ATS 5.3.2实录

发布时间:2016-05-04 11:43:15来源:linux网站作者:雪峰流云

原由
在开发过程中,意外发现下面的TS API接口在ats 4.1.2上没有定义,但在5.3.x中有定义
bool cacheable = TSHttpTxnIsCacheable(txnp, NULL, response);

遂决定在工作机ThinkPad上升级ATS到5..3.2版本.下面记录了我升级过程和遇到问题并解决的过程.

全新安装请参见ats 4.2.1版本:http://www.linuxdiyf.com/linux/20325.html


1.安装依赖
因为原来是ats 4.1.2,现在属于升级,这步跳过。


2.配置,编译和安装
./configure --with-group=nogroup --enable-reclaimable-freelist --enable-debug --enable-experimental-plugins
make -j 4
make install -j 4


3.配置
对几个配置文件做如下修改
在records.config中修改配置如下:
CONFIG proxy.config.http.server_ports STRING 8081
CONFIG proxy.config.http.insert_request_via_str INT 1
CONFIG proxy.config.http.insert_response_via_str INT 2
CONFIG proxy.config.log.custom_logs_enabled INT 1
CONFIG proxy.config.log.squid_log_enabled INT 0
CONFIG proxy.config.log.xml_config_file STRING logs_xml.config
CONFIG proxy.config.reverse_proxy.enabled INT 0
CONFIG proxy.config.url_remap.pristine_host_hdr INT 0
CONFIG proxy.config.url_remap.remap_required INT 0

remap.config中
map http://10.10.110.55:8081/cache/ http://{cache}:8081
map http://localhost/www.17dao.com  http://www.17dao.com

增加logs_xml.config日志配置文件
<LogFormat>
<Name = "access"/>
<Format = "%<cqtq> %<ttms> %<pssc> %<sssc> [%<cqtt>] %<{X-Forwarded-For}cqh> \"%<cqtx>\" %<psql> \"%<pqsi>\" %<crc>:%<phr> %<{Referer}cqh> \"%<{User-Agent}cqh>\" %<psct>"/>
</LogFormat>
<LogObject>
<Format = "access"/>
<Filename = "access"/>
</LogObject>


4.实录

开启ats服务时,发现没有traffic_cop进程

在Ubuntu 14.04 64bit上升级安装ATS 5.3.2实录

单独gdb打开时,显示个别动态库加载失败

在Ubuntu 14.04 64bit上升级安装ATS 5.3.2实录

但是,我发现这个库已经存在在指定目录下面, 进一步分析如下

在Ubuntu 14.04 64bit上升级安装ATS 5.3.2实录

这说明是动态库造成的问题.因为更新或新增了动态库,但是没有更新系统的动态库信息, 所以导致了上面的错误.

解决方法

确认存在该动态库, 并确保在/etc/ld.so.conf中可以找到, 然后ldconfig更新一下动态库的索引信息就可以了.

再次打开ats服务

sudo trafficserver start

我们看到这时有3个进程了

在Ubuntu 14.04 64bit上升级安装ATS 5.3.2实录

为验证ats的功能正常, 取一个url下载测试一下,发现一切正常

在Ubuntu 14.04 64bit上升级安装ATS 5.3.2实录

至此, ats成功升级到5.3.2版本了.


本文永久更新地址:http://www.linuxdiyf.com/linux/20326.html