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

简介: tengine2.2.0编译安装、开机启动、反向代理配置及健康检查tengine是由淘宝发起的一个基于nginx的开源项目,nginx的吞吐量比较高、快速、稳定,而且反向代理和负载均衡使用nginx,也是最常见的。

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;
        }

img_a7ddfba15697a79f7a77a6fcc24cd760.jpe
这里写图片描述

注意:这块直接配置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;
img_089d3810bd9710759b6839ed28de5172.jpe
这里写图片描述

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

img_6e342024fdc11bdfe8f547bc8cf5eaee.jpe
这里写图片描述

img_bc9bdf1f4556720846dbf9e54177138a.jpe
这里写图片描述

6、总结

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

关注

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

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

img_cb380af3d7a871d3f66df87a6eae835e.png
码农笔录二维码
相关文章
|
17天前
|
Ubuntu Unix Linux
Linux网络文件系统NFS:配置与管理指南
NFS 是 Linux 系统中常用的网络文件系统协议,通过配置和管理 NFS,可以实现跨网络的文件共享。本文详细介绍了 NFS 的安装、配置、管理和常见问题的解决方法,希望对您的工作有所帮助。通过正确配置和优化 NFS,可以显著提高文件共享的效率和安全性。
129 7
|
3月前
|
安全 关系型数据库 MySQL
Linux下安装mysql8.0(以tar.xz包安装--编译安装)
通过上述步骤,您完成了从下载、编译、安装到配置MySQL 8.0的全过程。此过程虽然较为复杂,但提供了对MySQL安装环境的完全控制,有助于满足特定的部署需求。在实际操作中,根据具体的系统环境,可能还需调整部分步骤或解决未预见的依赖问题。始终参考官方文档和社区资源,保持安装过程与最新版本的兼容性。
1350 67
|
2月前
|
数据库连接 Linux Shell
Linux下ODBC与 南大通用GBase 8s数据库的无缝连接配置指南
本文详细介绍在Linux系统下配置GBase 8s数据库ODBC的过程,涵盖环境变量设置、ODBC配置文件编辑及连接测试等步骤。首先配置数据库环境变量如GBASEDBTDIR、PATH等,接着修改odbcinst.ini和odbc.ini文件,指定驱动路径、数据库名称等信息,最后通过catalog.c工具或isql命令验证ODBC连接是否成功。
|
2月前
|
缓存 资源调度 安全
深入探索Linux操作系统的心脏——内核配置与优化####
本文作为一篇技术性深度解析文章,旨在引领读者踏上一场揭秘Linux内核配置与优化的奇妙之旅。不同于传统的摘要概述,本文将以实战为导向,直接跳入核心内容,探讨如何通过精细调整内核参数来提升系统性能、增强安全性及实现资源高效利用。从基础概念到高级技巧,逐步揭示那些隐藏在命令行背后的强大功能,为系统管理员和高级用户打开一扇通往极致性能与定制化体验的大门。 --- ###
83 9
|
2月前
|
存储 安全 数据管理
如何在 Rocky Linux 8 上安装和配置 Elasticsearch
本文详细介绍了在 Rocky Linux 8 上安装和配置 Elasticsearch 的步骤,包括添加仓库、安装 Elasticsearch、配置文件修改、设置内存和文件描述符、启动和验证 Elasticsearch,以及常见问题的解决方法。通过这些步骤,你可以快速搭建起这个强大的分布式搜索和分析引擎。
73 5
|
3月前
|
Java Linux 网络安全
NIFI在Linux服务区上的部署配置过程是什么?
【10月更文挑战第21天】NIFI在Linux服务区上的部署配置过程是什么?
100 2
|
3月前
|
Ubuntu Linux 编译器
Linux/Ubuntu下使用VS Code配置C/C++项目环境调用OpenCV
通过以上步骤,您已经成功在Ubuntu系统下的VS Code中配置了C/C++项目环境,并能够调用OpenCV库进行开发。请确保每一步都按照您的系统实际情况进行适当调整。
790 3
|
3月前
|
监控 安全 网络协议
快速配置Linux云服务器
【10月更文挑战第3天】快速配置Linux云服务器
|
4月前
|
Oracle Java 关系型数据库
Linux下JDK环境的配置及 bash: /usr/local/java/bin/java: cannot execute binary file: exec format error问题的解决
如果遇到"exec format error"问题,文章建议先检查Linux操作系统是32位还是64位,并确保安装了与系统匹配的JDK版本。如果系统是64位的,但出现了错误,可能是因为下载了错误的JDK版本。文章提供了一个链接,指向Oracle官网上的JDK 17 Linux版本下载页面,并附有截图说明。
Linux下JDK环境的配置及 bash: /usr/local/java/bin/java: cannot execute binary file: exec format error问题的解决
|
3月前
|
应用服务中间件 Linux Shell
Linux 配置 Nginx 服务的详细步骤,绝对干货
Linux 配置 Nginx 服务的详细步骤,绝对干货
121 0