Uploaded image for project: 'AMQ Broker'
  1. AMQ Broker
  2. ENTMQBR-7900

[Docs] Broken image fails to start when OpenSSL provide is specified

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • None
    • AMQ 7.11.0.OPR.1.GA, AMQ 7.10.2.OPR.2.GA
    • container image
    • None
    • False
    • None
    • False
    • +
    • Hide

      Deploy a broker with an ssl acceptor with the sslProvider as OPENSSL

      ie:

      ---
      apiVersion: "broker.amq.io/v1beta1"
      kind: "ActiveMQArtemis"
      metadata:
        creationTimestamp: "2023-04-04T13:44:32Z"
        generation: 2
        managedFields:
        - apiVersion: "broker.amq.io/v1beta1"
          fieldsType: "FieldsV1"
          fieldsV1:
            f:spec:
              ".": {}
              f:acceptors: {}
              f:console:
                ".": {}
                f:expose: {}
              f:deploymentPlan:
                ".": {}
                f:messageMigration: {}
                f:persistenceEnabled: {}
                f:size: {}
              f:upgrades:
                ".": {}
                f:enabled: {}
                f:minor: {}
          manager: "fabric8-kubernetes-client"
          operation: "Update"
          time: "2023-04-04T13:45:36Z"
        - apiVersion: "broker.amq.io/v1beta1"
          fieldsType: "FieldsV1"
          fieldsV1:
            f:status:
              f:podStatus:
                f:starting: {}
          manager: "amq-broker-operator"
          operation: "Update"
          subresource: "status"
          time: "2023-04-04T13:45:46Z"
        name: "tls-provider-broker"
        namespace: "tls-provider-tests-277746"
        resourceVersion: "4974014"
        uid: "141a3b1c-8d4c-49cf-b7a0-571f8ec44b5e"
      spec:
        acceptors:
        - expose: true
          name: "my-amqp"
          needClientAuth: true
          port: 5672
          protocols: "amqp"
          sslEnabled: true
          sslProvider: "OPENSSL"
          sslSecret: "broker-tls-secret"
        console:
          expose: false
        deploymentPlan:
          messageMigration: true
          persistenceEnabled: true
          size: 1
        upgrades:
          enabled: false
          minor: false
      status:
        podStatus:
          starting:
          - "tls-provider-broker-ss-0"
      
      Show
      Deploy a broker with an ssl acceptor with the sslProvider as OPENSSL ie: --- apiVersion: "broker.amq.io/v1beta1" kind: "ActiveMQArtemis" metadata:   creationTimestamp: "2023-04-04T13:44:32Z"   generation: 2   managedFields:   - apiVersion: "broker.amq.io/v1beta1"     fieldsType: "FieldsV1"     fieldsV1:       f:spec:         ".": {}         f:acceptors: {}         f:console:           ".": {}           f:expose: {}         f:deploymentPlan:           ".": {}           f:messageMigration: {}           f:persistenceEnabled: {}           f:size: {}         f:upgrades:           ".": {}           f:enabled: {}           f:minor: {}     manager: "fabric8-kubernetes-client"     operation: "Update"     time: "2023-04-04T13:45:36Z"   - apiVersion: "broker.amq.io/v1beta1"     fieldsType: "FieldsV1"     fieldsV1:       f:status:         f:podStatus:           f:starting: {}     manager: "amq-broker-operator"     operation: "Update"     subresource: "status"     time: "2023-04-04T13:45:46Z"   name: "tls-provider-broker"   namespace: "tls-provider-tests-277746"   resourceVersion: "4974014"   uid: "141a3b1c-8d4c-49cf-b7a0-571f8ec44b5e" spec:   acceptors:   - expose: true     name: "my-amqp"     needClientAuth: true     port: 5672     protocols: "amqp"     sslEnabled: true     sslProvider: "OPENSSL"     sslSecret: "broker-tls-secret"   console:     expose: false   deploymentPlan:     messageMigration: true     persistenceEnabled: true     size: 1   upgrades:     enabled: false     minor: false status:   podStatus:     starting:     - "tls-provider-broker-ss-0"

      When use the openssl provider in the broker acceptor, the broker image fails to start with the error below:

       

      Removing provided -XX:+UseParallelOldGC in favour of artemis.profile provided option
      Platform is x86_64
      Running server env: home: /home/jboss AMQ_HOME /opt/amq CONFIG_BROKER false RUN_BROKER 
      NO RUN_BROKER defined
      Using custom configuration. Copy from /amq/init/config to /home/jboss/amq-broker
      bin
      etc
      lib
      log
      tmp
      Running Broker in /home/jboss/amq-broker
      Apr 04, 2023 1:45:45 PM java.lang.System$LoggerFinder lambda$accessProvider$0
      WARNING: Failed to instantiate LoggerFinder provider; Using default.
                 __  __  ____    ____            _
           /\   |  \/  |/ __ \  |  _ \          | |
          /  \  | \  / | |  | | | |_) |_ __ ___ | | _____ _ __
         / /\ \ | |\/| | |  | | |  _ <| '__/ _ \| |/ / _ \ '__|
        / ____ \| |  | | |__| | | |_) | | | (_) |   <  __/ |
       /_/    \_\_|  |_|\___\_\ |____/|_|  \___/|_|\_\___|_|
       
       Red Hat AMQ 7.10.2.GA
       
       
      2023-04-04 13:45:45,946 INFO  [org.apache.activemq.artemis.integration.bootstrap] AMQ101000: Starting ActiveMQ Artemis Server
      2023-04-04 13:45:45,973 INFO 
       [org.apache.activemq.artemis.core.server] AMQ221000: live Message 
      Broker is starting with configuration Broker Configuration 
      (clustered=true,journalDirectory=/opt/tls-provider-broker/data/journal,bindingsDirectory=/opt/tls-provider-broker/data/bindings,largeMessagesDirectory=/opt/tls-provider-broker/data/large-messages,pagingDirectory=/opt/tls-provider-broker/data/paging)
      2023-04-04 13:45:46,005 INFO  [org.apache.activemq.artemis.core.server] AMQ221013: Using NIO Journal
      2023-04-04 13:45:46,045 INFO 
       [org.apache.activemq.artemis.core.server] AMQ221057: Global Max Size is
       being adjusted to 1/2 of the JVM max size (-Xmx). being defined as 
      1,966,080,000
      2023-04-04 13:45:46,281 INFO 
       [org.jgroups.JChannel] local_addr: 
      abba2bee-8883-4129-8444-271bf7a00f8d, name: 
      tls-provider-broker-ss-0-35277
      2023-04-04 13:45:46,297 INFO  [org.jgroups.protocols.FD_SOCK2] server listening on *.7900
       
      -------------------------------------------------------------------
      GMS: address=tls-provider-broker-ss-0-35277, cluster=activemq_broadcast_channel, physical address=10.129.2.126:7800
      -------------------------------------------------------------------
      2023-04-04 13:45:48,338 INFO 
       [org.apache.activemq.artemis.core.server] AMQ221043: Protocol module 
      found: [artemis-server]. Adding protocol support for: CORE
      2023-04-04 13:45:48,339 INFO 
       [org.apache.activemq.artemis.core.server] AMQ221043: Protocol module 
      found: [artemis-amqp-protocol]. Adding protocol support for: AMQP
      2023-04-04 13:45:48,339 INFO 
       [org.apache.activemq.artemis.core.server] AMQ221043: Protocol module 
      found: [artemis-hornetq-protocol]. Adding protocol support for: HORNETQ
      2023-04-04 13:45:48,340 INFO 
       [org.apache.activemq.artemis.core.server] AMQ221043: Protocol module 
      found: [artemis-mqtt-protocol]. Adding protocol support for: MQTT
      2023-04-04 13:45:48,340 INFO 
       [org.apache.activemq.artemis.core.server] AMQ221043: Protocol module 
      found: [artemis-openwire-protocol]. Adding protocol support for: 
      OPENWIRE
      2023-04-04 13:45:48,341 INFO 
       [org.apache.activemq.artemis.core.server] AMQ221043: Protocol module 
      found: [artemis-stomp-protocol]. Adding protocol support for: STOMP
      2023-04-04 13:45:48,375 INFO  [org.apache.activemq.artemis.core.server] AMQ221034: Waiting indefinitely to obtain live lock
      2023-04-04 13:45:48,375 INFO  [org.apache.activemq.artemis.core.server] AMQ221035: Live Server Obtained live lock
      2023-04-04 13:45:48,612 INFO  [org.apache.activemq.artemis.core.server] AMQ221080: Deploying address DLQ supporting [ANYCAST]
      2023-04-04 13:45:48,613 INFO  [org.apache.activemq.artemis.core.server] AMQ221003: Deploying ANYCAST queue DLQ on address DLQ
      2023-04-04 13:45:48,620 INFO 
       [org.apache.activemq.artemis.core.server] AMQ221080: Deploying address 
      ExpiryQueue supporting [ANYCAST]
      2023-04-04 13:45:48,620 INFO 
       [org.apache.activemq.artemis.core.server] AMQ221003: Deploying ANYCAST 
      queue ExpiryQueue on address ExpiryQueue
      2023-04-04 13:45:48,684 ERROR 
      [org.apache.activemq.artemis.core.server] AMQ224097: Failed to start 
      server: java.lang.NoClassDefFoundError: 
      io/netty/internal/tcnative/SSLPrivateKeyMethod
              at 
      io.netty.handler.ssl.SslContext.newServerContextInternal(SslContext.java:473)
       [netty-handler-4.1.77.Final-redhat-00003.jar:4.1.77.Final-redhat-00003]
              at 
      io.netty.handler.ssl.SslContextBuilder.build(SslContextBuilder.java:606)
       [netty-handler-4.1.77.Final-redhat-00003.jar:4.1.77.Final-redhat-00003]
              at 
      org.apache.activemq.artemis.core.remoting.impl.ssl.SSLSupport.createNettyContext(SSLSupport.java:213)
       [artemis-core-client-2.21.0.redhat-00041.jar:2.21.0.redhat-00041]
              at 
      org.apache.activemq.artemis.core.remoting.impl.ssl.DefaultOpenSSLContextFactory.getServerSslContext(DefaultOpenSSLContextFactory.java:55)
       [artemis-core-client-2.21.0.redhat-00041.jar:2.21.0.redhat-00041]
              at 
      org.apache.activemq.artemis.core.remoting.impl.netty.NettyAcceptor.loadSSLContext(NettyAcceptor.java:389)
       [artemis-server-2.21.0.redhat-00041.jar:2.21.0.redhat-00041]
              at 
      org.apache.activemq.artemis.core.remoting.impl.netty.NettyAcceptor.<init>(NettyAcceptor.java:342)
       [artemis-server-2.21.0.redhat-00041.jar:2.21.0.redhat-00041]
              at 
      org.apache.activemq.artemis.core.remoting.impl.netty.NettyAcceptorFactory.createAcceptor(NettyAcceptorFactory.java:43)
       [artemis-server-2.21.0.redhat-00041.jar:2.21.0.redhat-00041]
              at 
      org.apache.activemq.artemis.core.remoting.server.impl.RemotingServiceImpl.createAcceptor(RemotingServiceImpl.java:271)
       [artemis-server-2.21.0.redhat-00041.jar:2.21.0.redhat-00041]
              at 
      org.apache.activemq.artemis.core.remoting.server.impl.RemotingServiceImpl.start(RemotingServiceImpl.java:214)
       [artemis-server-2.21.0.redhat-00041.jar:2.21.0.redhat-00041]
              at 
      org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.initialisePart2(ActiveMQServerImpl.java:3372)
       [artemis-server-2.21.0.redhat-00041.jar:2.21.0.redhat-00041]
              at 
      org.apache.activemq.artemis.core.server.impl.LiveOnlyActivation.run(LiveOnlyActivation.java:76)
       [artemis-server-2.21.0.redhat-00041.jar:2.21.0.redhat-00041]
              at 
      org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.internalStart(ActiveMQServerImpl.java:671)
       [artemis-server-2.21.0.redhat-00041.jar:2.21.0.redhat-00041]
              at 
      org.apache.activemq.artemis.core.server.impl.ActiveMQServerImpl.start(ActiveMQServerImpl.java:579)
       [artemis-server-2.21.0.redhat-00041.jar:2.21.0.redhat-00041]
              at 
      org.apache.activemq.artemis.integration.FileBroker.start(FileBroker.java:64)
       [artemis-cli-2.21.0.redhat-00041.jar:2.21.0.redhat-00041]
              at 
      org.apache.activemq.artemis.cli.commands.Run.execute(Run.java:127) 
      [artemis-cli-2.21.0.redhat-00041.jar:2.21.0.redhat-00041]
              at 
      org.apache.activemq.artemis.cli.Artemis.internalExecute(Artemis.java:160)
       [artemis-cli-2.21.0.redhat-00041.jar:2.21.0.redhat-00041]
              at 
      org.apache.activemq.artemis.cli.Artemis.execute(Artemis.java:108) 
      [artemis-cli-2.21.0.redhat-00041.jar:2.21.0.redhat-00041]
              at 
      org.apache.activemq.artemis.cli.Artemis.execute(Artemis.java:135) 
      [artemis-cli-2.21.0.redhat-00041.jar:2.21.0.redhat-00041]
              at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) [java.base:]
              at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) [java.base:]
              at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) [java.base:]
              at java.base/java.lang.reflect.Method.invoke(Method.java:568) [java.base:]
              at org.apache.activemq.artemis.boot.Artemis.execute(Artemis.java:134) [artemis-boot.jar:2.21.0.redhat-00041]
              at org.apache.activemq.artemis.boot.Artemis.main(Artemis.java:50) [artemis-boot.jar:2.21.0.redhat-00041]
      Caused by: java.lang.ClassNotFoundException: io.netty.internal.tcnative.SSLPrivateKeyMethod
              at java.base/java.net.URLClassLoader.findClass(URLClassLoader.java:445) [java.base:]
              at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:587) [java.base:]
              at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520) [java.base:]
              ... 24 more
       
      2023-04-04 13:45:48,851 INFO 
       [org.apache.amq.hawtio.branding.PluginContextListener] Initialized 
      amq-broker-redhat-branding plugin
      2023-04-04 13:45:48,881 INFO  [org.apache.activemq.hawtio.plugin.PluginContextListener] Initialized artemis-plugin plugin
      SLF4J: Class path contains multiple SLF4J bindings.
      SLF4J: Found binding in 
      [jar:file:/home/jboss/amq-broker/tmp/webapps/jetty-tls-provider-broker-ss-0_tls-provider-broker-hdls-svc_tls-provider-tests-277746_svc_cluster_local-8161-hawtio_war-_console-@Connector-0-14830770605448458434/webapp/WEB-INF/lib/log4j-slf4j-impl-2.17.1.redhat-00002.jar!/org/slf4j/impl/StaticLoggerBinder.class]
      SLF4J: Found binding in 
      [jar:file:/opt/amq/lib/slf4j-jboss-logmanager-1.0.4.GA-redhat-00001.jar!/org/slf4j/impl/StaticLoggerBinder.class]
      SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
      SLF4J: Actual binding is of type [org.apache.logging.slf4j.Log4jLoggerFactory]
      13:45:49 INFO {main} : Initialising hawtio services
      13:45:49 INFO {main} : Configuration will be discovered via system properties
      13:45:49 INFO {main} : Welcome to hawtio 2.0.0.fuse-sb2-7_11_0-00036-redhat-00001
      13:45:49 INFO {main} : Starting hawtio 
      authentication filter, JAAS realm: "activemq" authorized role(s): 
      "admin" role principal classes: 
      "org.apache.activemq.artemis.spi.core.security.jaas.RolePrincipal"
      13:45:49 INFO {main} : Hawtio loginRedirectFilter is using 1800 sec. HttpSession timeout
      13:45:49 INFO {main} : Proxy servlet is disabled
      13:45:49 INFO {main} : Jolokia 
      overridden property: [key=policyLocation, 
      value=file:/home/jboss/amq-broker/etc/jolokia-access.xml]
      2023-04-04 13:45:49,462 INFO 
       [org.apache.activemq.artemis] AMQ241001: HTTP Server started at 
      http://tls-provider-broker-ss-0.tls-provider-broker-hdls-svc.tls-provider-tests-277746.svc.cluster.local:8161
      2023-04-04 13:45:49,463 INFO 
       [org.apache.activemq.artemis] AMQ241002: Artemis Jolokia REST API 
      available at 
      http://tls-provider-broker-ss-0.tls-provider-broker-hdls-svc.tls-provider-tests-277746.svc.cluster.local:8161/console/jolokia
      2023-04-04 13:45:49,463 INFO 
       [org.apache.activemq.artemis] AMQ241004: Artemis Console available at 
      http://tls-provider-broker-ss-0.tls-provider-broker-hdls-svc.tls-provider-tests-277746.svc.cluster.local:8161/console
      

              jcliffor@redhat.com John Clifford
              tbueno@redhat.com Tiago Bueno
              Tiago Bueno Tiago Bueno
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Created:
                Updated:
                Resolved: