面对Envoy来势汹汹,Nginx如何应对Service Mesh时代的挑战?
2018-07-11 09:35
 | 发布者: Gus Robertson

导读:随着Service Mesh在最近一年进入人们的视野,Envoy 作为其中很关键的组件,也开始被广大技术人员熟悉,不少公司已经从nginx 迁移到 Envoy,这给Nginx很大压力。Service Mesh时代,Nginx处于什么位置?本文给出了Nginx自己的思考。


我们生活在历史上最激动人心的时代。 过去几年发生的技术创新数量非同寻常。 对于任何想要创业的人来说,门槛从未如此之低。 现有组织比以往任何时候都更有能力为广大受众提供服务。

创新的核心是开源软件。 多年来,我很幸运能够参与开源世界。 开源已经取得了很大的成就,并且未来会更好。

今天我很高兴地宣布NGINX应用平台[1]。 其中包含基于开源技术的四种产品,我相信这些产品将帮助企业为更广泛的受众提供更多产品。 总而言之,这四个工具是创建具有高性能,高可用性,高安全性和可扩展性的应用程序所需的核心。

show.jpg

NGINX应用平台以您熟悉的NGINX Plus[2]开始。 它是我们流行的开源NGINX软件的商业版本。 NGINX Plus是Web服务器,缓存服务器和负载均衡器。 您可以在边缘节点使用NGINX Plus来提供这些服务,从而屏蔽其背后的应用程序。

第二个产品是我们今年早些时候发布的NGINX Web应用防火墙(WAF)[3] 。 NGINX WAF建立在广泛部署的开源安全软件ModSecurity的基础上,提供针对7层攻击(如SQL注入)的保护。 NGINX WAF是一个动态模块,可动态载入NGINX Plus。


NGINX UNIT


NGINX应用平台的第三部分满足了NGINX社区的长期需求。 因为NGINX可以做很多事情,我们的许多用户称它为“瑞士军刀”,

从来没有其他软件(无论商业或开源),可以像NGINX一样强大。 然而审视NGINX的功能,它有一个缺失的部分:它无法直接运行您的应用程序代码。

通过NGINX Unit[4],我们正在填补那个缺失的部分。 NGINX Unit是由Igor Sysoev设计,并由NGINX核心软件开发团队实现的新应用服务器。 就像NGINX一样,Unit是开源的。 Unit与NGINX一样经历了严格的开发和测试,因此你可以放心地部署它。

show.jpg

Unit的独特之处在于它是完全动态的。 你可以无缝切换到新的应用程序版本,而无需重新启动任何进程。甚至可以在Unit中进行蓝/绿部署,并在它们之间切换而不中断服务。 Unit中的所有更新都是优雅的(译者注:动态的),不需要重新启动。 并且所有Unit配置都是使用JSON通过内置REST API处理的,没有配置文件。

Unit支持多种语言。 在发布时,Unit可以运行最新版本的PHP,Python和Go编写的代码。 你可以使用Unit运行WordPress。 

使用Unit,您可以在同一服务器上运行所有这些语言和这些语言的各种版本编写的应用程序。 我们将增加对更多语言的支持,即将推出Java和Node.JS支持。

我们鼓励您尝试Unit或阅读更多相关内容[5],并让我们知道您的想法。


NGINX Controller


我们很早就设想创建一个产品,可以通过单点控制来部署,管理和监控NGINX。 这样可以减轻管理应用程序这样的日常工作的负担,不至于半夜被叫醒处理NGINX的问题(译者:这是个美好的愿望,但是我存疑)。 今天我很高兴宣布该产品,NGINX应用平台的第四个也是最后一个:NGINX Controller [6]。

NGINX Controller是NGINX Plus的集中监控和管理平台。 使用Controller,你可以从一个位置管理数百台NGINX Plus服务器。 使用直观的图形用户界面,你可以创建NGINX Plus的新实例,并集中配置负载平衡,URL路由和SSL等功能。 NGINX Controller具有丰富的监控功能,可帮助您监控应用程序运行状况和性能。

show.jpg


NGINX Controller帮助企业自动化。 借助NGINX Controller,IT团队为应用程序团队配置虚拟负载均衡器,然后允许他们自己管理负载均衡器。 这种自助服务功能使应用程序团队能够采用敏捷开发实践,同时让IT专注于维护稳定的基础架构。

这是Chris Stetson在2017年nginx.conf(18:29)演示NGINX Controller测试版的视频。
对于会议中的其他录制演示,请访问NGINX YouTube频道[7]。

我们对NGINX Controller有美好的愿景和路线图。 目前,NGINX Controller仅管理NGINX Plus,但我们正在努力扩展功能,以包支持NGINX WAF和NGINX Unit。

NGINX Controller将于2017年第四季度作为私人测试版发布,计划于2018年初全面上市。 如果您想加入测试,请在此处注册[8]。


总结


想象一下,这个平台是世界上最重要,最受尊重的开源项目之一。 这样一个平台,可以帮助您开发和提供现代应用程序 - 并帮助您在未来强有力地扩展现有的应用程序代码。这是一个功能强大,灵活且可扩展的平台。 这使得应用程序交付更容易,更有效,甚至更有趣。

NGINX应用程序平台为企业提供了一个用于交付复杂应用程序的现代工具集。 它是包含四种产品 - NGINX Plus,NGINX WAF,NGINX Unit和NGINX Controller—它们一起提供了构建可扩展和可靠应用所需的工具。


文中链接:


[1] https://www.nginx.com/products/

[2] https://www.nginx.com/products/nginx/

[3] https://www.nginx.com/products/nginx-waf/

[4] https://www.nginx.com/products/nginx-unit/

[5] https://unit.nginx.org/?_ga=2.124954441.2143649317.1531119897-2071827795.1531119897

[6] https://www.nginx.com/products/nginx-controller/

[7] https://www.youtube.com/user/NginxInc

[8] https://www.nginx.com/blog/introducing-nginx-application-platform/#controller-beta