diff --git a/dicos/29_one-master.xml b/dicos/29_one-master.xml index 5c96a67..3b328d7 100644 --- a/dicos/29_one-master.xml +++ b/dicos/29_one-master.xml @@ -4,6 +4,7 @@ + @@ -20,7 +21,6 @@ port_sunstone vnc_proxy_port_sunstone - xmlrpc_port_sunstone @@ -37,14 +37,6 @@ default - - - non - - - 2633 - - sqlite @@ -138,7 +130,6 @@ - Configuration du service XML-RPC Configuration de la base de données Configuration des réseaux de l'orchestrateur Configuration de l'orchestrateur @@ -164,11 +155,6 @@ False - - non - xmlrpc_port_sunstone - - non onesinglenode diff --git a/dicos/30_one-master-ha.xml b/dicos/30_one-master-ha.xml index e56308d..d1330f9 100644 --- a/dicos/30_one-master-ha.xml +++ b/dicos/30_one-master-ha.xml @@ -1,6 +1,13 @@ + + 2633 + + + + one_followers_domain + @@ -10,8 +17,8 @@ - - + + @@ -29,10 +36,10 @@ non Haute disponibilité + sunstone_xmlrpc follower - one_followers_domain one_vip one_vip_mask diff --git a/postservice/30-one-mng b/postservice/30-one-mng index 41fb52b..99018f8 100755 --- a/postservice/30-one-mng +++ b/postservice/30-one-mng @@ -428,14 +428,11 @@ function manage_datastores() } function init_ha() { - onezone show 0 | grep -A 2 ^"HA & FEDERATION SYNC STATUS" | tail -n 1 | grep -q ^" 0 " + # server with index 1 exists if already instanciate + onezone show 0 | grep -A 3 ^"HA & FEDERATION SYNC STATUS" | tail -n 1 | grep -q ^" 1 " if [ ! $? = 0 ]; then - # server 0 not displayed with onezone - SERVER=$(CreoleGet one_master) - DOMAIN=$(CreoleGet nom_domaine_machine) FOLLOWER=$(CreoleGet one_followers_domain) - onezone server-add 0 --name $SERVER --rpc http://$DOMAIN:2633/RPC2 - for $follower in $FOLLOWER; do + for follower in $FOLLOWER; do onezone server-add 0 --name $follower --rpc http://$follower:2633/RPC2 done fi diff --git a/tmpl/oned.conf b/tmpl/oned.conf index c3d5de1..c75861b 100644 --- a/tmpl/oned.conf +++ b/tmpl/oned.conf @@ -78,7 +78,11 @@ SCRIPTS_REMOTE_DIR=/var/tmp/one PORT = 2633 +%if %%one_ha_role == 'oui' +LISTEN_ADDRESS = %%adresse_ip_eth0 +%else LISTEN_ADDRESS = "127.0.0.1" +%end if %if %%one_database_type == "sqlite" DB = [ BACKEND = "sqlite" ] diff --git a/tmpl/sched.conf b/tmpl/sched.conf new file mode 100644 index 0000000..202ad8e --- /dev/null +++ b/tmpl/sched.conf @@ -0,0 +1,110 @@ +#******************************************************************************* +# OpenNebula Configuration file +#******************************************************************************* + +#******************************************************************************* +# Daemon configuration attributes +#------------------------------------------------------------------------------- +# MESSAGE_SIZE: Buffer size in bytes for XML-RPC responses. +# +# XMLRPC_TIMEOUT: Seconds to timeout XML-RPC calls to oned +# +# ONE_XMLRPC: URL to connect to the OpenNebula daemon (oned) +# +# SCHED_INTERVAL: Seconds between two scheduling actions +# +# MAX_VM: Maximum number of Virtual Machines scheduled in each scheduling +# action. Use 0 to schedule all pending VMs each time. +# +# MAX_DISPATCH: Maximum number of Virtual Machines actually dispatched to a +# host in each scheduling action +# +# MAX_HOST: Maximum number of Virtual Machines dispatched to a given host in +# each scheduling action +# +# LIVE_RESCHEDS: Perform live (1) or cold migrations (0) when rescheduling a VM +# +# DEFAULT_SCHED: Definition of the default scheduling algorithm +# - policy: +# 0 = Packing. Heuristic that minimizes the number of hosts in use by +# packing the VMs in the hosts to reduce VM fragmentation +# 1 = Striping. Heuristic that tries to maximize resources available for +# the VMs by spreading the VMs in the hosts +# 2 = Load-aware. Heuristic that tries to maximize resources available for +# the VMs by using those nodes with less load +# 3 = Custom. +# - rank: Custom arithmetic expression to rank suitable hosts based in their +# attributes +# 4 = Fixed. Hosts will be ranked according to the PRIORITY attribute found +# in the Host or Cluster template. +# +# DEFAULT_DS_SCHED: Definition of the default storage scheduling algorithm +# - policy: +# 0 = Packing. Tries to optimize storage usage by selecting the DS with +# less free space +# 1 = Striping. Tries to optimize I/O by distributing the VMs across +# datastores. +# 2 = Custom. +# - rank: Custom arithmetic exprission to rank suitable datastores based on +# their attributes +# 3 = Fixed. Datastores will be ranked according to the PRIORITY attribute +# found in the Datastore template. +# +# +# LOG: Configuration for the logging system +# - system: defines the logging system: +# file to log in the sched.log file +# syslog to use the syslog facilities +# - debug_level: +# 0 = ERROR +# 1 = WARNING +# 2 = INFO +# 3 = DEBUG Includes general scheduling information (default) +# 4 = DDEBUG Includes time taken for each step +# 5 = DDDEBUG Includes detailed information about the scheduling +# decision, such as VM requirements, Host ranking for +# each VM, etc. This will impact the performance +# +# MEMORY_SYSTEM_DS_SCALE: This factor scales the VM usage of the system DS with +# the memory size. This factor can be use to make the scheduler consider the +# overhead of checkpoint files: +# system_ds_usage = system_ds_usage + memory_system_ds_scale * memory +# +#******************************************************************************* + +MESSAGE_SIZE = 1073741824 +TIMEOUT = 60 + +%if %%one_ha_role == 'oui' +ONE_XMLRPC = "http://%%adresse_ip_eth0:2633/RPC2" +%else +ONE_XMLRPC = "http://localhost:2633/RPC2" +%end if + +SCHED_INTERVAL = 30 + +MAX_VM = 5000 +MAX_DISPATCH = 30 +MAX_HOST = 1 + +LIVE_RESCHEDS = 0 + +MEMORY_SYSTEM_DS_SCALE = 0 + +DEFAULT_SCHED = [ + policy = 1 +] + +DEFAULT_DS_SCHED = [ + policy = 1 +] + +#DEFAULT_SCHED = [ +# policy = 3, +# rank = "- (RUNNING_VMS * 50 + FREE_CPU)" +#] + +LOG = [ + system = "file", + debug_level = 3 +]