linux下tengine编译安装、开机启动、反向代理配置及健康检查

头像
码农笔录
2018-12-03 运维 阅读量 11983

tengine2.2.0编译安装、开机启动、反向代理配置及健康检查

tengine是由淘宝发起的一个基于nginx的开源项目,nginx的吞吐量比较高、快速、稳定,而且反向代理和负载均衡使用nginx,也是最常见的。本文介绍在Linux(centos)下如何编译安装,并设置nginx开机自启动及配置反向代理和配置健康检查。官网地址

1、下载tengine

  • 下载

下边是使用linux直接下载,或者用windows下载然后上传到linux上,但是这样比较麻烦。

wget http://tengine.taobao.org/download/tengine-2.2.0.tar.gz
  • 解压
tar -zxvf tengine-2.2.0.tar.gz

2、编译安装

  • 安装编译依赖
yum -y install gcc gcc-c++ autoconf automake yum -y install openssl-devel pcre-devel zlib-devel
  • 编译tengine

    进入tengine解压目录,必须进入解压以后的目录,负责后边无法继续下去

cd tengine-2.2.0

检查编译环境,注意:–prefix 后面跟着的是你的nginx安装的路径

./configure --prefix=/home/msoft/tengine/ \ --with-http_gzip_static_module \ --with-http_realip_module \ --with-http_stub_status_module \ --with-http_concat_module \ --with-pcre
如果这一步没有提示缺少依赖的话,说明检查通过,如果缺少依赖,请看上边安装依赖库。接下来就是编译了。
make && make install

到这里就已经算是编译安装好了,如果改天不想用了,可以直接删除掉这个安装目录。然后测试安装结果,执行启动命令之后,nginx的默认端口是80,windows可以直接访问linux的ip,linux 下使用curl localhost,或者wget localhost

//进入你的安装目录 cd /home/msoft/tengine/sbin //执行nginx的启动文件 ./nginx

3、加入系统服务,设置开机启动

  • 创建启动文件
    点击nginx启动文件下载启动文件,可能会因为windows的编码问题导致linux无法识别,所以用windows下载,然后用记事本之类的软件打开。然后Linux进入cd /etc/init.d/,用vi编辑器创建文件vi nginx。吧记事本里的直接全部复制到vi编辑器里。
    注意:这块一定要记得修改你的安装路径,和配置路径
//这是你电脑nginx的启动文件的地址,
nginx="/home/msoft/tengine/sbin/nginx"
//nginx的配置文件地址
NGINX_CONF_FILE="/home/msoft/tengine/conf/nginx.conf"

然后保存文件,这时候会发现nginx这文件颜色不是绿色的,表示没有执行权限。

  • 配置开机启动

赋予执行权限

chmod 755 nginx

将该文件加到系统服务

chkconfig --add nginx

设置开机启动

chkconfig nginx on

查看是否添加成功

chkconfig --list nginx

启动,停止,重新装载

service nginx start|stop|reload

4、配置反向代理

进入你的nginx的你装目录

cd /home/msoft/tengine/conf/
vi nginx.conf

配置反向代理,目录结构看下图,可以配置多个,案例中只配置了一个。

upstream myback { server localhost:8080; server 192.168.1.110:8080; }
location / { proxy_pass http://myback ; proxy_set_header X-Real-IP $remote_addr; client_max_body_size 100m; }

这里写图片描述

注意:这块直接配置ip:端口,也可以转发到具体某个模块上,图中/yasaka,那个就是配置的某个模块。到时候在浏览器直接输入以下地址即可被代理到具体的后端服务器上。

http://yasaka.iask.in/

http://yasaka.iask.in/yasaka

5、配置健康检查
tengine自带健康检查,加入如下配置,配置结构看图片
这是案例地址http://yasaka.iask.in/status

location /status {
            check_status;
        }

然后在反向代理中加入,那些后端服务器需要进行健康检查。

check interval=3000 rise=2 fall=5 timeout=1000 type=http;
check_http_send "HEAD / HTTP/1.0\r\n\r\n";
check_http_expect_alive http_2xx http_3xx;

这里写图片描述

注意:这里记得换行,否则会解析错误

这里写图片描述
这里写图片描述

6、总结

本文介绍了tengine(nginx)编译安装,加入开机启动,配置反向代理和健康检查一整套。具体的细节或者哪一个模块想深入,请查阅官方文档,我就不在这里重复的造轮子了。

关注

如果有问题,请在下方评论,或者加群讨论 200909980

关注下方微信公众号,可以及时获取到各种技术的干货哦,如果你有想推荐的帖子,也可以联系我们的。

码农笔录二维码