gpt4 book ai didi

kubernetes - Kubernetes 中导出/导入 Keycloak 数据的最佳实践

转载 作者:行者123 更新时间:2023-12-02 16:24:47 26 4
gpt4 key购买 nike

我试图弄清楚,K8S keycloak(版本 3.3.0.CR1)中的导入/导出最佳实践是什么。这里是keycloak官方页面import/export解释,以及导出到单个文件 json 的示例。转到/keycloak/bin 文件夹并运行:

./standalone.sh -Dkeycloak.migration.action=export -Dkeycloak.migration.provider=singleFile -Dkeycloak.migration.file=keycloak-export.json

我登录到 pod,运行此命令后出现错误:

12:23:32,045 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("add") failed - address: ([
("core-service" => "management"),
("management-interface" => "http-interface")
]) - failure description: {
"WFLYCTL0080: Failed services" => {"org.wildfly.management.http.extensible" => "java.net.BindException: Address already in use /127.0.0.1:9990"},
"WFLYCTL0288: One or more services were unable to start due to one or more indirect dependencies not being available." => {
"Services that were unable to start:" => ["org.wildfly.management.http.extensible.shutdown"],
"Services that may be the cause:" => ["jboss.remoting.remotingConnectorInfoService.http-remoting-connector"]
}
}

正如我所见,Keycloak 服务器在我运行备份脚本的同一端口上运行。这里是helm/keycloak的values.yml:

Service:
Name: keycloak
Port: 8080
Type: ClusterIP

Deployment:
Image: jboss/keycloak
ImageTag: 2.5.1.Final
ImagePullPolicy: IfNotPresent
ContainerPort: 8080
KeycloakUser: Admin
KeycloakPassword: Admin

那么,在我们运行此脚本之前,应该停止服务器吗?我无法停止 pod 内的 keycloak 进程,因为 ingress 将关闭 pod 并创建新的 pod。对于导出/导入(备份/恢复)数据的其他方式有什么建议吗?或者我错过了什么?

附注我什至尝试过 UI 导入/导出。导出工作很好,我看到了所有数据。但进口只起到了一半作用。他给我带来了所有“客户端”,但没有给我带来“领域”和“用户联盟”。

最佳答案

基本上,您只需在与主实例不同的端口上启动导出 Keycloak 实例即可。我刚才使用了这样的东西:

bin/standalone.sh -Dkeycloak.migration.action=export -Dkeycloak.migration.provider=singleFile -Dkeycloak.migration.file=keycloak-export.json -Djboss.http.port=8888 -Djboss。 https.port=9999 -Djboss.management.http.port=7777

重要的部分是所有端口。如果您收到更多错误消息,则可能需要添加更多属性(grep portstandalone/configuration/standalone.xml 是查找属性名称的好 helper ),但最终,所有错误消息都会停止然后您会看到以下消息:


09:15:26,550 INFO [org.keycloak.exportimport.singlefile.SingleFileExportProvider] (ServerService 线程池 -- 52) 将模型导出到文件/opt/jboss/keycloak/keycloak-export.json
[...]
09:15:29,565 INFO [org.jboss.as]( Controller 启动线程)WFLYSRV0025:Keycloak 3.2.0.Final(WildFly Core 2.0.10.Final)在 12156ms 中启动 - 启动了 818 个服务中的 444 个(558 个服务是惰性的,被动或按需)

现在您可以使用 Ctrl-C 停止服务器,退出容器并使用 kubectl cp 复制导出文件。

关于kubernetes - Kubernetes 中导出/导入 Keycloak 数据的最佳实践,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46281416/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com