diff options
Diffstat (limited to 'playbooks/gce')
| -rw-r--r-- | playbooks/gce/openshift-cluster/cluster_hosts.yml | 17 | ||||
| -rw-r--r-- | playbooks/gce/openshift-cluster/config.yml | 27 | ||||
| -rw-r--r-- | playbooks/gce/openshift-cluster/join_node.yml | 12 | ||||
| -rw-r--r-- | playbooks/gce/openshift-cluster/launch.yml | 1 | ||||
| -rw-r--r-- | playbooks/gce/openshift-cluster/list.yml | 4 | ||||
| -rw-r--r-- | playbooks/gce/openshift-cluster/service.yml | 9 | ||||
| -rw-r--r-- | playbooks/gce/openshift-cluster/tasks/launch_instances.yml | 4 | ||||
| -rw-r--r-- | playbooks/gce/openshift-cluster/terminate.yml | 5 | ||||
| -rw-r--r-- | playbooks/gce/openshift-cluster/update.yml | 7 | ||||
| -rw-r--r-- | playbooks/gce/openshift-cluster/vars.yml | 19 | ||||
| -rw-r--r-- | playbooks/gce/openshift-cluster/wip.yml | 3 | 
11 files changed, 62 insertions, 46 deletions
| diff --git a/playbooks/gce/openshift-cluster/cluster_hosts.yml b/playbooks/gce/openshift-cluster/cluster_hosts.yml new file mode 100644 index 000000000..15690e3bf --- /dev/null +++ b/playbooks/gce/openshift-cluster/cluster_hosts.yml @@ -0,0 +1,17 @@ +--- +g_all_hosts:     "{{ groups['tag_clusterid-' ~ cluster_id] | default([]) +                    | intersect(groups['tag_environment-' ~ cluster_env] | default([])) }}" + +g_etcd_hosts:    "{{ g_all_hosts | intersect(groups['tag_host-type-etcd'] | default([])) }}" + +g_lb_hosts:      "{{ g_all_hosts | intersect(groups['tag_host-type-lb'] | default([])) }}" + +g_nfs_hosts:     "{{ g_all_hosts | intersect(groups['tag_host-type-nfs'] | default([])) }}" + +g_master_hosts:  "{{ g_all_hosts | intersect(groups['tag_host-type-master'] | default([])) }}" + +g_node_hosts:    "{{ g_all_hosts | intersect(groups['tag_host-type-node'] | default([])) }}" + +g_infra_hosts:   "{{ g_node_hosts | intersect(groups['tag_sub-host-type-infra']) | default([]) }}" + +g_compute_hosts: "{{ g_node_hosts | intersect(groups['tag_sub-host-type-compute']) | default([]) }}" diff --git a/playbooks/gce/openshift-cluster/config.yml b/playbooks/gce/openshift-cluster/config.yml index 745161bcb..84a3f84d4 100644 --- a/playbooks/gce/openshift-cluster/config.yml +++ b/playbooks/gce/openshift-cluster/config.yml @@ -1,30 +1,15 @@  ---  # TODO: fix firewall related bug with GCE and origin, since GCE is overriding  # /etc/sysconfig/iptables - -- hosts: localhost -  gather_facts: no -  vars_files: -  - vars.yml -  tasks: -  - set_fact: -      g_ssh_user_tmp: "{{ deployment_vars[deployment_type].ssh_user }}" -      g_sudo_tmp: "{{ deployment_vars[deployment_type].sudo }}" -      use_sdn: "{{ do_we_use_openshift_sdn }}" -      sdn_plugin: "{{ sdn_network_plugin }}" -  - include: ../../common/openshift-cluster/config.yml +  vars_files: +  - ../../gce/openshift-cluster/vars.yml +  - ../../gce/openshift-cluster/cluster_hosts.yml    vars: -    g_etcd_group: "{{ 'tag_env-host-type-' ~ cluster_id ~ '-openshift-etcd' }}" -    g_lb_group: "{{ 'tag_env-host-type-' ~ cluster_id ~ '-openshift-lb' }}" -    g_masters_group: "{{ 'tag_env-host-type-' ~ cluster_id ~ '-openshift-master' }}" -    g_nodes_group: "{{ 'tag_env-host-type-' ~ cluster_id ~ '-openshift-node' }}" -    g_ssh_user: "{{ hostvars.localhost.g_ssh_user_tmp }}" -    g_sudo: "{{ hostvars.localhost.g_sudo_tmp }}" +    g_ssh_user: "{{ deployment_vars[deployment_type].ssh_user }}" +    g_sudo: "{{ deployment_vars[deployment_type].sudo }}"      g_nodeonmaster: true      openshift_cluster_id: "{{ cluster_id }}" -    openshift_debug_level: 2 +    openshift_debug_level: "{{ debug_level }}"      openshift_deployment_type: "{{ deployment_type }}"      openshift_hostname: "{{ gce_private_ip }}" -    openshift_use_openshift_sdn: "{{ hostvars.localhost.use_sdn  }}" -    os_sdn_network_plugin_name: "{{ hostvars.localhost.sdn_plugin }}" diff --git a/playbooks/gce/openshift-cluster/join_node.yml b/playbooks/gce/openshift-cluster/join_node.yml index 5ae3a8fef..75343dffa 100644 --- a/playbooks/gce/openshift-cluster/join_node.yml +++ b/playbooks/gce/openshift-cluster/join_node.yml @@ -1,9 +1,12 @@  ---  - name: Populate oo_hosts_to_update group    hosts: localhost +  connection: local +  become: no    gather_facts: no    vars_files:    - vars.yml +  - cluster_hosts.yml    tasks:    - name: Evaluate oo_hosts_to_update      add_host: @@ -16,9 +19,12 @@  - name: Populate oo_masters_to_config host group    hosts: localhost +  connection: local +  become: no    gather_facts: no    vars_files:    - vars.yml +  - cluster_hosts.yml    tasks:    - name: Evaluate oo_nodes_to_config      add_host: @@ -29,11 +35,11 @@    - name: Evaluate oo_first_master      add_host: -      name: "{{ groups['tag_env-host-type-' ~ cluster_id ~ '-openshift-master'][0] }}" +      name: "{{ master_hosts | first }}"        ansible_ssh_user: "{{ deployment_vars[deployment_type].ssh_user }}"        ansible_sudo: "{{ deployment_vars[deployment_type].sudo }}"        groups: oo_first_master -    when: "'tag_env-host-type-{{ cluster_id }}-openshift-master' in groups" +    when: master_hosts is defined and master_hosts|length > 0  #- include: config.yml  - include: ../../common/openshift-node/config.yml @@ -42,6 +48,4 @@      openshift_debug_level: 4      openshift_deployment_type: "{{ deployment_type }}"      openshift_hostname: "{{ ansible_default_ipv4.address }}" -    openshift_use_openshift_sdn: true      openshift_node_labels: "{{ lookup('oo_option', 'openshift_node_labels') }} " -    os_sdn_network_plugin_name: "redhat/openshift-ovs-subnet" diff --git a/playbooks/gce/openshift-cluster/launch.yml b/playbooks/gce/openshift-cluster/launch.yml index d6ef57c45..562bf8d29 100644 --- a/playbooks/gce/openshift-cluster/launch.yml +++ b/playbooks/gce/openshift-cluster/launch.yml @@ -2,6 +2,7 @@  - name: Launch instance(s)    hosts: localhost    connection: local +  become: no    gather_facts: no    vars_files:    - vars.yml diff --git a/playbooks/gce/openshift-cluster/list.yml b/playbooks/gce/openshift-cluster/list.yml index 53b2b9a5e..e67685912 100644 --- a/playbooks/gce/openshift-cluster/list.yml +++ b/playbooks/gce/openshift-cluster/list.yml @@ -1,11 +1,13 @@  ---  - name: Generate oo_list_hosts group    hosts: localhost +  connection: local +  become: no    gather_facts: no    vars_files:    - vars.yml    tasks: -  - set_fact: scratch_group=tag_env-{{ cluster_id }} +  - set_fact: scratch_group=tag_clusterid-{{ cluster_id }}      when: cluster_id != ''    - set_fact: scratch_group=all      when: cluster_id == '' diff --git a/playbooks/gce/openshift-cluster/service.yml b/playbooks/gce/openshift-cluster/service.yml index 2d0f2ab95..8925de4cb 100644 --- a/playbooks/gce/openshift-cluster/service.yml +++ b/playbooks/gce/openshift-cluster/service.yml @@ -1,28 +1,29 @@  ---  - name: Call same systemctl command for openshift on all instance(s)    hosts: localhost +  connection: local +  become: no    gather_facts: no    vars_files:    - vars.yml +  - cluster_hosts.yml    tasks:    - fail: msg="cluster_id is required to be injected in this playbook"      when: cluster_id is not defined -  - set_fact: scratch_group=tag_env-host-type-{{ cluster_id }}-openshift-node    - add_host:        name: "{{ item }}"        groups: g_service_nodes        ansible_ssh_user: "{{ deployment_vars[deployment_type].ssh_user | default(ansible_ssh_user, true) }}"        ansible_sudo: "{{ deployment_vars[deployment_type].sudo }}" -    with_items: groups[scratch_group] | default([]) | difference(['localhost']) | difference(groups.status_terminated) +    with_items: "{{ node_hosts | default([]) | difference(['localhost']) | difference(groups.status_terminated) }}" -  - set_fact: scratch_group=tag_env-host-type-{{ cluster_id }}-openshift-master    - add_host:        name: "{{ item }}"        groups: g_service_masters        ansible_ssh_user: "{{ deployment_vars[deployment_type].ssh_user | default(ansible_ssh_user, true) }}"        ansible_sudo: "{{ deployment_vars[deployment_type].sudo }}" -    with_items: groups[scratch_group] | default([]) | difference(['localhost']) | difference(groups.status_terminated) +    with_items: "{{ master_hosts | default([]) | difference(['localhost']) | difference(groups.status_terminated) }}"  - include: ../../common/openshift-node/service.yml  - include: ../../common/openshift-master/service.yml diff --git a/playbooks/gce/openshift-cluster/tasks/launch_instances.yml b/playbooks/gce/openshift-cluster/tasks/launch_instances.yml index de8a75b18..488b62eb9 100644 --- a/playbooks/gce/openshift-cluster/tasks/launch_instances.yml +++ b/playbooks/gce/openshift-cluster/tasks/launch_instances.yml @@ -16,10 +16,10 @@      #service_account_permissions: "datastore,logging-write"      tags:        - created-by-{{ lookup('env', 'LOGNAME') |default(cluster, true) }} -      - env-{{ cluster }} +      - environment-{{ cluster_env }} +      - clusterid-{{ cluster_id }}        - host-type-{{ type }}        - sub-host-type-{{ g_sub_host_type }} -      - env-host-type-{{ cluster }}-openshift-{{ type }}    when: instances |length > 0    register: gce diff --git a/playbooks/gce/openshift-cluster/terminate.yml b/playbooks/gce/openshift-cluster/terminate.yml index e20e0a8bc..faa46c0d6 100644 --- a/playbooks/gce/openshift-cluster/terminate.yml +++ b/playbooks/gce/openshift-cluster/terminate.yml @@ -2,17 +2,17 @@  - name: Terminate instance(s)    hosts: localhost    connection: local +  become: no    gather_facts: no    vars_files:    - vars.yml    tasks: -  - set_fact: scratch_group=tag_env-{{ cluster_id }}    - add_host:        name: "{{ item }}"        groups: oo_hosts_to_terminate        ansible_ssh_user: "{{ deployment_vars[deployment_type].ssh_user | default(ansible_ssh_user, true) }}"        ansible_sudo: "{{ deployment_vars[deployment_type].sudo }}" -    with_items: groups[scratch_group] | default([], true) | difference(['localhost']) | difference(groups.status_terminated | default([], true)) +    with_items: (groups['tag_clusterid-' ~ cluster_id] | default([])) | difference(['localhost'])  - name: Unsubscribe VMs    hosts: oo_hosts_to_terminate @@ -27,6 +27,7 @@  - name: Terminate instances(s)    hosts: localhost +  become: no    connection: local    gather_facts: no    vars_files: diff --git a/playbooks/gce/openshift-cluster/update.yml b/playbooks/gce/openshift-cluster/update.yml index 8096aa654..dadceae58 100644 --- a/playbooks/gce/openshift-cluster/update.yml +++ b/playbooks/gce/openshift-cluster/update.yml @@ -1,9 +1,12 @@  ---  - name: Populate oo_hosts_to_update group    hosts: localhost +  connection: local +  become: no    gather_facts: no    vars_files:    - vars.yml +  - cluster_hosts.yml    tasks:    - name: Evaluate oo_hosts_to_update      add_host: @@ -11,9 +14,7 @@        groups: oo_hosts_to_update        ansible_ssh_user: "{{ deployment_vars[deployment_type].ssh_user | default(ansible_ssh_user, true) }}"        ansible_sudo: "{{ deployment_vars[deployment_type].sudo }}" -    with_items: (groups["tag_env-host-type-{{ cluster_id }}-openshift-master"] | default([])) -                | union(groups["tag_env-host-type-{{ cluster_id }}-openshift-node"] | default([])) -                | union(groups["tag_env-host-type-{{ cluster_id }}-openshift-etcd"] | default([])) +    with_items: "{{ g_all_hosts | default([]) }}"  - include: ../../common/openshift-cluster/update_repos_and_packages.yml diff --git a/playbooks/gce/openshift-cluster/vars.yml b/playbooks/gce/openshift-cluster/vars.yml index a8ce8eb22..f004a9e6b 100644 --- a/playbooks/gce/openshift-cluster/vars.yml +++ b/playbooks/gce/openshift-cluster/vars.yml @@ -1,7 +1,12 @@  --- -do_we_use_openshift_sdn: true -sdn_network_plugin: redhat/openshift-ovs-subnet  -# os_sdn_network_plugin_name can be ovssubnet or multitenant, see https://docs.openshift.org/latest/architecture/additional_concepts/sdn.html#ovssubnet-plugin-operation +debug_level: 2 + +deployment_rhel7_ent_base: +  image: rhel-7 +  machine_type: n1-standard-1 +  ssh_user: +  sudo: yes +  deployment_vars:    origin:      image: preinstalled-slave-50g-v5 @@ -13,8 +18,6 @@ deployment_vars:      machine_type: n1-standard-1      ssh_user: root      sudo: no -  enterprise: -    image: rhel-7 -    machine_type: n1-standard-1 -    ssh_user: -    sudo: yes +  enterprise: "{{ deployment_rhel7_ent_base }}" +  openshift-enterprise: "{{ deployment_rhel7_ent_base }}" +  atomic-enterprise: "{{ deployment_rhel7_ent_base }}" diff --git a/playbooks/gce/openshift-cluster/wip.yml b/playbooks/gce/openshift-cluster/wip.yml index 51a521a6b..0e3757546 100644 --- a/playbooks/gce/openshift-cluster/wip.yml +++ b/playbooks/gce/openshift-cluster/wip.yml @@ -1,6 +1,7 @@  ---  - name: WIP    hosts: localhost +  become: no    connection: local    gather_facts: no    vars_files: @@ -12,7 +13,7 @@        groups: oo_masters_for_deploy        ansible_ssh_user: "{{ deployment_vars[deployment_type].ssh_user | default(ansible_ssh_user, true) }}"        ansible_sudo: "{{ deployment_vars[deployment_type].sudo }}" -    with_items: groups["tag_env-host-type-{{ cluster_id }}-openshift-master"] | default([]) +    with_items: "{{ g_master_hosts | default([]) }}"  - name: Deploy OpenShift Services    hosts: oo_masters_for_deploy | 
