0

在大多数解决方案中,一些应用程序应该是公共的,而一些应用程序应该仅供内部访问。

这种解决方案是否有经过验证的配置模式?

执行此操作的简单方法可能是创建两个 CF 空间(在同一个 CF 组织中):

  • internal space
    • 此空间中的应用程序绑定到internal domain(例如:*.my-internal-cf.cloud),指向internal load-balancer
    • internal domain主要共享域
    • 无法从internal load-balancerInternet 访问,只能对来自 Cloud Foundry 的应用程序进行访问
    • internal space有权访问后备服务(cf 安全组)
  • public space: _
    • 此空间中的应用程序绑定到public domain(例如:*.my-pub-cf.cloud),指向public load-balancer
    • public load-balancer可从 Internet 访问,并且仅将流量传递给public domains
    • public space后备服务的访问权限有限,甚至只能访问internal space(cf 安全组)中的应用程序

这种配置安全吗?

可以更轻松地完成吗?

4

1 回答 1

1

此处使用的组织和空间与应用程序是公共/私有无关。组织和空间用于在内部组织您的应用程序并通过 cf cli 限制对这些应用程序的访问。您可以使用对您的团队和公司有意义的任何结构。

为了使应用程序公开/私有,这完全取决于路由的使用。如果您希望公开访问应用程序,则将公共路由绑定到应用程序(即不是内部路由)。如果您不希望应用程序公开,请绑定内部路由或根本不绑定路由。如果绑定内部路由,可以使用平台基于 DNS 的发现,也可以自带,比如 Eureka 或 Consul。如果您不绑定路由,您将通过服务进行通信,例如消息代理。

您甚至可以通过策略控制容器到容器网络上两个应用程序之间的流量。这允许您根据类型和端口允许或限制流量。

于 2018-07-19T16:48:01.210 回答