有没有办法从 PCF 外部的客户端使用 PCF spring 云配置服务器?

Posted

技术标签:

【中文标题】有没有办法从 PCF 外部的客户端使用 PCF spring 云配置服务器?【英文标题】:Is there a way to use a PCF spring cloud config server from a client outside the PCF? 【发布时间】:2019-07-22 05:44:03 【问题描述】:

我们有一些在 PCF 上运行的 spring-boot 微服务,我们有 PCF 云配置服务器来为各种配置文件/环境提供配置。这些微服务绑定到配置服务器,全部由 PCF 基础设施管理。我们有一些服务在不受 PCF 管理的虚拟机上运行。是否可以将来自同一 PCF 配置服务器的资源提供给运行在不受 PCF 管理的 VM 上的服务?

【问题讨论】:

我没有尝试过,但我认为它应该可以工作。使用 cf cli 从您的 SCS Config Server 服务实例创建一个服务密钥(我建议在 PCF 之外为每个应用创建一个)。然后使用 cf cli 查看服务密钥以获取它的信息。将该信息传递给在 VM 上运行的应用程序,只要网络/路由允许,您应该能够进行通信。传递信息的一种简单方法是在 VM 上手动定义 VCAP_SERVICES 环境变量。 Spring Boot 应该像在 CF 上运行时一样读取此内容,从而使其工作非常相似。 谢谢@DanielMikusa。在我设置环境变量 SPRING_PROFILES_ACTIVE=dev 后它工作了 还有什么可以分享的吗?启用任意配置文件是不够的。你在dev 个人资料中配置了什么? @DanielMikusa 当“bootstrap.yml”中的配置文件属性未设置为“dev”时,配置文件设置为“默认”,即使我有一个宽松的安全配置,也会触发登录提示到位。我仍然不知道这是否是最佳做法。我需要知道如何以正确的方式做到这一点。但是,一旦我将配置文件属性设置为“开发”,我就能够无缝地使用资源。 @DanielMikusa 我已经更新了我原来的问题,并更新了我所做过的所有事情。 【参考方案1】:

最后,这是我从 VM 连接外部服务以连接到 PCF 管理的配置服务器所必须做的。

当 bootstrap.yml 中的配置文件属性未设置为“dev”时,配置文件设置为“默认”,即使我有一个宽松的安全配置,也会触发登录提示。我仍然不知道这是否是最佳做法。但是,一旦我将配置文件属性设置为“开发”,我就能够无缝地使用资源。

【讨论】:

以上是关于有没有办法从 PCF 外部的客户端使用 PCF spring 云配置服务器?的主要内容,如果未能解决你的问题,请参考以下文章

学习PCF8563芯片资料和相关功能解析

4.8 51单片机-PCF8591(ADC/DAC)转换芯片

4.8 51单片机-PCF8591(ADC/DAC)转换芯片

在51单片机上,pcf8951和xpt2046有啥区别?

PCF 调度作业

访问PCF Spring Boot应用程序上的VCAP属性