Merge "[CI] Slim down Masakari job"

This commit is contained in:
Zuul 2021-07-29 09:57:42 +00:00 committed by Gerrit Code Review
commit 81a0bb8331

View File

@ -1,7 +1,16 @@
# These initial groups are the only groups required to be modified. The # These initial groups are the only groups required to be modified. The
# additional groups are for more control of the environment. # additional groups are for more control of the environment.
# NOTE(yoctozepto): In CI we want to test Masakari HA but not of other services,
# to conserve the resources. Hence, we set Masakari groups to use both
# primary and secondary while the parent group (control) uses only primary.
[control] [control]
{% if scenario == 'monasca' %} {% if scenario == 'masakari' %}
{% for host in hostvars if host in ['primary'] %}
{{ host }} ansible_host={{ hostvars[host]['ansible_host'] }} ansible_user=kolla ansible_ssh_private_key_file={{ ansible_env.HOME ~ '/.ssh/id_rsa_kolla' }}
{% endfor %}
{% elif scenario == 'monasca' %}
{% for host in hostvars if host in ['primary', 'secondary1', 'secondary2'] %} {% for host in hostvars if host in ['primary', 'secondary1', 'secondary2'] %}
{{ host }} ansible_host={{ hostvars[host]['ansible_host'] }} ansible_user=kolla ansible_ssh_private_key_file={{ ansible_env.HOME ~ '/.ssh/id_rsa_kolla' }} {{ host }} ansible_host={{ hostvars[host]['ansible_host'] }} ansible_user=kolla ansible_ssh_private_key_file={{ ansible_env.HOME ~ '/.ssh/id_rsa_kolla' }}
{% endfor %} {% endfor %}
@ -11,21 +20,26 @@
{% endfor %} {% endfor %}
{% endif %} {% endif %}
{% if scenario == 'monasca' %}
[network:children] [network:children]
control control
# NOTE(yoctozepto): Until we are able to isolate network namespaces in k-a,
# we are forced to separate Pacemaker remotes from full members.
# This is not as bad as it sounds, because it would be enforced in
# non-containerised environments anyway.
# In CI we want Pacemaker remotes to run on ternaries (to test multiple remotes).
[compute]
{% if scenario == 'masakari' %}
{% for host in hostvars if host in ['ternary1', 'ternary2'] %}
{{ host }} ansible_host={{ hostvars[host]['ansible_host'] }} ansible_user=kolla ansible_ssh_private_key_file={{ ansible_env.HOME ~ '/.ssh/id_rsa_kolla' }}
{% endfor %}
{% else %} {% else %}
[network]
{% for host in hostvars %} {% for host in hostvars %}
{{ host }} ansible_host={{ hostvars[host]['ansible_host'] }} ansible_user=kolla ansible_ssh_private_key_file={{ ansible_env.HOME ~ '/.ssh/id_rsa_kolla' }} {{ host }} ansible_host={{ hostvars[host]['ansible_host'] }} ansible_user=kolla ansible_ssh_private_key_file={{ ansible_env.HOME ~ '/.ssh/id_rsa_kolla' }}
{% endfor %} {% endfor %}
{% endif %} {% endif %}
[compute]
{% for host in hostvars %}
{{ host }} ansible_host={{ hostvars[host]['ansible_host'] }} ansible_user=kolla ansible_ssh_private_key_file={{ ansible_env.HOME ~ '/.ssh/id_rsa_kolla' }}
{% endfor %}
[storage] [storage]
{% for host in hostvars %} {% for host in hostvars %}
{{ host }} ansible_host={{ hostvars[host]['ansible_host'] }} ansible_user=kolla ansible_ssh_private_key_file={{ ansible_env.HOME ~ '/.ssh/id_rsa_kolla' }} {{ host }} ansible_host={{ hostvars[host]['ansible_host'] }} ansible_user=kolla ansible_ssh_private_key_file={{ ansible_env.HOME ~ '/.ssh/id_rsa_kolla' }}
@ -126,30 +140,20 @@ storage
control control
# NOTE(yoctozepto): Until we are able to isolate network namespaces in k-a, # NOTE(yoctozepto): Until we are able to isolate network namespaces in k-a,
# we are forced to separate remotes from full members. # we are forced to separate Pacemaker remotes from full members.
# This is not as bad as it sounds, because it would be enforced in # This is not as bad as it sounds, because it would be enforced in
# non-containerised environments anyway. # non-containerised environments anyway.
#[hacluster:children] # In CI we want Pacemaker to run on primary and secondary (to test with HA).
#control
[hacluster] [hacluster]
{% for host in hostvars %} {% for host in hostvars %}
{% if 'ternary' not in host %} {% if host in ['primary', 'secondary'] %}
{{ host }} ansible_host={{ hostvars[host]['ansible_host'] }} ansible_user=kolla ansible_ssh_private_key_file={{ ansible_env.HOME ~ '/.ssh/id_rsa_kolla' }} {{ host }} ansible_host={{ hostvars[host]['ansible_host'] }} ansible_user=kolla ansible_ssh_private_key_file={{ ansible_env.HOME ~ '/.ssh/id_rsa_kolla' }}
{% endif %} {% endif %}
{% endfor %} {% endfor %}
# NOTE(yoctozepto): Until we are able to isolate network namespaces in k-a, [hacluster-remote:children]
# we are forced to separate remotes from full members. compute
# This is not as bad as it sounds, because it would be enforced in
# non-containerised environments anyway.
#[hacluster-remote:children]
#compute
[hacluster-remote]
{% for host in hostvars %}
{% if 'ternary' in host %}
{{ host }} ansible_host={{ hostvars[host]['ansible_host'] }} ansible_user=kolla ansible_ssh_private_key_file={{ ansible_env.HOME ~ '/.ssh/id_rsa_kolla' }}
{% endif %}
{% endfor %}
[haproxy:children] [haproxy:children]
network network
@ -786,14 +790,18 @@ elasticsearch
[prometheus-blackbox-exporter:children] [prometheus-blackbox-exporter:children]
monitoring monitoring
# NOTE(yoctozepto): In CI we want to test Masakari HA but not of other services,
# to conserve the resources. Hence, we set Masakari groups to use both
# primary and secondary while the parent group (control) uses only primary.
[masakari-api:children] [masakari-api:children]
control hacluster
[masakari-engine:children] [masakari-engine:children]
control hacluster
[masakari-hostmonitor:children] [masakari-hostmonitor:children]
control hacluster
[masakari-instancemonitor:children] [masakari-instancemonitor:children]
compute compute