
scylladb/scylla-enterpriseScyllaDB是一款高性能NoSQL数据库系统,完全兼容Apache Cassandra。如果您使用ScyllaDB Enterprise,则需遵守ScyllaDB专有软件许可协议和“评估许可”。
ScyllaDB
!logo
scylla服务器实例console$ docker run --name some-scylla -d scylladb/scylla-enterprise
nodetool工具console$ docker exec -it some-scylla nodetool status Datacenter: datacenter1 ======================= Status=Up/Down |/ State=Normal/Leaving/Joining/Moving -- Address Load Tokens Owns (effective) Host ID Rack UN 172.17.0.2 125.51 KB 256 100.0% c9155121-786d-44f8-8667-a8b915b95665 rack1
cqlsh工具console$ docker exec -it some-scylla cqlsh Connected to Test Cluster at 172.17.0.2:9042. [cqlsh 5.0.1 | Cassandra 2.1.8 | CQL spec 3.2.1 | Native protocol v3] Use HELP for help. cqlsh>
console$ docker run --name some-scylla2 -d scylladb/scylla-enterprise --seeds="$(docker inspect --format='{{ .NetworkSettings.IPAddress }}' some-scylla)"
scylla日志console$ docker logs some-scylla | tail INFO 2016-08-04 06:57:40,836 [shard 5] database - Setting compaction strategy of system_traces.events to SizeTieredCompactionStrategy INFO 2016-08-04 06:57:40,836 [shard 3] database - Setting compaction strategy of system_traces.events to SizeTieredCompactionStrategy INFO 2016-08-04 06:57:40,836 [shard 1] database - Setting compaction strategy of system_traces.events to SizeTieredCompactionStrategy INFO 2016-08-04 06:57:40,836 [shard 2] database - Setting compaction strategy of system_traces.events to SizeTieredCompactionStrategy INFO 2016-08-04 06:57:40,836 [shard 4] database - Setting compaction strategy of system_traces.events to SizeTieredCompactionStrategy INFO 2016-08-04 06:57:40,836 [shard 7] database - Setting compaction strategy of system_traces.events to SizeTieredCompactionStrategy INFO 2016-08-04 06:57:40,837 [shard 6] database - Setting compaction strategy of system_traces.events to SizeTieredCompactionStrategy INFO 2016-08-04 06:57:40,839 [shard 0] database - Schema version changed to fea14d93-9c5a-34f5-9d0e-2e49dcfa747e INFO 2016-08-04 06:57:40,839 [shard 0] storage_service - Starting listening for CQL clients on 172.17.0.2:9042... INFO 2016-08-04 06:57:40,840 [shard 0] storage_service - Thrift server listening on 172.17.0.2:9160 ...
您可以使用Docker卷来提高Scylla的性能。
在主机上创建Scylla数据目录/var/lib/scylla,供Scylla容器存储所有数据:
console$ sudo mkdir -p /var/lib/scylla/data /var/lib/scylla/commitlog
使用Docker的--volume命令行选项启动Scylla,将创建的主机目录挂载为容器中的数据卷,并禁用Scylla的开发者模式,以便在启动Scylla节点前运行I/O调优。
console$ docker run --name some-scylla --volume /var/lib/scylla:/var/lib/scylla -d scylladb/scylla-enterprise --developer-mode=0
Scylla默认使用所有CPU和内存。要为Docker容器配置资源限制,您可以使用“命令行选项”部分中记录的--smp、--memory和--cpuset命令行选项。
如果在同一台机器上运行多个Scylla实例,强烈建议启用--overprovisioned命令行选项,该选项为Scylla提供在超配环境中高效运行的特定优化。
Docker镜像使用supervisord管理Scylla进程。您可以使用以下命令在Docker容器中重启Scylla:
docker exec -it some-scylla supervisorctl restart scylla
Scylla镜像支持许多可传递给docker run命令的命令行选项。
--seeds SEEDS--seeds命令行选项配置Scylla的种子节点。如果未指定--seeds选项,Scylla将使用自身IP地址作为种子。
例如,配置Scylla使用两个种子节点192.168.0.100和192.168.0.200:
console$ docker run --name some-scylla -d scylladb/scylla-enterprise --seeds 192.168.0.100,192.168.0.200
--listen-address ADDR--listen-address命令行选项配置Scylla实例监听客户端连接的IP地址。
例如,配置Scylla使用监听地址10.0.0.5:
console$ docker run --name some-scylla -d scylladb/scylla-enterprise --listen-address 10.0.0.5
--broadcast-address ADDR--broadcast-address命令行选项配置Scylla实例告知集群中其他节点连接的IP地址。
例如,配置Scylla使用广播地址10.0.0.5:
console$ docker run --name some-scylla -d scylladb/scylla-enterprise --broadcast-address 10.0.0.5
--broadcast-rpc-address ADDR--broadcast-rpc-address命令行选项配置Scylla实例告知客户端连接的IP地址。
例如,配置Scylla使用广播RPC地址10.0.0.5:
console$ docker run --name some-scylla -d scylladb/scylla-enterprise --broadcast-rpc-address 10.0.0.5
--smp COUNT--smp命令行选项将Scylla限制为使用COUNT个CPU。但该选项不强制指定特定的CPU位置。如果需要Scylla在特定CPU上运行,请参见--cpuset命令行选项。
例如,将Scylla限制为2个CPU:
console$ docker run --name some-scylla -d scylladb/scylla-enterprise --smp 2
--memory AMOUNT--memory命令行选项限制Scylla最多使用AMOUNT的内存。AMOUNT值支持M(兆字节)和G(千兆字节)单位。
例如,将Scylla限制为4 GB内存:
console$ docker run --name some-scylla -d scylladb/scylla-enterprise --memory 4G
--overprovisioned ENABLE--overprovisioned命令行选项启用或禁用在超配环境中运行Scylla的优化。如果未指定--overprovisioned选项,Scylla默认禁用优化。
例如,启用超配环境运行优化:
console$ docker run --name some-scylla -d scylladb/scylla-enterprise --overprovisioned 1
--cpuset CPUSET--cpuset命令行选项将Scylla限制为仅在CPUSET指定的CPU上运行。CPUSET值可以是单个CPU(如--cpuset 1)、范围(如--cpuset 2-3)、列表(如--cpuset 1,2,5),或后两者的组合(如--cpuset 1-2,5)。
例如,将Scylla限制在物理CPU 0至2和4上运行:
console$ docker run --name some-scylla -d scylladb/scylla-enterprise --cpuset 0-2,4
--developer-mode ENABLE--developer-mode命令行选项启用Scylla的开发者模式,该模式放宽对XFS等的检查,并允许Scylla在不受支持的配置上运行(通常会导致性能不佳)。如果未指定--developer-mode选项,Scylla默认启用开发者模式。生产环境强烈建议禁用开发者模式,以确保Scylla能以最佳性能运行。
例如,禁用开发者模式:
console$ docker run --name some-scylla -d scylladb/scylla-enterprise --developer-mode 0
--experimental ENABLE--experimental命令行选项启用Scylla的实验模式。如果未指定--experimental选项,Scylla默认禁用实验模式。生产环境强烈建议禁用实验模式。
例如,启用实验模式:
console$ docker run --name some-scylla -d scylladb/scylla-enterprise --experimental 1
错误报告请使用Scylla在GitHub上的问题跟踪器。报告错误前请阅读如何报告Scylla问题页面。
如需一般帮助,请参阅Scylla的文档。如需提问和交流,请使用Scylla的邮件列表。
想要解决问题并贡献补丁?我们期待审核并合并您的代码。请参阅Scylla贡献页面。
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务