Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

After Pulsar-cluster enabling TLS, pulsar manager cannot add environment #545

Open
Awsmsniper opened this issue Jan 31, 2024 · 0 comments
Open

Comments

@Awsmsniper
Copy link

Describe the bug
When I enable TLS, I am unable to add a new pulsar cluster environment in pulsar manager。

To Reproduce
Steps to reproduce the behavior:
1.Deploying a pulsar cluster using pulsar-helm-chart 3.2.0(pulsar image 3.1.2) in Kubernetes(Offline environment)
2. Enable jwt and tls. pulsar-manager token use pulsar-token-admin
3. Create a new environment in pulse manager
4. Service URL : https://pulsar-proxy:443
5. Bookie URL : https://pulsar-proxy:6651
6. See error Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Handler dispatch failed; nested exception is java.lang.NoClassDefFoundError: Could not initialize class org.apache.pulsar.common.util.SecurityUtility] with root cause

Expected behavior
Creating a new environment normally in pulsar manager.

Screenshots

Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Handler dispatch failed; nested exception is java.lang.NoClassDefFoundError: Could not initialize class org.apache.pulsar.common.util.SecurityUtility] with root cause

java.lang.NoClassDefFoundError: Could not initialize class org.apache.pulsar.common.util.SecurityUtility
        at org.apache.pulsar.client.admin.internal.http.AsyncHttpConnector.<init>(AsyncHttpConnector.java:152) ~[pulsar-client-admin-original-2.7.0.jar:2.7.0]
        at org.apache.pulsar.client.admin.internal.http.AsyncHttpConnectorProvider.getConnector(AsyncHttpConnectorProvider.java:50) ~[pulsar-client-admin-original-2.7.0.jar:2.7.0]
        at org.apache.pulsar.client.admin.PulsarAdmin.<init>(PulsarAdmin.java:200) ~[pulsar-client-admin-original-2.7.0.jar:2.7.0]
        at org.apache.pulsar.client.admin.internal.PulsarAdminBuilderImpl.build(PulsarAdminBuilderImpl.java:46) ~[pulsar-client-admin-original-2.7.0.jar:2.7.0]
        at org.apache.pulsar.manager.service.impl.PulsarAdminServiceImpl.createPulsarAdmin(PulsarAdminServiceImpl.java:146) ~[pulsar-manager.jar:na]
        at org.apache.pulsar.manager.service.impl.PulsarAdminServiceImpl.getPulsarAdmin(PulsarAdminServiceImpl.java:73) ~[pulsar-manager.jar:na]
        at org.apache.pulsar.manager.service.impl.PulsarAdminServiceImpl.clusters(PulsarAdminServiceImpl.java:83) ~[pulsar-manager.jar:na]
        at org.apache.pulsar.manager.controller.EnvironmentsController.addEnvironment(EnvironmentsController.java:124) ~[pulsar-manager.jar:na]
        at org.apache.pulsar.manager.controller.EnvironmentsController$$FastClassBySpringCGLIB$$8f0ec792.invoke(<generated>) ~[pulsar-manager.jar:na]
        at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204) ~[spring-core-5.0.6.RELEASE.jar:5.0.6.RELEASE]
        at org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:746) ~[spring-aop-5.0.6.RELEASE.jar:5.0.6.RELEASE]
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:163) ~[spring-aop-5.0.6.RELEASE.jar:5.0.6.RELEASE]
        at org.springframework.validation.beanvalidation.MethodValidationInterceptor.invoke(MethodValidationInterceptor.java:112) ~[spring-context-5.0.6.RELEASE.jar:5.0.6.RELEASE]
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:185) ~[spring-aop-5.0.6.RELEASE.jar:5.0.6.RELEASE]
        at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:688) ~[spring-aop-5.0.6.RELEASE.jar:5.0.6.RELEASE]
        at org.apache.pulsar.manager.controller.EnvironmentsController$$EnhancerBySpringCGLIB$$1744d598.addEnvironment(<generated>) ~[pulsar-manager.jar:na]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_312]
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_312]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_312]
        at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_312]

Desktop (please complete the following information):

  • OS: Rocky 8.8
  • K8S:v1.28.4
  • Helm:3.13.3
  • Chart:pulsar-helm-chart-pulsar-3.2.0
  • Image:pulsar 3.1.2 pulsar-manager 0.3.0

Additional context

tls:
  enabled: true
  ca_suffix: ca-tls
  common:
    duration: 26280h
    renewBefore: 360h
    organization:
      - pulsar
    keySize: 4096
    keyAlgorithm: RSA
    keyEncoding: PKCS8
  proxy:
    enabled: true
    cert_name: tls-proxy
  broker:
    enabled: true
    cert_name: tls-broker
  bookie:
    enabled: true
    cert_name: tls-bookie
  zookeeper:
    enabled: true
    cert_name: tls-zookeeper
  autorecovery:
    cert_name: tls-recovery
  toolset:
    cert_name: tls-toolset
  function_instance:
    enabled: false

auth:
  authentication:
    enabled: true
    provider: "jwt"
    jwt:
      usingSecretKey: false
  authorization:
    enabled: true
  superUsers:
    broker: "broker-admin"
    proxy: "proxy-admin"
    client: "admin"
  useProxyRoles: true

certs:
  internal_issuer:
    enabled: true
    type: selfsigning

@lhotari @jeantil @sijie

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant