Coordinator.properties 4.63 KB
   1
   2
   3
   4
   5
   6
   7
   8
   9
  10
  11
  12
  13
  14
  15
  16
  17
  18
  19
  20
  21
  22
  23
  24
  25
  26
  27
  28
  29
  30
  31
  32
  33
  34
  35
  36
  37
  38
  39
  40
  41
  42
  43
  44
  45
  46
  47
  48
  49
  50
  51
  52
  53
  54
  55
  56
  57
  58
  59
  60
  61
  62
  63
  64
  65
  66
  67
  68
  69
  70
  71
  72
  73
  74
  75
  76
  77
  78
  79
  80
  81
  82
  83
  84
  85
  86
  87
  88
  89
  90
  91
  92
  93
  94
  95
  96
  97
  98
  99
 100
 101
 102
 103
 104
 105
 106
 107
 108
 109
 110
 111
 112
 113
 114
 115
 116
 117
 118
 119
 120
 121
 122
 123
 124
 125
 126
 127
 128
 129
 130
 131
 132
 133
 134
 135
 136
 137
 138
 139
 140
[config]
## The installation directory
install_dir = INSTALL_DIR
## The type of API to call the cluster controller
cloud_api_type = ganeti
## The dir that contains the credentials downloaded from Eucalyptus Web frontend
#euca_rc_dir = /root/creds/
## The bucket that contains the emi to use. All dbs are installed in the /opt directory inside the image.
bucket_name = snf-image+cassandra310
## The default size for instances
instance_type = 10000_4_10000
## The name of the cluster
cluster_name = thanos-ganeti
## The template for instance hostnames
hostname_template = ganeti-nodes-
## Are we reconfiguring an existing cluster?
reconfigure = False
## Cluster type (supported types are: HBASE, HBASE92, HBASE94, CASSANDRA,CASSANDRA115,CASSANDRA223, RIAK)
cluster_type = CASSANDRA310
## Temporary database location
db_file = INSTALL_DIR/eMRE.LOGS.tiramola.db
#set logs folder name
logs_folder_name = LOGS
##set the logging level
logging_level=debug

##okeanos configuration
##Private network id (to add created VMs)
network_id = 41098
network_id_2 = 43308
okeanos_compute_public_url = https://cyclades.okeanos.grnet.gr/compute/v2.0
okeanos_token = D77IVpU4BbzO9jJXV_kdeMGo0L5FNSzc1gCQsitFWkA
clients_bucket_name = snf-image+ycsb
clients_instance_type = 10000_2_8000
training_set_name = TRAINING_SET_NAME_VAR
training_set_length = TRAINING_SET_LENGTH
reward_function_name = REWARD_FUNCTION_NAME_VAR

## Prism executable path
prism_file_path = PRISM_PATH_VAR
prism_multi_file_path = PRISM_MULTI_PATH_VAR
prism_output_folder = PRISM_OUTPUT_FOLDER

## model configuration
max_steps = MAXSTEPS
cumulative = CUMULATIVE

##simulation configuration
simulation = SIMULATION_VAR
sim_meas_count = MEAS_COUNT_VAR
iteration = ITERATION_VAR
sim_new_inlambda = PRODUCE_NEW_INLAMBDA_VAR
load_meas_log = LOAD_MEAS_LOG
sim_inlambda_file_path = LOAD_FILE_VAR


##elasticity configuration
## Starting one master and one node originally (min = 2)
initial_cluster_size=INIT_VAR
min_cluster_size=MIN_VAR
## Maximum cluster size (cost considerations)
max_cluster_size=MAX_VAR
## How many nodes to add in each add action
add_nodes = ADD_VAR
## How many nodes to remove in each add action
rem_nodes = REM_VAR
num_of_clusters = CLUSTERS_VAR
gain_punishment = PUNISHMENT
weighted_reward = WEIGHTEDREWARD
latency_threshold = LATENCY_VAR
window_inlambda = WINDOW_VAR
ewma_inlambda = EWMA_VAR
violation_cluster = VIOLATIONCLUSTER
hourly = HOURLY

##attack
attack = ATTACK
transient_counter_limit = TRANSIENTCOUNTER


##policy configuration (only one True at a time)
##policy type (supported types are: RL-TB, MDP-TB, MDP-EB, MDP-EBG, MDP2, MDP3)
policy = POLICY_VAR

##policy case type (supported types are: NOPROB, PROB, RF, RAF)
policy_case = POLICYCASE
accepted_percentage = ACCEPTANCEPERC

spot_prices_db = SPOTPRICEDB

########## BASED ON LAMBDA AND LATENCY ################
## Average max throughput per server
serv_throughput = SERVER_THROUGHPUT_VAR
## Cost function that provides the state transition cost for the FSMDecisionMaker
#trans_cost = 1
## The gain function of staying at a particular state. This in essense is a rate.
#gain = max(0,(( min( max_throughput, inlambda) - max(0, (latency-2000)/1000.0)*max_throughput ) * 0.002 ) - (num_nodes * 0.4) )
## Rigged gain for rebalancing
## Force add nodes
#gain = num_nodes
## Force remove nodes
#gain = -1 * num_nodes

######### BASED ON PERFORMANCE ###############
#gain=throughput/num_nodes
#gain=1.0/num_nodes
gain=GAIN_VAR
trans_cost = 0

########## BASED ON "r3(s)=B×thr−C×|VMs|^2" of Tirmaola_Socc2012_submission ################
#gain = 0.01*throughput
#trans_cost = 0.2*(num_nodes*num_nodes)

########## BASED ON CPU ONLY ################
## Cost function that provides the state transition cost for the FSMDecisionMaker
#trans_cost = ((max_throughput * 0.0001) - (added_nodes * cpu))
## The gain function of staying at a particular state. This in essense is a rate.
#gain = ((num_nodes * cpu ) - (num_nodes * 40))

########## BASED ON LATENCY ################
## Cost function that provides the state transition cost for the FSMDecisionMaker
#trans_cost = ((max_throughput * 0.002 * 0.9) + (added_nodes * 10000 * 0.002))
## The gain function of staying at a particular state. This in essense is a rate.
#gain = ((max_throughput * 0.002) - (num_nodes * 400) + (latency * max_throughput * 0.01))

[thresholds_add]
## Add the thresholds that the Coordinator will monitor and decide whether to add/remove nodes.
## The metrics that follow provide example setup.
#mem_free = low_1000000
#disk_free = low_%10
#load_five = high_0.4
#cpu_idle = low_60
#cpu_wio = low_5
#load_five = high_10

[thresholds_remove]
#mem_free = high_11000000
#load_five = low_1
#cpu_idle = high_85
#load_five = low_0