如何在 Stargate 容器中启动 CDC 代理?

问题描述 投票:0回答:1

我正在尝试为 Datastax CDC 构建集成测试。我正在尝试按照 here 的说明创建运行 CDC Java agent 的容器化 Stargate 实例。我正在使用以下 docker 文件:

FROM stargateio/coordinator-4_0:v2

ENV CLUSTER_NAME="test"
ENV CLUSTER_VERSION="4.0"
ENV DEVELOPER_MODE="true"
ENV ENABLE_AUTH="true"

RUN (curl -L https://github.com/datastax/cdc-apache-cassandra/releases/download/v2.2.9/agent-c4-2.2.9-all.jar --output agent-c4-2.2.9-all.jar)
ENV JAVA_OPTS="$JAVA_OPTS -javaagent:agent-c4-2.2.9-all.jar"

我正在使用

JAVA_OPTS
因为
JVM_EXTRA_OPTS
似乎没有效果。 Stargate 将这些插入 start 命令。我收到这个错误:

Using environment for config
2023-05-18T20:53:28.708821506Z Running java -server -javaagent:agent-c4-2.2.9-all.jar -Dcassandra.libjemalloc=/usr/lib/aarch64-linux-gnu/libjemalloc.so.2 -Dstargate.libdir=./stargate-lib -Djava.awt.headless=true -jar ./stargate-lib/stargate-starter-2.0.13.jar --cluster-name test --cluster-version 4.0 --listen 172.17.0.2 --enable-auth --developer-mode
2023-05-18T20:53:28.771770673Z SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
2023-05-18T20:53:28.771806548Z SLF4J: Defaulting to no-operation (NOP) logger implementation
2023-05-18T20:53:28.771810090Z SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
2023-05-18T20:53:28.773310423Z Exception in thread "main" java.lang.reflect.InvocationTargetException
2023-05-18T20:53:28.773331381Z  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
2023-05-18T20:53:28.773333715Z  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
2023-05-18T20:53:28.773336006Z  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
2023-05-18T20:53:28.773337756Z  at java.lang.reflect.Method.invoke(Method.java:498)
2023-05-18T20:53:28.773339298Z  at sun.instrument.InstrumentationImpl.loadClassAndStartAgent(InstrumentationImpl.java:386)
2023-05-18T20:53:28.773341298Z  at sun.instrument.InstrumentationImpl.loadClassAndCallPremain(InstrumentationImpl.java:401)
2023-05-18T20:53:28.773343131Z Caused by: java.lang.NoClassDefFoundError: org/apache/cassandra/config/DatabaseDescriptor
2023-05-18T20:53:28.773344881Z  at com.datastax.oss.cdc.agent.Agent.main(Agent.java:49)
2023-05-18T20:53:28.773346631Z  at com.datastax.oss.cdc.agent.Agent.premain(Agent.java:31)
2023-05-18T20:53:28.773348715Z  ... 6 more
2023-05-18T20:53:28.773350340Z Caused by: java.lang.ClassNotFoundException: org.apache.cassandra.config.DatabaseDescriptor
2023-05-18T20:53:28.773352090Z  at java.net.URLClassLoader.findClass(URLClassLoader.java:387)
2023-05-18T20:53:28.773353798Z  at java.lang.ClassLoader.loadClass(ClassLoader.java:418)
2023-05-18T20:53:28.773355465Z  at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:352)
2023-05-18T20:53:28.773357131Z  at java.lang.ClassLoader.loadClass(ClassLoader.java:351)
2023-05-18T20:53:28.773358756Z  ... 8 more
2023-05-18T20:53:28.773360340Z FATAL ERROR in native method: processing of -javaagent failed

我试过下载 Cassandra

.jar
文件并将它们添加到类路径(如 this question 中所述)无济于事。我该如何解决这个错误?

java cassandra datastax datastax-astra stargate-oss
1个回答
0
投票

看起来我们以前没有尝试过,所以我们没有一个可以工作的例子给你看。

我们正在研究它,并将尝试在接下来的几天内让它发挥作用。一旦我有什么要报告的,我会发布更新。干杯!

© www.soinside.com 2019 - 2024. All rights reserved.