首頁 > 軟體

CentOS 6.8 x86_64上安裝ATS 6.2.1過程詳解

2020-06-16 17:20:56

因為ATS目前最新的LTS版本6.2.1的安裝,寫出來更多的是整理自己的思路,因為很多東西搞過不整理,過一段時間就完全忘記掉了。

安裝環境:

在rMBP 15.4上上面安裝了VMware Fushion 專業版8.5.1,作業系統是MacOS Sierra 10.12.3, 在VMware上安裝的是CentOS 6.8 x86_64

下面是安裝步驟:

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就可以了,可能是虛擬機器相容性的問題,會導致編譯失敗問題

本文永久更新連結地址http://www.linuxidc.com/Linux/2017-02/141139.htm


IT145.com E-mail:sddin#qq.com