我们使用带有 svn 后端的 spring 云配置服务器(SCCS)。我目前正在调查后端(暂时)不可用时的后备/紧急情况。
如果是 svn 后端,SCCS 会将配置文件下载到本地目录。
我们的想法是配置 SCCS,它首先查找 svn 后端,当它不可用时,将复制的文件作为源。
有谁知道配置必须是什么样子,或者对如何面对这种情况有完全不同的想法?
先感谢您!
我们使用带有 svn 后端的 spring 云配置服务器(SCCS)。我目前正在调查后端(暂时)不可用时的后备/紧急情况。
如果是 svn 后端,SCCS 会将配置文件下载到本地目录。
我们的想法是配置 SCCS,它首先查找 svn 后端,当它不可用时,将复制的文件作为源。
有谁知道配置必须是什么样子,或者对如何面对这种情况有完全不同的想法?
先感谢您!
所以基本上你希望 Cloud Config Server 有多个存储库。您可以使用配置文件来做到这一点,但是从一个存储库到另一个存储库的切换不会是自动的(至少从我的脑海中)。
spring:
profiles.active: remote-svn
application:
name: config-server
cloud:
config:
server:
svn:
uri: https://yourserver.com/config-repo
force-pull: true
//---
spring:
profiles: local-svn
application:
name: config-server
cloud:
config:
server:
svn:
uri: ${user.home}/config-repo
通常你会像这样启动你的服务器:
mvn spring-boot:run
但是如果你的远程 svn 服务器宕机了,你会杀死服务器并重新启动它:
mvn spring-boot:run -Dspring.profiles.active=local-svn
问题是您必须保持这两个存储库同步。因此,当您将配置推送到 SVN 存储库时,您需要配置两个遥控器。一个引用您的 SVN 服务器,另一个引用 Spring Cloud Config Server 存储库。
您可以拥有一个带有逻辑的 bash 脚本来检查您的 SVN 服务器的健康状况,当它发现服务器已关闭时,它会使用 local-svn 配置文件重新启动 Spring Cloud Config Server。