Updating Image to 25.0.X results in CrashLoop using KeycloakX Chart
Hi,
Trying to use 25.0.X images with version 2.3.0 of the Keycloak X Chart. I updated the hostname values to match the update guide here:
https://www.keycloak.org/docs/25.0.1/upgrading/#new-hostname-options
Apart from this, my previous settings should be compatible however I get the following error repeated and a restarting Keycloak:
keycloak-keycloakx-1 keycloak 2024-06-27 20:10:24,820 DEBUG [org.keycloak.services.error.KeycloakErrorHandler] (vert.x-eventloop-thread-0) Error response 404: jakarta.ws.rs.NotFoundException: Unable to find matching target resource method
keycloak-keycloakx-1 keycloak at org.jboss.resteasy.reactive.server.handlers.ClassRoutingHandler.throwNotFound(ClassRoutingHandler.java:233)
keycloak-keycloakx-1 keycloak at org.jboss.resteasy.reactive.server.handlers.ClassRoutingHandler.handle(ClassRoutingHandler.java:102)
keycloak-keycloakx-1 keycloak at io.quarkus.resteasy.reactive.server.runtime.QuarkusResteasyReactiveRequestContext.invokeHandler(QuarkusResteasyReactiveRequestContext.java:123)
keycloak-keycloakx-1 keycloak at org.jboss.resteasy.reactive.common.core.AbstractResteasyReactiveContext.run(AbstractResteasyReactiveContext.java:147)
keycloak-keycloakx-1 keycloak at org.jboss.resteasy.reactive.server.handlers.RestInitialHandler.beginProcessing(RestInitialHandler.java:48)
keycloak-keycloakx-1 keycloak at org.jboss.resteasy.reactive.server.vertx.ResteasyReactiveVertxHandler.handle(ResteasyReactiveVertxHandler.java:23)
keycloak-keycloakx-1 keycloak at org.jboss.resteasy.reactive.server.vertx.ResteasyReactiveVertxHandler.handle(ResteasyReactiveVertxHandler.java:10)
keycloak-keycloakx-1 keycloak at io.vertx.ext.web.impl.RouteState.handleContext(RouteState.java:1285)
keycloak-keycloakx-1 keycloak at io.vertx.ext.web.impl.RoutingContextImplBase.iterateNext(RoutingContextImplBase.java:177)
keycloak-keycloakx-1 keycloak at io.vertx.ext.web.impl.RoutingContextWrapper.next(RoutingContextWrapper.java:200)
keycloak-keycloakx-1 keycloak at io.quarkus.vertx.http.runtime.options.HttpServerCommonHandlers$1.handle(HttpServerCommonHandlers.java:62)
keycloak-keycloakx-1 keycloak at io.quarkus.vertx.http.runtime.options.HttpServerCommonHandlers$1.handle(HttpServerCommonHandlers.java:40)
keycloak-keycloakx-1 keycloak at io.vertx.ext.web.impl.RouteState.handleContext(RouteState.java:1285)
keycloak-keycloakx-1 keycloak at io.vertx.ext.web.impl.RoutingContextImplBase.iterateNext(RoutingContextImplBase.java:177)
keycloak-keycloakx-1 keycloak at io.vertx.ext.web.impl.RoutingContextWrapper.next(RoutingContextWrapper.java:200)
keycloak-keycloakx-1 keycloak at io.quarkus.resteasy.reactive.server.runtime.ResteasyReactiveRecorder$13.handle(ResteasyReactiveRecorder.java:339)
keycloak-keycloakx-1 keycloak at io.quarkus.resteasy.reactive.server.runtime.ResteasyReactiveRecorder$13.handle(ResteasyReactiveRecorder.java:332)
keycloak-keycloakx-1 keycloak at io.vertx.ext.web.impl.RouteState.handleContext(RouteState.java:1285)
keycloak-keycloakx-1 keycloak at io.vertx.ext.web.impl.RoutingContextImplBase.iterateNext(RoutingContextImplBase.java:177)
keycloak-keycloakx-1 keycloak at io.vertx.ext.web.impl.RoutingContextWrapper.next(RoutingContextWrapper.java:200)
keycloak-keycloakx-1 keycloak at io.vertx.ext.web.impl.RouterImpl.handleContext(RouterImpl.java:250)
keycloak-keycloakx-1 keycloak at io.vertx.ext.web.impl.RouteState.handleContext(RouteState.java:1285)
keycloak-keycloakx-1 keycloak at io.vertx.ext.web.impl.RoutingContextImplBase.iterateNext(RoutingContextImplBase.java:177)
keycloak-keycloakx-1 keycloak at io.vertx.ext.web.impl.RoutingContextImpl.next(RoutingContextImpl.java:137)
keycloak-keycloakx-1 keycloak at io.vertx.ext.web.impl.RouterImpl.handle(RouterImpl.java:68)
keycloak-keycloakx-1 keycloak at io.vertx.ext.web.impl.RouterImpl.handle(RouterImpl.java:37)
keycloak-keycloakx-1 keycloak at io.quarkus.vertx.http.runtime.options.HttpServerCommonHandlers$3.handle(HttpServerCommonHandlers.java:103)
keycloak-keycloakx-1 keycloak at io.quarkus.vertx.http.runtime.options.HttpServerCommonHandlers$3.handle(HttpServerCommonHandlers.java:100)
keycloak-keycloakx-1 keycloak at io.quarkus.vertx.http.runtime.options.HttpServerCommonHandlers$2.handle(HttpServerCommonHandlers.java:86)
keycloak-keycloakx-1 keycloak at io.quarkus.vertx.http.runtime.options.HttpServerCommonHandlers$2.handle(HttpServerCommonHandlers.java:69)
keycloak-keycloakx-1 keycloak at io.quarkus.vertx.http.runtime.VertxHttpRecorder$1.handle(VertxHttpRecorder.java:147)
keycloak-keycloakx-1 keycloak at io.quarkus.vertx.http.runtime.VertxHttpRecorder$1.handle(VertxHttpRecorder.java:123)
keycloak-keycloakx-1 keycloak at io.vertx.core.impl.ContextImpl.emit(ContextImpl.java:328)
keycloak-keycloakx-1 keycloak at io.vertx.core.impl.DuplicatedContext.emit(DuplicatedContext.java:166)
keycloak-keycloakx-1 keycloak at io.vertx.core.http.impl.Http1xServerConnection.handleMessage(Http1xServerConnection.java:174)
keycloak-keycloakx-1 keycloak at io.vertx.core.net.impl.ConnectionBase.read(ConnectionBase.java:159)
keycloak-keycloakx-1 keycloak at io.vertx.core.net.impl.VertxHandler.channelRead(VertxHandler.java:153)
keycloak-keycloakx-1 keycloak at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:442)
keycloak-keycloakx-1 keycloak at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
keycloak-keycloakx-1 keycloak at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)
keycloak-keycloakx-1 keycloak at io.vertx.core.http.impl.Http1xUpgradeToH2CHandler.channelRead(Http1xUpgradeToH2CHandler.java:124)
keycloak-keycloakx-1 keycloak at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444)
keycloak-keycloakx-1 keycloak at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
keycloak-keycloakx-1 keycloak at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)
keycloak-keycloakx-1 keycloak at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:289)
keycloak-keycloakx-1 keycloak at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:442)
keycloak-keycloakx-1 keycloak at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
keycloak-keycloakx-1 keycloak at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)
keycloak-keycloakx-1 keycloak at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:346)
keycloak-keycloakx-1 keycloak at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:318)
keycloak-keycloakx-1 keycloak at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444)
keycloak-keycloakx-1 keycloak at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
keycloak-keycloakx-1 keycloak at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)
keycloak-keycloakx-1 keycloak at io.vertx.core.http.impl.Http1xOrH2CHandler.end(Http1xOrH2CHandler.java:61)
keycloak-keycloakx-1 keycloak at io.vertx.core.http.impl.Http1xOrH2CHandler.channelRead(Http1xOrH2CHandler.java:38)
keycloak-keycloakx-1 keycloak at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:444)
keycloak-keycloakx-1 keycloak at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
keycloak-keycloakx-1 keycloak at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)
keycloak-keycloakx-1 keycloak at io.netty.handler.timeout.IdleStateHandler.channelRead(IdleStateHandler.java:289)
keycloak-keycloakx-1 keycloak at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:442)
keycloak-keycloakx-1 keycloak at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
keycloak-keycloakx-1 keycloak at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:412)
keycloak-keycloakx-1 keycloak at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410)
keycloak-keycloakx-1 keycloak at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:440)
keycloak-keycloakx-1 keycloak at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:420)
keycloak-keycloakx-1 keycloak at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919)
keycloak-keycloakx-1 keycloak at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:166)
keycloak-keycloakx-1 keycloak at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:788)
keycloak-keycloakx-1 keycloak at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:724)
keycloak-keycloakx-1 keycloak at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:650)
keycloak-keycloakx-1 keycloak at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:562)
keycloak-keycloakx-1 keycloak at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997)
keycloak-keycloakx-1 keycloak at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74)
keycloak-keycloakx-1 keycloak at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
keycloak-keycloakx-1 keycloak at java.base/java.lang.Thread.run(Thread.java:1583)
keycloak-keycloakx-1 keycloak
keycloak-keycloakx-1 keycloak 2024-06-27 20:10:24,820 DEBUG [org.keycloak.transaction.JtaTransactionWrapper] (vert.x-eventloop-thread-0) JtaTransactionWrapper rollback
keycloak-keycloakx-1 keycloak 2024-06-27 20:10:24,820 DEBUG [org.keycloak.transaction.JtaTransactionWrapper] (vert.x-eventloop-thread-0) JtaTransactionWrapper end
why not use version: 2.4.1 of chart
why not use version: 2.4.1 of chart
Didn't see it available in the releases when I posted this, will give it a try.
@linonetwo Version 2.4.1 of the chart is much better and will install successfully apart from the Service Monitor which appears to be broken, I get the following when attempting to enable it:
Warning error 98s helm-controller Helm install failed: YAML parse error on keycloakx/templates/servicemonitor.yaml: error converting YAML to JSON: yaml: invalid map key: map[interface {}]interface {}{".Values.http.internalPort":interface {}(nil)}
I seem not using Service Monitor, so I'm finished now.
Try updating to 2.4.2.
It may have fixed the issue as I didn't have it
@AMontagu Same thing for me in 2.4.2:
Last Attempted Revision: 2.4.2
Last Attempted Values Checksum: af5418679f5804cfa9e3502dc4283f19768cff0d
Observed Generation: 1
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal info 2m17s helm-controller HelmChart 'flux-system/keycloak-keycloak' is not ready
Normal info 2m13s helm-controller Helm install has started
Warning error 2m13s helm-controller Helm install failed: YAML parse error on keycloakx/templates/servicemonitor.yaml: error converting YAML to JSON: yaml: invalid map key: map[interface {}]interface {}{".Values.http.internalPort":interface {}(nil)}
Yeah by lokking here: https://github.com/codecentric/helm-charts/commit/e1f5237dea3a16996fa6e7cf891fe97bd80c7261#diff-0d42a0bcf21efda1331b8bbd8b883ee80f6b5587a3e02d7820c187911174663cR152
it seem that the value is on the name instead of the port
You may want to override this settings
This issue has been marked as stale because it has been open for 30 days with no activity. It will be automatically closed in 10 days if no further activity occurs.