无论是私有云还是公共云、本地云还是外部云,其经常被提及的好处之一就是速度。 加速配置、加速扩展、加速最终将应用程序交付给需要或要求其功能的用户。
为了获得这种速度,大部分云都是标准化的。 从装配线自动化最早开始,标准化一直是实现更快成果的金钥匙。 在云环境中仍然如此。 尽管亚马逊的 API 并未与 Azure、谷歌甚至 OpenStack 互换,但其所有各类服务都是标准化的,这意味着在其基础设施上部署的所有应用在其日常运营流程中都具有很大的共同点。
OpenStack 也是如此,它具有标准部署和标准服务,但通过其插件架构实现定制环境。 这意味着您可以混合搭配负载均衡器和 Web应用防火墙并进行计算以满足您的特定要求。
然而,OpenStack 并没有在不添加额外代码的情况下采用超越基础的定制方法。 例如,您可以插入不同的负载均衡器,但您只能使用通过 OpenStack 提供的算法和功能。 因此,如果负载均衡器具有高级功能 - 比如数据路径可编程性(我们的调查告诉我们,至少这对 NetOps 人员来说非常重要)或 SSL 终止或对不同用户端和服务器端 TCP 配置文件的支持 - 你就不能真正使用 OpenStack API 来打开和关闭它们。 因为它们不是您可能插入的所有负载均衡器的“标准”功能。
这很公平。 但不公平的是,迫使您在那些使应用程序更快、更安全的高级功能和像 OpenStack 这样的标准化云平台的优势之间做出选择。
这时开源再次发挥了拯救作用,事实证明,在开源状况调查中,90% 的受访者认为“创新”是开源改进的方面之一。
为了让那些依赖F5 BIG-IP进行负载均衡和安全应用程序交付的用户能够访问这些高级功能(而不会破坏 OpenStack),我们已经实现了无缝定义这些功能并将其纳入 OpenStack 实施的能力。
F5 OpenStack LBaaSv2 增强服务定义 (ESD) 提供了一种简单的基于 JSON 的机制,用于指定在 OpenStack 环境中在 F5 BIG-IP 上配置高级配置文件。 使用 ESD,您可以部署针对特定应用定制的 OpenStack 负载均衡器。
简而言之,ESD 是一种标准 JSON 格式的文件,其中包含描述要应用于特定应用的配置文件、策略或iRule 的键值对。
例如,左边的 JSON 告诉 BIG-IP 将名为“ cve-2015-1635 ”的 iRule 应用于名为“app_dot_net”的虚拟服务器(应用)。
就是这样。 这个简单的小代码片段使用一些数据路径脚本魔法和一些开源创新使应用程序能够抵御真正的 CVE。
配置文件和策略也可以使用适当的标签以相同的方式应用,所有内容均记录在此处。
适用于 BIG-IP 的 F5 OpenStack LBaaSv2 驱动程序是开源的,可在 Github 上获取。 如果愿意的话,您也可以扩展它。 但是利用 ESD 的能力所提供的可扩展性与访问代码自己执行操作的能力相同。
但是嘿,它是开源的,所以无论什么都可以触发你的触发器,更重要的是,它可以提供你的应用程序。
您可以在此处阅读有关 ESD 的更多信息并在 GitHub 上获取适用于 BIG-IP 的 F5 OpenStack LBaaSv2 驱动程序: