Java 如何在不重新启动应用程序的情况下在microservice的副本之间动态共享数据

Java 如何在不重新启动应用程序的情况下在microservice的副本之间动态共享数据,java,spring-boot,kubernetes,microservices,Java,Spring Boot,Kubernetes,Microservices,我在kubernetes上有一个微型服务。它被放大到4个吊舱。我已经创建了一个对象来使用RESTAPI动态地设置一些值,但该对象将由RESTAPI在单个pod上更新。我必须在不重启应用程序的情况下,同时使用单个URL在另外3个POD上共享相同的值 我在考虑hazelcast的这个要求,但它需要管理员权限,我不能提供 错误 {"date":"2019-03-19T08:30:32.920+00:00","loglevel":"ERROR","logger_name":"com.hazelcast.

我在kubernetes上有一个微型服务。它被放大到4个吊舱。我已经创建了一个对象来使用RESTAPI动态地设置一些值,但该对象将由RESTAPI在单个pod上更新。我必须在不重启应用程序的情况下,同时使用单个URL在另外3个POD上共享相同的值

我在考虑hazelcast的这个要求,但它需要管理员权限,我不能提供

错误

{"date":"2019-03-19T08:30:32.920+00:00","loglevel":"ERROR","logger_name":"com.hazelcast.internal.cluster.impl.DiscoveryJoiner","thread_name":"main","message":"[10.128.10.37]:5701 [some-group] [3.10.2] Failure executing: GET at: https://kubernetes.default.svc/api/v1/namespaces/somespace/endpoints/some-service . Message: Forbidden!Configured service account doesn't have access. Service account may have been revoked. endpoints \"some-service\" is forbidden: User \"system:serviceaccount:some-test:default\" cannot get endpoints in the namespace \"somespace\": User \"system:serviceaccount:some-test:default\" cannot get endpoints in project \"somespace\".","stack_trace":"io.fabric8.kubernetes.client.KubernetesClientException: Failure executing: GET at: https://kubernetes.default.svc/api/v1/namespaces/gaming/endpoints/some-service . Message: Forbidden!Configured service account doesn't have access. Service account may have been revoked. endpoints \"some-service\" is forbidden: User \"system:serviceaccount:some-test:default\" cannot get endpoints in the namespace \"gaming\": User \"system:serviceaccount:some-test:default\" cannot get endpoints in project \"gaming\".\n\tat io.fabric8.kubernetes.client.dsl.base.OperationSupport.requestFailure(OperationSupport.java:470)\n\tat io.fabric8.kubernetes.client.dsl.base.OperationSupport.assertResponseCode(OperationSupport.java:407)\n\tat io.fabric8.kubernetes.client.dsl.base.OperationSupport.handleResponse(OperationSupport.java:379)\n\tat io.fabric8.kubernetes.client.dsl.base.OperationSupport.handleResponse(OperationSupport.java:343)\n\tat io.fabric8.kubernetes.client.dsl.base.OperationSupport.handleGet(OperationSupport.java:312)\n\tat io.fabric8.kubernetes.client.dsl.base.OperationSupport.handleGet(OperationSupport.java:295)\n\tat io.fabric8.kubernetes.client.dsl.base.BaseOperation.handleGet(BaseOperation.java:787)\n\tat io.fabric8.kubernetes.client.dsl.base.BaseOperation.getMandatory(BaseOperation.java:217)\n\tat io.fabric8.kubernetes.client

您可以描述
URL
如何
ENV
变量并使用ConfigMap:@Arslanbekov是的,我们可以,但我必须动态设置此值。更新的问题。也许这对你有帮助?支持从配置映射重新加载属性。关于hazelcast,它需要哪些您没有的管理员权限?@Arslanbekov reloader需要重新启动应用程序