博客 | NGINX

宣布推出适用于 Ansible 的 NGINX 核心套件

NGINX-F5-horiz-black-type-RGB 的一部分
亚历山德罗·法埃尔·加西亚缩略图
亚历山德罗·法埃尔·加西亚
2020 年 10 月 6 日发布

这是 NGINX 的Ansible 年

我们相信以应用为中心的应用交付方法可以在瓶颈点实现应用的智能扩展,无需在整个应用中扩展基础架构。实现此方法的关键是开发人员使用的庞大 CI/CD 工具生态系统。 作为最受欢迎的自动化工具之一, Ansible使 NGINX 用户能够在整个应用程序生命周期内快速自动执行重复任务。 这就是为什么我们投入大量资金构建更多 Ansible 角色和集合,以便轻松实现 NGINX 环境的自动化。 在过去五年中,我们的 Ansible 集成从一篇博客文章拓展到两个认证集合和 20 多个角色 - 其中大部分是在过去 9 个月内创建的!

为什么使用 Ansible 来配置 NGINX?

使用 Ansible 来配置 NGINX 有几个很好的理由:

  1. 您可能已经是 Ansible 用户 - 如果没有,您至少正在认真考虑尝试一下 Ansible。 不然的话你就不会在这里!
  2. 分散、有弹性且冗余的多云部署变得越来越普遍。 Ansible 为您提供所需的工具,以便您在多个目标主机上轻松安装和配置 NGINX 软件。
  3. 通过使用 Ansible 作为事实来源,您可以获得对所有 NGINX 部署的无与伦比的集中洞察。 所有部署信息都位于 Ansible 剧本中,这些剧本以最易读的配置语言之一 YAML 编写。
  4. 我们的系列产品经过 Red Hat 认证并得到其全力支持。 如果出现问题,Red Hat 屡获殊荣的支持可以帮助您重回正轨。

我们的 Ansible 历史

在我们讨论新的 NGINX Core 系列之前,让我们回顾一下我们使用 Ansible 的历程。

2015年:

  • 发布了一篇博客,描述了如何创建用于安装NGINXNGINX Plus 的Ansible 剧本。 社区成员(正确地)告诉我们,我们的博客文章很快就会过时,我们需要开发和维护一个官方的 Ansible 角色。

2017年:

  • 启动了我们的前两个 Ansible 角色,分别执行 NGINX 和 NGINX Plus 的基本安装。

2018年:

  • 将两个初始角色统一为一个nginx角色,以安装 NGINX 和 NGINX Plus。
  • 增强了nginx角色以配置 NGINX、安装 NGINX Unit 以及安装 NGINX Amplify。

2020年:

nginx角色的演变

nginx角色是 Ansible Galaxy 上最受欢迎的角色之一,自 2018 年推出以来,下载量已超过 700,000 次。 但是尽管它很受欢迎,我们却收到反馈说它很重并且安装时间太长。 虽然有些人喜欢无所不能的瑞士军刀™,但使用手术刀方法也可以获得很多好处(Ansible 本身在引入集合时遵循了这种方法)。 考虑到这一点,我们决定将nginx角色拆分为三个独立的角色,以实现更大的灵活性和速度:

  • nginx – 安装 NGINX 和 NGINX Plus
  • nginx_config – 配置 NGINX 和 NGINX Plus
  • nginx_unit – 安装 NGINX Unit

NGINX 核心集合简介

在我们不断改进 Ansible 产品的过程中,以及在 Ansible 2.10 中引入集合之后,我们创建了一个专注于我们的“核心”产品的 NGINX 集合:用于快速和安全的 Web 服务、反向代理和负载均衡的软件。 因此,NGINX Core 集合包括三个角色:上一节提到的用于安装和配置 NGINX 和 NGINX Plus 的两个角色( nginxnginx_config ),以及用于安装和配置 NGINX App Protect 的nginx_app_protect角色,NGINX App Protect 是 NGINX Plus 的功能齐全的 WAF 模块。

使用 NGINX Core 集合就像使用角色一样简单。 要安装它,请运行:

$ ansible-galaxy collection 安装 nginxinc.nginx_core

然后,您可以通过在 Ansible 剧本开头添加以下几行来开始在剧本中使用该集合的角色:

---
- 集合:
- 名称:nginxinc.nginx_core
版本: 0.1.3

NGINX Core 集合还附带了一系列涵盖许多用例的剧本,从简单的 NGINX 安装到在几个 Web 服务器前设置由 NGINX App Protect 保护的反向代理。 或者,您也可以检查每个角色的分子目录中包含的剧本,以找到每个角色的最新工作示例。

在 NGINX Core 和 NGINX 控制器集合之间进行选择

您可能想知道我们提供的两个 NGINX 集合哪一个最适合您。 通常情况下,答案取决于您的使用情况。

  • NGINX Core – 如果您符合以下条件,请选择此系列:

    • 是 NGINX 开源用户
    • 习惯直接管理 NGINX Plus
    • 想要配置 NGINX App Protect
    • 不要使用 NGINX 控制器
  • NGINX 控制器– 如果您是 NGINX 控制器订阅者,请选择此系列。

开始使用 NGINX 角色和集合

如果您是 Ansible 自动化平台订阅者,您可以访问Ansible 自动化中心(在nginxinc命名空间中)上经过认证的 NGINX 集合。 或者,您可以在Ansible Galaxy上找到我们角色和集合的上游社区版本。 我们希望您能参加今年10 月 13 日至 14 日举行的虚拟 AnsibleFest,并参加Alessandro 关于 NGINX Core 系列的会议。 此外,您还可以访问我们的虚拟展位,与作者聊天,获得演示和网络研讨会的独家访问权,并赢取一些奖品!

我们将我们的收藏视为一个起点,通过 NGINX 和社区的努力,它将随着时间的推移而不断壮大。 请为收藏做出贡献,并让我们知道哪些新功能对您来说很重要。

如果您想试用 NGINX Plus 和 NGINX App Protect,请立即申请30 天免费试用联系我们讨论您的用例

通过 Red Hat 和 NGINX 的合作,您可以从我们两家公司获得最佳的收益! 我们一起:


“这篇博文可能引用了不再可用和/或不再支持的产品。 有关 F5 NGINX 产品和解决方案的最新信息,请探索我们的NGINX 产品系列。 NGINX 现在是 F5 的一部分。 所有之前的 NGINX.com 链接都将重定向至 F5.com 上的类似 NGINX 内容。”