使用基础设施即代码部署F5 NGINX Management Suite

NGINX | 2023年8月08日

充分发挥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系统的部署流程,并提高基础设施的一致性。

预构建方法:使用Packer构建镜像,然后使用Terraform部署实例。

使用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),可以部署以下基础设施:

AWS基础设施示例

如何开始

要开始将IaC用于NGINX Management Suite,请克隆此代码仓库,并按照README构建镜像。对于基本参考架构,需要按照Packer指南生成NGINX Management Suite和NGINX Plus镜像。

生成镜像后,可以使用这些镜像部署参考架构。Terraform堆栈采用合理的默认设置,并提供可编辑的配置选项,以满足实际需求。

如何贡献

此存储库正在积极开发中,欢迎社区贡献。如需了解更多信息,请查看我们的贡献指南。

其他资源


分享

相关博客文章

NGINX Plus R26 正式发布
NGINX | 2022/02/15

NGINX Plus R26 正式发布

NGINX Plus R26通过缓存JSON Web密钥集加快JWT验证,并强化TLS握手,从而提升安全性。NGINX JavaScript的新功能包括增强对异步函数的支持,以及实现WebCrypto API。

使用NGINX App Protect DoS保护gRPC应用,抵御严重的DoS攻击
NGINX | 2022/02/10

使用NGINX App Protect DoS保护gRPC应用,抵御严重的DoS攻击

gRPC具备开发人员设计和部署现代应用所需的速度与灵活性,但其开放性也使其极易受到第7层DoS攻击。NGINX App Protect DoS可保护gRPC应用免受此类破坏性攻击。

Ingress Controller 选型指南(第 2 部分):风险与面向未来的规划
NGINX | 2021/09/13

Ingress Controller 选型指南(第 2 部分):风险与面向未来的规划

了解选择错误的Ingress控制器可能带来的风险,以及如何从关键方面着手,让您的选择更好地适应未来需求。

NGINX Plus R19 正式发布
NGINX | 2019/09/03

NGINX Plus R19 正式发布

NGINX Plus R19扩展了监控功能,不仅提供更多指标,还新增了指标分析方式;增加试运行模式,用于测试限速效果;增强键值存储,以支持IP地址范围;并使限速更加动态。

NGINX现已正式加入F5
NGINX | 2019/05/09

NGINX现已正式加入F5

NGINX现已正式成为F5的一部分。Gus Robertson现任F5 NGINX业务部门负责人。他阐述了两家公司在人才、文化和愿景方面融合的价值,以及双方将如何携手增强NGINX的开源产品和商业产品。

使用NGINX和NGINX Plus实现高性能缓存
NGINX | 2016/08/24

使用NGINX和NGINX Plus实现高性能缓存

我将介绍NGINX在内容缓存和性能方面的工作原理,并分享一些控制NGINX内容缓存方式的技巧。