mirror of
				https://github.com/k3s-io/kubernetes.git
				synced 2025-11-03 15:25:19 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			241 lines
		
	
	
		
			8.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			241 lines
		
	
	
		
			8.9 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
###########################################################################
 | 
						|
#                             jvm.options                                 #
 | 
						|
#                                                                         #
 | 
						|
# - all flags defined here will be used by cassandra to startup the JVM   #
 | 
						|
# - one flag should be specified per line                                 #
 | 
						|
# - lines that do not start with '-' will be ignored                      #
 | 
						|
# - only static flags are accepted (no variables or parameters)           #
 | 
						|
# - dynamic flags will be appended to these on cassandra-env              #
 | 
						|
###########################################################################
 | 
						|
 | 
						|
######################
 | 
						|
# STARTUP PARAMETERS #
 | 
						|
######################
 | 
						|
 | 
						|
# Uncomment any of the following properties to enable specific startup parameters
 | 
						|
 | 
						|
# In a multi-instance deployment, multiple Cassandra instances will independently assume that all
 | 
						|
# CPU processors are available to it. This setting allows you to specify a smaller set of processors
 | 
						|
# and perhaps have affinity.
 | 
						|
#-Dcassandra.available_processors=number_of_processors
 | 
						|
 | 
						|
# The directory location of the cassandra.yaml file.
 | 
						|
#-Dcassandra.config=directory
 | 
						|
 | 
						|
# Sets the initial partitioner token for a node the first time the node is started.
 | 
						|
#-Dcassandra.initial_token=token
 | 
						|
 | 
						|
# Set to false to start Cassandra on a node but not have the node join the cluster.
 | 
						|
#-Dcassandra.join_ring=true|false
 | 
						|
 | 
						|
# Set to false to clear all gossip state for the node on restart. Use when you have changed node
 | 
						|
# information in cassandra.yaml (such as listen_address).
 | 
						|
#-Dcassandra.load_ring_state=true|false
 | 
						|
 | 
						|
# Enable pluggable metrics reporter. See Pluggable metrics reporting in Cassandra 2.0.2.
 | 
						|
#-Dcassandra.metricsReporterConfigFile=file
 | 
						|
 | 
						|
# Set the port on which the CQL native transport listens for clients. (Default: 9042)
 | 
						|
#-Dcassandra.native_transport_port=port
 | 
						|
 | 
						|
# Overrides the partitioner. (Default: org.apache.cassandra.dht.Murmur3Partitioner)
 | 
						|
#-Dcassandra.partitioner=partitioner
 | 
						|
 | 
						|
# To replace a node that has died, restart a new node in its place specifying the address of the
 | 
						|
# dead node. The new node must not have any data in its data directory, that is, it must be in the
 | 
						|
# same state as before bootstrapping.
 | 
						|
#-Dcassandra.replace_address=listen_address or broadcast_address of dead node
 | 
						|
 | 
						|
# Allow restoring specific tables from an archived commit log.
 | 
						|
#-Dcassandra.replayList=table
 | 
						|
 | 
						|
# Allows overriding of the default RING_DELAY (1000ms), which is the amount of time a node waits
 | 
						|
# before joining the ring.
 | 
						|
#-Dcassandra.ring_delay_ms=ms
 | 
						|
 | 
						|
# Set the port for the Thrift RPC service, which is used for client connections. (Default: 9160)
 | 
						|
#-Dcassandra.rpc_port=port
 | 
						|
 | 
						|
# Set the SSL port for encrypted communication. (Default: 7001)
 | 
						|
#-Dcassandra.ssl_storage_port=port
 | 
						|
 | 
						|
# Enable or disable the native transport server. See start_native_transport in cassandra.yaml.
 | 
						|
# cassandra.start_native_transport=true|false
 | 
						|
 | 
						|
# Enable or disable the Thrift RPC server. (Default: true)
 | 
						|
#-Dcassandra.start_rpc=true/false
 | 
						|
 | 
						|
# Set the port for inter-node communication. (Default: 7000)
 | 
						|
#-Dcassandra.storage_port=port
 | 
						|
 | 
						|
# Set the default location for the trigger JARs. (Default: conf/triggers)
 | 
						|
#-Dcassandra.triggers_dir=directory
 | 
						|
 | 
						|
# For testing new compaction and compression strategies. It allows you to experiment with different
 | 
						|
# strategies and benchmark write performance differences without affecting the production workload.
 | 
						|
#-Dcassandra.write_survey=true
 | 
						|
 | 
						|
# To disable configuration via JMX of auth caches (such as those for credentials, permissions and
 | 
						|
# roles). This will mean those config options can only be set (persistently) in cassandra.yaml
 | 
						|
# and will require a restart for new values to take effect.
 | 
						|
#-Dcassandra.disable_auth_caches_remote_configuration=true
 | 
						|
 | 
						|
########################
 | 
						|
# GENERAL JVM SETTINGS #
 | 
						|
########################
 | 
						|
 | 
						|
# enable assertions.  disabling this in production will give a modest
 | 
						|
# performance benefit (around 5%).
 | 
						|
-ea
 | 
						|
 | 
						|
# enable thread priorities, primarily so we can give periodic tasks
 | 
						|
# a lower priority to avoid interfering with client workload
 | 
						|
-XX:+UseThreadPriorities
 | 
						|
 | 
						|
# allows lowering thread priority without being root on linux - probably
 | 
						|
# not necessary on Windows but doesn't harm anything.
 | 
						|
# see http://tech.stolsvik.com/2010/01/linux-java-thread-priorities-workar
 | 
						|
-XX:ThreadPriorityPolicy=42
 | 
						|
 | 
						|
# Enable heap-dump if there's an OOM
 | 
						|
-XX:+HeapDumpOnOutOfMemoryError
 | 
						|
 | 
						|
# Per-thread stack size.
 | 
						|
-Xss256k
 | 
						|
 | 
						|
# Larger interned string table, for gossip's benefit (CASSANDRA-6410)
 | 
						|
-XX:StringTableSize=1000003
 | 
						|
 | 
						|
# Make sure all memory is faulted and zeroed on startup.
 | 
						|
# This helps prevent soft faults in containers and makes
 | 
						|
# transparent hugepage allocation more effective.
 | 
						|
-XX:+AlwaysPreTouch
 | 
						|
 | 
						|
# Disable biased locking as it does not benefit Cassandra.
 | 
						|
-XX:-UseBiasedLocking
 | 
						|
 | 
						|
# Enable thread-local allocation blocks and allow the JVM to automatically
 | 
						|
# resize them at runtime.
 | 
						|
-XX:+UseTLAB
 | 
						|
-XX:+ResizeTLAB
 | 
						|
 | 
						|
# http://www.evanjones.ca/jvm-mmap-pause.html
 | 
						|
-XX:+PerfDisableSharedMem
 | 
						|
 | 
						|
# Prefer binding to IPv4 network intefaces (when net.ipv6.bindv6only=1). See
 | 
						|
# http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6342561 (short version:
 | 
						|
# comment out this entry to enable IPv6 support).
 | 
						|
-Djava.net.preferIPv4Stack=true
 | 
						|
 | 
						|
### Debug options
 | 
						|
 | 
						|
# uncomment to enable flight recorder
 | 
						|
#-XX:+UnlockCommercialFeatures
 | 
						|
#-XX:+FlightRecorder
 | 
						|
 | 
						|
# uncomment to have Cassandra JVM listen for remote debuggers/profilers on port 1414
 | 
						|
#-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=1414
 | 
						|
 | 
						|
# uncomment to have Cassandra JVM log internal method compilation (developers only)
 | 
						|
#-XX:+UnlockDiagnosticVMOptions
 | 
						|
#-XX:+LogCompilation
 | 
						|
 | 
						|
#################
 | 
						|
# HEAP SETTINGS #
 | 
						|
#################
 | 
						|
 | 
						|
# Heap size is automatically calculated by cassandra-env based on this
 | 
						|
# formula: max(min(1/2 ram, 1024MB), min(1/4 ram, 8GB))
 | 
						|
# That is:
 | 
						|
# - calculate 1/2 ram and cap to 1024MB
 | 
						|
# - calculate 1/4 ram and cap to 8192MB
 | 
						|
# - pick the max
 | 
						|
#
 | 
						|
# For production use you may wish to adjust this for your environment.
 | 
						|
# If that's the case, uncomment the -Xmx and Xms options below to override the
 | 
						|
# automatic calculation of JVM heap memory.
 | 
						|
#
 | 
						|
# It is recommended to set min (-Xms) and max (-Xmx) heap sizes to
 | 
						|
# the same value to avoid stop-the-world GC pauses during resize, and
 | 
						|
# so that we can lock the heap in memory on startup to prevent any
 | 
						|
# of it from being swapped out.
 | 
						|
#-Xms4G
 | 
						|
#-Xmx4G
 | 
						|
 | 
						|
# Young generation size is automatically calculated by cassandra-env
 | 
						|
# based on this formula: min(100 * num_cores, 1/4 * heap size)
 | 
						|
#
 | 
						|
# The main trade-off for the young generation is that the larger it
 | 
						|
# is, the longer GC pause times will be. The shorter it is, the more
 | 
						|
# expensive GC will be (usually).
 | 
						|
#
 | 
						|
# It is not recommended to set the young generation size if using the
 | 
						|
# G1 GC, since that will override the target pause-time goal.
 | 
						|
# More info: http://www.oracle.com/technetwork/articles/java/g1gc-1984535.html
 | 
						|
#
 | 
						|
# The example below assumes a modern 8-core+ machine for decent
 | 
						|
# times. If in doubt, and if you do not particularly want to tweak, go
 | 
						|
# 100 MB per physical CPU core.
 | 
						|
#-Xmn800M
 | 
						|
 | 
						|
#################
 | 
						|
#  GC SETTINGS  #
 | 
						|
#################
 | 
						|
 | 
						|
### CMS Settings
 | 
						|
 | 
						|
#-XX:+UseParNewGC
 | 
						|
#-XX:+UseConcMarkSweepGC
 | 
						|
#-XX:+CMSParallelRemarkEnabled
 | 
						|
#-XX:SurvivorRatio=8
 | 
						|
#-XX:MaxTenuringThreshold=1
 | 
						|
#-XX:CMSInitiatingOccupancyFraction=75
 | 
						|
#-XX:+UseCMSInitiatingOccupancyOnly
 | 
						|
#-XX:CMSWaitDuration=10000
 | 
						|
#-XX:+CMSParallelInitialMarkEnabled
 | 
						|
#-XX:+CMSEdenChunksRecordAlways
 | 
						|
# some JVMs will fill up their heap when accessed via JMX, see CASSANDRA-6541
 | 
						|
#-XX:+CMSClassUnloadingEnabled
 | 
						|
 | 
						|
### G1 Settings (experimental, comment previous section and uncomment section below to enable)
 | 
						|
 | 
						|
## Use the Hotspot garbage-first collector.
 | 
						|
-XX:+UseG1GC
 | 
						|
#
 | 
						|
## Have the JVM do less remembered set work during STW, instead
 | 
						|
## preferring concurrent GC. Reduces p99.9 latency.
 | 
						|
-XX:G1RSetUpdatingPauseTimePercent=5
 | 
						|
#
 | 
						|
## Main G1GC tunable: lowering the pause target will lower throughput and vise versa.
 | 
						|
## 200ms is the JVM default and lowest viable setting
 | 
						|
## 1000ms increases throughput. Keep it smaller than the timeouts in cassandra.yaml.
 | 
						|
#-XX:MaxGCPauseMillis=500
 | 
						|
 | 
						|
## Optional G1 Settings
 | 
						|
 | 
						|
# Save CPU time on large (>= 16GB) heaps by delaying region scanning
 | 
						|
# until the heap is 70% full. The default in Hotspot 8u40 is 40%.
 | 
						|
#-XX:InitiatingHeapOccupancyPercent=70
 | 
						|
 | 
						|
# For systems with > 8 cores, the default ParallelGCThreads is 5/8 the number of logical cores.
 | 
						|
# Otherwise equal to the number of cores when 8 or less.
 | 
						|
# Machines with > 10 cores should try setting these to <= full cores.
 | 
						|
#-XX:ParallelGCThreads=16
 | 
						|
# By default, ConcGCThreads is 1/4 of ParallelGCThreads.
 | 
						|
# Setting both to the same value can reduce STW durations.
 | 
						|
#-XX:ConcGCThreads=16
 | 
						|
 | 
						|
### GC logging options -- uncomment to enable
 | 
						|
 | 
						|
-XX:+PrintGCDetails
 | 
						|
-XX:+PrintGCDateStamps
 | 
						|
-XX:+PrintHeapAtGC
 | 
						|
-XX:+PrintTenuringDistribution
 | 
						|
-XX:+PrintGCApplicationStoppedTime
 | 
						|
-XX:+PrintPromotionFailure
 | 
						|
#-XX:PrintFLSStatistics=1
 | 
						|
#-Xloggc:/var/log/cassandra/gc.log
 | 
						|
-XX:+UseGCLogFileRotation
 | 
						|
-XX:NumberOfGCLogFiles=10
 | 
						|
-XX:GCLogFileSize=10M
 |