Commit Graph

31 Commits

Author SHA1 Message Date
Vlad Zolotarov
c26799c9b0 config: enforce the 'stop' value for commit_failure_policy/disk_failure_policy
Fixes #2246

Signed-off-by: Vlad Zolotarov <vladz@scylladb.com>
Message-Id: <1491246164-26612-1-git-send-email-vladz@scylladb.com>
2017-04-04 16:46:36 +03:00
Gleb Natapov
d34f3a0440 batchlog: introduce batch_size_fail_threshold_in_kb option
Add batch_size_fail_threshold_in_kb to prevent huge batch from been
applied and causing troubles. Also do not warn or fail if only one
partition is affected.

Fixes: #2128

Message-Id: <20170309111247.GE8197@scylladb.com>
2017-03-09 12:20:17 +01:00
Avi Kivity
9b113ffd3e config: enable new sharding algorithm for new deployments
Set murmur3_partitioner_ignore_msb_bits to 12 (enabling the new sharding
algorithm), but do this in scylla.yaml rather than the built-in defaults.
This avoids changing the configuration for existing clusters, as their
scylla.yaml file will not be updated during the upgrade.
Message-Id: <20170214123253.3933-1-avi@scylladb.com>
2017-02-22 11:23:12 +01:00
Calle Wilund
ff8f82f21c scylla tls: Add option support for client auth and tls opts
Refs #1813 (fixes scylla part)

Added require_client_auth and priority_string options to
server_encryption_options/client_encryption_options an process them.

Allows TLS method/algo specification. Also enabled enforcing known cert
authentication for both node-to-node and client communication.
2017-02-06 09:45:09 +00:00
Tzach Livyatan
436ce7ae49 conf/scylla.yaml: Move broadcast_rpc_address to the supported section
Fixes #1779

Signed-off-by: Tzach Livyatan <tzach@scylladb.com>
Message-Id: <1483021417-8415-1-git-send-email-tzach@scylladb.com>
2016-12-29 16:24:56 +02:00
Glauber Costa
895e838ac0 get rid of max_memtable_size
After recent changes to the memtable code, there is no reason for us to
uphold a maximum memtable size. Now that we only flush one memtable at a
time anyway, and also have soft limit notifications from the
region_group_reclaimer, we can just set the soft limit to the target
size and let all of that be handled by the dirty_memory_manager.

It does have the added property that we'll be flushing when we globally
reach the soft limit threshold. In conditions in which we have multiple
CF writes fighting for memory, that guarantees that we will start
flushing much earlier than the hard limit.

The threshold is set to 1/4 of dirty memory. While in theory we would
prefer the memtables to go as big as 1/2 of dirty memory, in my
experiments I have found 1/4 to be a better fit, at least for the
moment.

The reason for such behavior is that in situations where we have slow
disks, setting the soft limit to 1/2 of dirty will put us in a situation
in which we may not have finished writing down the memtable when we hit
the limit, and then throttle. When set the threshold to 1/4 of dirty, we
don't throttle at all.

This behavior could potentially be fixed by not doing the full
memtable-based throttling after we do the commitlog throttling, but that
is not something realistic for the moment.

Signed-off-by: Glauber Costa <glauber@scylladb.com>
2016-11-16 21:20:24 -05:00
Asias He
e352570f52 conf: Move initial_token to supported section in scylla.yaml
initial_token is actually supported

Fixes #1686
Message-Id: <465da088696f72a3a7bcf19ba8e4895a0a648e7c.1474512235.git.asias@scylladb.com>
2016-09-23 09:34:05 +03:00
Amnon Heiman
5a4fc9c503 scylla-housekeeping: rename configuration file from conf to cfg
Files with a conf extension are run by the scylla_prepare on the AMI.
The scylla-housekeeping configuration file is not a bash script and
should not be run.

This patch changes its extension to cfg which is more python like.

Signed-off-by: Amnon Heiman <amnon@scylladb.com>
Message-Id: <1470896759-22651-2-git-send-email-amnon@scylladb.com>
2016-08-11 14:44:56 +03:00
Amnon Heiman
63582dd043 Add a config file for housekeeping
The housekeeping.conf is a configuration file for scylla-housekeeping.
By default it will be included in the rpm and state that the
check-version would be run.

If the file is missing, or if check-version is set to false, the check
version operation will not be performed.

Signed-off-by: Amnon Heiman <amnon@scylladb.com>
2016-08-07 13:14:59 +03:00
Avi Kivity
9df4ac53e5 conf: synchronize internode_compression between scylla.yaml and code
Our default is "none", to give reasonable performance, so have scylla.yaml
reflect that.
2016-08-03 16:50:48 +03:00
Amnon Heiman
b18b067b26 Add prometheus API
This patch adds the prometheus API it adds the proto library to the
compilation, adds an optional configuration parameter to change the
prometheus listening port and start the prometheus API in main.

To disable the prometheus API, set its listening port to 0.

Signed-off-by: Amnon Heiman <amnon@scylladb.com>
Message-Id: <1470231628-22831-2-git-send-email-amnon@scylladb.com>
2016-08-03 16:49:42 +03:00
Avi Kivity
e8e00338d1 config: document defragment_memory_on_idle
Message-Id: <1464261650-14136-2-git-send-email-avi@scylladb.com>
2016-05-30 08:39:26 +03:00
Calle Wilund
4c246b5cc3 scylla.yaml: Move authorizer/authenticator options to supported section 2016-04-19 11:49:06 +00:00
Vlad Zolotarov
2daaa00c4f conf: resurrect the important text related to endpoint_snitch configuration
commit d1b44cef1b removed an
important part of a comment related to an 'endpoint_snitch'
configuration. This patch puts it back.

Signed-off-by: Vlad Zolotarov <vladz@cloudius-systems.com>
Message-Id: <1459858934-12005-1-git-send-email-vladz@cloudius-systems.com>
2016-04-05 15:23:13 +03:00
Asias He
d1b44cef1b conf: Drop duplicated section for endpoint_snitch
endpoint_snitch is supported and it is the "Supported Parameters".
Remove the duplicated section in "Unsupported parameters".
Message-Id: <f8260b72558305f9186c011b8f8f452b3b91339b.1459325982.git.asias@scylladb.com>
2016-04-05 08:48:48 +03:00
Calle Wilund
9ef05993ff config: Mark "authenticator" used + update description 2016-01-13 15:35:36 +00:00
Calle Wilund
7d7d592665 batch_statement: Modify verify_batch_size to match current origin
Fixes #614

* Use warning threshold from config
* Don't throw exceptions. We're only supposed to warn.
* Try to actually estimate mutation data payload size, not
  number of mutations.
2016-01-12 16:30:31 +00:00
Tzach Livyatan
8a4f7e211b Add REST API server ip:port parameters to scylla.yaml
api_port and api_address are already valid configuration options.
Adding them to scylla.yaml, let user know they exists.

solve issue #704

Signed-off-by: Tzach Livyatan <tzach@cloudius-systems.com>
Message-Id: <1452527028-13724-1-git-send-email-tzach@cloudius-systems.com>
2016-01-11 18:00:48 +02:00
Avi Kivity
c26689f325 init: bail out if running not on an XFS filesystem
Allow an override via '--developer-mode true', and use it in
the docker setup, since that cannot be expected to use XFS.

Fixes #658.
2015-12-30 10:56:21 +02:00
Calle Wilund
d8b2581a07 scylla.conf: Update client_encryption_options with scylla syntax
Using certificate+key directly
2015-12-28 10:13:48 +00:00
Calle Wilund
5f003f9284 scylla.conf: Modify server_encryption_options section
Describe scylla version of option.

Note, for test usage, the below should be workable:

server_encryption_options:
    internode_encryption: all
    certificate: seastar/tests/test.crt
    truststore: seastar/tests/catest.pem
    keyfile: seastar/tests/test.key

Since the seastar test suite contains a snakeoil cert + trust
combo
2015-12-28 10:10:35 +00:00
Glauber Costa
fe2b928a3f change defaults for commitlog maximum size
arbitrary 8G -> all_memory.

Signed-off-by: Glauber Costa <glommer@scylladb.com>
2015-11-15 10:29:23 +02:00
Glauber Costa
00c12319f1 config: change type for commitlog maximum size config option
This patch substitutes uint64_t for uint32_t as the type for
commitlog_total_space_in_mb.  Moving to 64 is not strictly needed, since even a
signed 32-bit type would allow us to easily handle 2TB. But since we store that
in the commitlog as a 64-bit value, let's match it.

Moving from unsigned to signed, however, allow us to represent negative
numbers.  With that in place, we can change the semantics of the value
slightly, so to allow a negative number to mean "all memory".

The reason behind this, is that the default value "8GB", is an artifact of the
JVM.  We don't need that, and in many-shards configuration, each shard flushes
the commitlog way too often, since 8GB / many_shards = small_number.

8GB also happens to be a popular heap size for C* in the JVM. For us, we would
like to equate that (at least) with the amount of memory. The problem is how to
do that without introducing new options or changing the semantics of existing
options too radically.

The proposed solution will allow us to still parse C* yaml files, since those
will always have positive numbers, while introducing our own defaults.

Signed-off-by: Glauber Costa <glommer@scylladb.com>
2015-11-15 10:29:23 +02:00
Takuya ASADA
63e262e507 correct permission of cassandra-rackdc.properties
Signed-off-by: Takuya ASADA <syuu@scylladb.com>
2015-11-15 15:03:02 +09:00
Vlad Zolotarov
1d63ec4143 conf: added cassandra-rackdc.properties
This is a configuration file used by GossipingPropertyFileSnitch and
EC2SnitchXXX snitches family.

Signed-off-by: Vlad Zolotarov <vladz@cloudius-systems.com>
2015-10-08 20:57:20 +03:00
Raphael S. Carvalho
4d31e08299 conf: reenable partitioner in scylla.yaml
It's needed for compaction_delete_test dtest.
Otherwise, it will fail with:

Missing directive: partitioner
Fatal configuration error; unable to start. See log for stacktrace.

FAIL

======================================================================
FAIL: compaction_delete_test (compaction_test.TestCompaction_with_SizeTieredCompactionStrategy)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/data/urchin_world/urchin-dtest/compaction_test.py", line 50, in compaction_delete_test
    self.assertEqual(numfound, 10)
AssertionError: 0 != 10

Signed-off-by: Raphael S. Carvalho <raphaelsc@cloudius-systems.com>
2015-09-19 10:04:05 +03:00
Calle Wilund
ac6ebc0c14 scylla.yaml: Move supported options to supported and comment out rest
Fixes #350
2015-09-16 15:43:33 +03:00
Takuya ASADA
a49aee5083 dist: drop --datadir and --commitlog-directory, set /var/lib/scylla as default in scylla.yaml
Signed-off-by: Takuya ASADA <syuu@cloudius-systems.com>
2015-09-07 22:53:28 +00:00
Tzach Livyatan
dc73bb704b Rearrange scylla.yaml to supported and not supported segments
This patch rearrange scylla.yaml, without adding or omitting parameters, to two segments:
1. Supported parameters
2. Not supported parameters: saved for future use or backward compatibility

Signed-off-by: Tzach Livyatan <tzach@cloudius-systems.com>
2015-08-16 20:35:03 +03:00
Shlomi Livne
7edd1da287 Updates to allign with scylla
The are additional items that need to be updated and aligned:
token-vnodes, snitches, save_cached etc.

Signed-off-by: Shlomi Livne <shlomi@cloudius-systems.com>
2015-07-30 11:32:09 +03:00
Shlomi Livne
37ef045d55 Initial yaml taken from Origin 2.1.8
Signed-off-by: Shlomi Livne <shlomi@cloudius-systems.com>
2015-07-30 11:31:41 +03:00