充分发挥F5 NGINX Management Suite的潜力,有助于贵组织简化应用和API的部署、管理与安全防护。新的NGINX Management Suite基础设施即代码(IaC)项目旨在帮助您尽快上手,同时鼓励采用适合所选部署环境的最佳实践。
如果您负责构建软件基础设施,可能已经熟悉基础设施即代码(IaC)这种可实现一致结果的现代方法。不过,实现IaC配置的方式有很多,入门可能令人望而却步,从头构建也可能非常耗时。
本篇博文将介绍NGINX Management Suite Infrastructure as Code repository,并概述如何设置其中的各个模块,以便快速启动并运行。
项目概述
设计IaC有两种成熟的方法。一种是烘焙式方法,即创建包含所需软件和配置的镜像。另一种是煎炒式方法,即部署服务器,并使用配置管理工具持续对其进行配置。可以观看此NGINX演讲<.htmla>,了解不可变基础设施,包括烘焙式镜像与煎炒式镜像之间的区别。
在NGINX Management Suite IaC存储库中,我们采用预构建方法,即使用Packer构建镜像,然后使用Terraform部署这些镜像的实例。创建预构建镜像有助于加快各个NGINX Management Suite系统的部署流程,并提高基础设施的一致性。
使用GitHub仓库
Packer输出是一个已安装NGINX Management Suite及所有受支持模块的镜像/计算机(截至本文撰写时,这些模块包括Instance Manager、API Connectivity Manager、Security Monitoring和Application Delivery Manager)。所应用的许可证决定了可以使用哪些模块。可以在MyF5 Customer Portal中查找许可证信息;如果还不是客户,可以申请API Connectivity Stack或App Delivery Stack的30天免费试用版,开始使用。
在镜像生成过程中,密码或证书等机密信息会被移除。可以使用任何NGINX Management Suite支持的操作系统并通过修改构建参数来构建镜像。NGINX支持在多种云环境和本地环境中构建及部署镜像,并计划积极扩展对更多环境的支持。截至本文撰写时,支持下表所列的配置。
Cloud Provider | Packer for NGINX Management Suite | Packer for NGINX Plus | Terraform for Basic Reference Architecture | Terraform for Standalone NGINX Management Suite |
AWS | ||||
GCP | ||||
Azure | ||||
vSphere |
基本参考架构会部署一个NGINX Management Suite实例,以及所需数量的NGINX Plus实例。所部署的网络拓扑遵循目标云提供商的推荐实践。
例如,如果使用Amazon Web Services(AWS),可以部署以下基础设施:
如何开始
要开始将IaC用于NGINX Management Suite,请克隆此代码仓库,并按照README构建镜像。对于基本参考架构,需要按照Packer指南生成NGINX Management Suite和NGINX Plus镜像。
生成镜像后,可以使用这些镜像部署参考架构。Terraform堆栈采用合理的默认设置,并提供可编辑的配置选项,以满足实际需求。
如何贡献
此存储库正在积极开发中,欢迎社区贡献。如需了解更多信息,请查看我们的贡献指南。
其他资源
- 网络研讨会:如何采用基础设施即代码
- 博客:DevOps与不可变交付
- 电子书:安全即代码
相关博客文章
NGINX Plus R26 正式发布
NGINX Plus R26通过缓存JSON Web密钥集加快JWT验证,并强化TLS握手,从而提升安全性。NGINX JavaScript的新功能包括增强对异步函数的支持,以及实现WebCrypto API。
使用NGINX App Protect DoS保护gRPC应用,抵御严重的DoS攻击
gRPC具备开发人员设计和部署现代应用所需的速度与灵活性,但其开放性也使其极易受到第7层DoS攻击。NGINX App Protect DoS可保护gRPC应用免受此类破坏性攻击。
Ingress Controller 选型指南(第 2 部分):风险与面向未来的规划
了解选择错误的Ingress控制器可能带来的风险,以及如何从关键方面着手,让您的选择更好地适应未来需求。
NGINX Plus R19 正式发布
NGINX Plus R19扩展了监控功能,不仅提供更多指标,还新增了指标分析方式;增加试运行模式,用于测试限速效果;增强键值存储,以支持IP地址范围;并使限速更加动态。
NGINX现已正式加入F5
NGINX现已正式成为F5的一部分。Gus Robertson现任F5 NGINX业务部门负责人。他阐述了两家公司在人才、文化和愿景方面融合的价值,以及双方将如何携手增强NGINX的开源产品和商业产品。
