设计理念

    在边缘场景下,一个边缘应用通常由若干个微服务及少量的中间件组成,虽然业务场景相对简单,但是稳定性要求高,因此需要高可用部署,即对应的底层计算资源需要多台服务器。这一组服务器便是站点。站点具有明显的地域性,且站点间的网络互相隔离。平台通过底层的 Node Pool 资源管理站点的生命周期,便于运维工程师有效纳管分布在不同地域的海量计算资源。

    不同于传统的 Kubernetes 应用,边缘应用能够将 Deployment 或 StatefulSet 资源批量部署到边缘站点上(即 Node Pool 资源)。平台底层以 UnitedDeployment 描述边缘应用,UnitedDeployment 则通过 字段,描述 Deployment 或 StatefulSet 资源部署所在的 Node Pool 以及每个 Node Pool 所需部署的副本数量,将来还可以扩展出更多站点级配置的字段。 字段示例如下:

    单元化部署解决了如何将同一个应用分发到多个地域的问题。理想状态下,所有地域的应用都应该是一致的,而现实往往存在差异,例如配置门店名称、门店 Logo,甚至在某些特定场景下对接的支付渠道也会有差异。