如何查找Cassandra启动失败的原因



我试图在Docker中运行Cassandra。以前这很好(不幸的是我使用latest图像)。现在,当我用不同的版本运行compose时,它永远不会成功。有时我在日志中看到创业公司竞争,有时现在。每次都是cassandra exited with code 137。我在日志中找不到错误。我如何诊断问题?

这是我的撰写文件。我尝试在3.0.24,3.11,44.0.1版本之间切换,没有运气。

version: '3'
services:
cassandra:
image: cassandra:3.0.24
container_name: cassandra
ports:
- '7000:7000'
- '9042:9042'
- '9142:9142'
volumes:
- ./cassandra/cassandra-data:/var/lib/cassandra
environment:
- CASSANDRA_SEEDS=cassandra
- CASSANDRA_PASSWORD_SEEDER=yes
- CASSANDRA_PASSWORD=cassandra

networks:
- default-dev-network
networks:
default-dev-network:
external: true

更新下面是一个日志示例。但是每次运行都不一样。

INFO  16:01:43 Node /172.18.0.5 state jump to NORMAL
INFO  16:01:43 Waiting for gossip to settle before accepting client requests...
INFO  16:01:51 No gossip backlog; proceeding
INFO  16:01:51 Netty using native Epoll event loop
INFO  16:01:51 Using Netty Version: [netty-buffer=netty-buffer-4.0.44.Final.452812a, netty-codec=netty-codec-4.0.44.Final.452812a, netty-codec-haproxy=netty-codec-haproxy-4.0.44.Final.452812a, netty-codec-http=netty-codec-http-4.0.44.Final.452812a, netty-codec-socks=netty-codec-socks-4.0.44.Final.452812a, netty-common=netty-common-4.0.44.Final.452812a, netty-handler=netty-handler-4.0.44.Final.452812a, netty-tcnative=netty-tcnative-1.1.33.Fork26.142ecbb, netty-transport=netty-transport-4.0.44.Final.452812a, netty-transport-native-epoll=netty-transport-native-epoll-4.0.44.Final.452812a, netty-transport-rxtx=netty-transport-rxtx-4.0.44.Final.452812a, netty-transport-sctp=netty-transport-sctp-4.0.44.Final.452812a, netty-transport-udt=netty-transport-udt-4.0.44.Final.452812a]
INFO  16:01:51 Starting listening for CQL clients on /0.0.0.0:9042 (unencrypted)...
INFO  16:01:51 Not starting RPC server as requested. Use JMX (StorageService->startRPCServer()) or nodetool (enablethrift) to start it
INFO  16:01:51 Startup complete

原因是内存或CPU问题。添加resources后,它运行,但不是每次都运行。摆弄cpu和内存在某种程度上有帮助,但没有带来可靠的结果。

这是完整的撰写文件

version: '3'
services:
cassandra:
image: cassandra:3.0.24
container_name: cassandra

deploy:
replicas: 1
resources:
limits: 
cpus: '2'
memory: 2G
ports:
- '7000:7000'
- '9042:9042'
- '9142:9142'
volumes:
- ./cassandra/cassandra-data:/var/lib/cassandra
environment:
- CASSANDRA_SEEDS=cassandra
- CASSANDRA_PASSWORD_SEEDER=yes
- CASSANDRA_PASSWORD=cassandra

networks:
- default-dev-network
networks:
default-dev-network:
external: true

最新更新