Blame view
decision/templates/experiments/Coordinator.properties
4.63 KB
8146dcf82 first commit |
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 |