安装ATS(apache traffic server)正向代理

一 traffic server简介

Traffic Server是一种高性能Web代理缓存,可通过在网络边缘缓存频繁访问的信息来提高网络效率和性能。这使内容在物理上更接近最终用户,同时实现更快的交付和更少的带宽使用。Traffic Server旨在通过最大化现有和可用带宽来改善企业,Internet服务提供商(ISP),骨干提供商和大型Intranet的内容交付。

实现功能

作为Web代理缓存

  作为Web代理缓存,Traffic Server会在这些请求前往目标Web服务器(源服务器)时接收用户对Web内容的请求。如果Traffic Server包含所请求的内容,则它直接提供内容。如果请求的内容在缓存中不可用,则Traffic Server充当代理:它代表用户从源服务器获取内容,并保留副本以满足将来的请求。

作为反向代理

  反向代理对外部用户来说就好像它是原始服务器一样,尽管它不会自己生成内容。相反,它拦截请求,并根据配置的规则和缓存内容,提供所请求内容本身的缓存副本,或将请求转发给源服务器,可能缓存返回的内容以供将来的请求使用。

透明代理

  透明代理可以是反向代理或正向代理(尽管几乎所有反向代理都是透明部署的),定义功能是使用网络路由通过代理发送请求,而无需客户端自行配置,以及通常没有这些客户端绕过代理的能力。

原始服务器

  生成您希望使用Traffic Server代理(并可选择缓存)的内容的服务器。在转发代理配置中,源服务器可以是代理客户端尝试连接的任何远程服务器。在反向代理配置中,源服务器通常是一组已知的服务器,您使用Traffic Server作为性能增强的缓存层。

转发代理

  转发代理代理访问外部资源,拦截来自网络的所有匹配的出站流量。转发代理可用于加速具有慢速连接的位置的外部访问(通过高速缓存外部资源并使用这些高速缓存的副本直接在将来为请求提供服务),或者可用于限制或监视外部访问。

二  安装

使用源码安装

2.1 安装依赖

pkgconfig  libtool  gcc (>= 4.3 or clang > 3.0) GNU make  openssl  tcl  pcre  libcap  flex (for TPROXY)  hwloc  lua  curses (for traffic_top)  curl (for traffic_top)

先yum 安装

[[email protected] ~]# yum -y install pkgconfig  libtool  gcc make  openssl  tcl  pcre  libcap  flexhwloc  lua  curses curl

2.2 使用git下载源码

安装相关包

[[email protected] ~]# yum -y install  git autoconf automake

Traffic Server将构建为使用默认nobody用户和组,并将安装到/opt/ts

git下载存储库

[[email protected] ~]# cd /usr/local/src/
[[email protected] src]# git clone https://git-wip-us.apache.org/repos/asf/trafficserver.git

切换带克隆目录

[[email protected] src]# cd trafficserver/

如果是从Git克隆了存储库,则需要configure在继续之前生成 脚本

[[email protected] trafficserver]# autoreconf -if

libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, `build/_aux‘.
libtoolize: copying file `build/_aux/ltmain.sh‘
libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `build‘.
libtoolize: copying file `build/libtool.m4‘
libtoolize: copying file `build/ltoptions.m4‘
libtoolize: copying file `build/ltsugar.m4‘
libtoolize: copying file `build/ltversion.m4‘
libtoolize: copying file `build/lt~obsolete.m4‘
configure.ac:747: installing ‘build/_aux/ar-lib‘
configure.ac:654: installing ‘build/_aux/compile‘
configure.ac:107: installing ‘build/_aux/config.guess‘
configure.ac:107: installing ‘build/_aux/config.sub‘
configure.ac:46: installing ‘build/_aux/install-sh‘
configure.ac:46: installing ‘build/_aux/missing‘
parallel-tests: installing ‘build/_aux/test-driver‘
example/Makefile.am: installing ‘build/_aux/depcomp‘
configure.ac: installing ‘build/_aux/ylwrap‘

2.3 配置源树

[[email protected] trafficserver]# ./configure --prefix=/opt/ts

configure: error: in `/usr/local/src/trafficserver‘:      #报错,没有安装C++
configure: error: C++ preprocessor "/lib/cpp" fails sanity check

安装gcc-c++

[[email protected] trafficserver]# yum -y install gcc-c++

再次执行,急促报错

[[email protected] trafficserver]# ./configure --prefix=/opt/ts

checking checking whether c++ -std=c++17 supports -std=c++17... no
configure: error: *** A compiler with support for -std=c++17 is required.

查看GCC版本

[[email protected] trafficserver]# gcc --version

gcc (GCC) 4.8.5 20150623 (Red Hat 4.8.5-36)
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

三 编译安装gcc 7.30版本

3.1 下载源码包

[[email protected] trafficserver]# cd ../

[[email protected] src]# wget https://mirrors.ustc.edu.cn/gnu/gcc/gcc-7.3.0/gcc-7.3.0.tar.gz

解压

[[email protected] src]# tar -xf  gcc-7.3.0.tar.gz

3.2 运行 download_prerequisites 脚本

[[email protected] src]# cd gcc-7.3.0

[email protected] gcc-7.3.0]# yum -y install bzip2

[[email protected] gcc-7.3.0]# ./contrib/download_prerequisites

gmp-6.1.0.tar.bz2: OK
mpfr-3.1.4.tar.bz2: OK
mpc-1.0.3.tar.gz: OK
isl-0.16.1.tar.bz2: OKAll prerequisites downloaded successfully.

将所有的中间文件都放到该目录

[[email protected] gcc-7.3.0]# mkdir gcc-build-7.3.0

[[email protected] gcc-7.3.0]# cd gcc-build-7.3.0

3.3 配置

[[email protected] gcc-build-7.3.0]# ../configure --enable-checking=release --enable-languages=c,c++ --disable-multilib

编译,时间比较长

[[email protected] gcc-build-7.3.0]#  make

删除旧版的gcc和c++

[[email protected] gcc-build-7.3.0]# rpm -q gcc

[[email protected] gcc-build-7.3.0]# rpm -q gcc-c++

[[email protected] gcc-build-7.3.0]# rpm -e gcc-c++-4.8.5-16.el7_4.2.x86_64

[[email protected] gcc-build-7.3.0]# yum remove gcc

3.4 安装

[[email protected] gcc-build-7.3.0]#  make install

3.5 检查版本

[[email protected] gcc-build-7.3.0]# which gcc

/usr/local/bin/gcc

[[email protected] gcc-build-7.3.0]# gcc --version

-bash: /usr/bin/gcc: No such file or directory

[[email protected] gcc-build-7.3.0]# ln -s /usr/local/bin/gcc /usr/bin/gcc

[[email protected] gcc-build-7.3.0]# gcc --version

gcc (GCC) 7.3.0
Copyright (C) 2017 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

四 、继续安装apache traffic server

[[email protected] gcc-build-7.3.0]# cd ../../trafficserver/

[[email protected] trafficserver]# ./configure --prefix=/opt/ts

checking whether compiling and linking against OpenSSL works... no
configure: error: failed to find OpenSSL

安装Opsnssl

[[email protected] trafficserver]# yum -y install openssl openssl-devel

[[email protected] trafficserver]# ./configure --prefix=/opt/ts

4.1 编译

[[email protected] trafficserver]# make

[[email protected] trafficserver]# make check

4.2 安装

[[email protected] trafficserver]# make install

4.3 配置正向代理

与反向代理相反,在反向代理中,您具有要为其代理(并且可选地缓存)的源服务器的已定义列表,正向代理用于代理(并且可选地缓存)任意远程主机。因此,以下设置records.config是最小转发代理的基本配置:

[[email protected] ~]# cd /opt/ts/

[[email protected] ts]# vim etc/trafficserver/records.config

最低配置
CONFIG proxy.config.url_remap.remap_required INT 0      #禁用重映射规则存在的要求,并在Traffic Server将请求代理到远程主机之前匹配传入请求
CONFIG proxy.config.http.cache.http INT 1               #启用代理HTTP请求的缓存。
CONFIG proxy.config.reverse_proxy.enabled INT 0         #禁用反向代理CONFIG proxy.config.http.server_ports STRING 10001 10001:ipv6 #修改端口

4.4 启动

[[email protected] ts]# ./bin/trafficserver restart

Stopping traffic_manager:                                  [  OK  ]
Stopping traffic_server:                                   [  OK  ]
Starting Apache Traffic Server:                            [  OK  ]

[[email protected] ts]# netstat -ntlp

Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:10001           0.0.0.0:*               LISTEN      21866/traffic_manag
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      2756/sshd
tcp6       0      0 :::10001                :::*                    LISTEN      21866/traffic_manag
tcp6       0      0 :::22                   :::*                    LISTEN      2756/sshd

4.5 配置完成,客户端检测

在配置代理的位置完成

使用cip.cc查看IP

正向代理配置成功!!!

原文地址:https://www.cnblogs.com/zyxnhr/p/10994218.html

时间: 2024-10-09 08:19:04

安装ATS(apache traffic server)正向代理的相关文章

Apache Traffic Server 5.3.1发布

本文来源于我在InfoQ中文站翻译的文章,原文地址是:www.infoq.com/cn/news/2015/07/traffic-server-5.3.1-release 近日,Apache软件基金会发布了Traffic Server 5.3.1版,该版本主要修复了之前版本的一些Bug,同时兼容于所有的5.x版本. Apache Traffic Server是个快速.可伸缩.可扩展.兼容于HTTP/1.1的缓存代理服务器.Traffic Server之前是个商业产品,由Yahoo捐献给Apach

CentOS 7安装配置Apache HTTP Server

原文 CentOS 7安装配置Apache HTTP Server   RPM安装httpd # yum -yinstall httpd //安装httpd会自动安装一下依赖包: apr apr-util httpd-tools mailcap # rpm -qi httpd Name      : httpd Version    : 2.4.6 Release    : 18.el7.centos Architecture: x86_64 Install Date: Mon 11 Aug 2

Apache Traffic Server 安装部署

安装环境 系统:CentOS 7.4 更新yum yum update yum -y install epel* 先安装bzip2 yum -y install bzip2 1.下载源代码 我这里下载的是 7.1版本的源代码 最新的已经有8.0版本http://archive.apache.org/dist/trafficserver/trafficserver-7.1.4.tar.bz2需要访问这个url里面有链接 用wget 下载 下载后解压缩 bzip2 -d .tar.bz2 //将文件

Apache Traffic Server(ats)

零.前言1.官网 http://trafficserver.apache.org/2.国内社区 https://blog.zymlinux.net3.简洁明了的配置:http://blog.csdn.net/tiantiandjava/article/details/50327855 一.ats安装1.安装依赖包 #yum install pkgconfig libtool gcc make openssl tcl expat pcre pcre-devel libcap flex hwloc

CentOS7安装配置Apache HTTP Server

安装httpd 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 # yum -yinstall httpd //安装httpd会自动安装一下依赖包: apr apr-util httpd-tools mailcap # rpm -qi httpd Name       : httpd Version    : 2.4.6 Release    : 18.el7.centos Architecture: x8

Apache HTTP Server安装教程

Apache HTTP Server安装教程 Apache HTTP Server的官方网站是:http://httpd.apache.org/,可以从中下载最新版本的Apache HTTP Server. 首先需要说明的是,Apache 服务器没有官方的64位版本,只有民间的高手自己制作的.下面是具体的安装步骤. 在https://blackdot.be/download-archive/下载64位的Apache服务器.目前的版本是2.2.19,下载之后的压缩包名为httpd-2.2.19-w

Windows 环境 Apache Http Server 2.2.25 安装教学(附载点)

今天刚好安装Apache Http Server,顺便纪录一下 首先要先到 Apache Http Server?下载 for Windows 的安装程序, 我下载的文件是?httpd-2.2.25-win32-x86-openssl-0.9.8y.msi 2015.03.18更新 补充一下, ?若找不到载点 可以到这里抓? https://archive.apache.org/dist/httpd/binaries/win32/ 在 Windows XP 环境下安装 Apache HTTP S

Atitit.HTTP 代理原理及实现 正向代理与反向代理attilax总结

Atitit.HTTP 代理原理及实现 正向代理与反向代理attilax总结 1. 普通代理1 1.1.1. 普通代理2 2. 隧道代理3 3. 反向代理 4 4. 正向代理也可以使用apache实现4 5. 参考5 HTTP 代理原理及实现(一) 文章目录 1. 普通代理 Web 代理是一种存在于网络中间的实体,提供各式各样的功能.现代网络系统中,Web 代理无处不在.我之前有关 HTTP 的博文中,多次提到了代理对 HTTP 请求及响应的影响.今天这篇文章,我打算谈谈 HTTP 代理本身的一

怎样从外网访问内网Apache HTTP Server

本地安装了一个Apache HTTP Server,只能在局域网内访问,怎样从外网也能访问到本地的Apache HTTP Server呢?本文将介绍具体的实现步骤. 1. 准备工作 1.1 安装并启动Apache HTTP Server 默认安装的Apache HTTP Server端口是80. 2. 实现步骤 2.1 下载并解压holer软件包 Holer软件包:holer-xxx.tar.gz Holer支持各种OS系统平台,请选择跟本地OS类型匹配的holer软件包. 2.2 获取hole