diff --git a/nixos/modules/services/databases/cassandra.nix b/nixos/modules/services/databases/cassandra.nix index 688938868020..af0c29405c8f 100644 --- a/nixos/modules/services/databases/cassandra.nix +++ b/nixos/modules/services/databases/cassandra.nix @@ -8,6 +8,7 @@ let cassandraConfig = flip recursiveUpdate cfg.extraConfig ({ commitlog_sync = "batch"; commitlog_sync_batch_window_in_ms = 2; + start_native_transport = cfg.allowClients; partitioner = "org.apache.cassandra.dht.Murmur3Partitioner"; endpoint_snitch = "SimpleSnitch"; seed_provider = @@ -162,6 +163,18 @@ in { XML logback configuration for cassandra ''; }; + allowClients = mkOption { + type = types.bool; + default = true; + description = '' + Enables or disables the native transport server (CQL binary protocol). + This server uses the same address as the rpcAddress, + but the port it uses is not rpc_port but + native_transport_port. See the official Cassandra + docs for more information on these variables and set them using + extraConfig. + ''; + }; extraConfig = mkOption { type = types.attrs; default = {};