diff options
Diffstat (limited to 'playbooks/libvirt')
21 files changed, 0 insertions, 661 deletions
diff --git a/playbooks/libvirt/README.md b/playbooks/libvirt/README.md deleted file mode 100644 index 3ce46a76f..000000000 --- a/playbooks/libvirt/README.md +++ /dev/null @@ -1,4 +0,0 @@ -# libvirt playbooks - -This playbook directory is meant to be driven by [`bin/cluster`](../../bin), -which is community supported and most use is considered deprecated. diff --git a/playbooks/libvirt/openshift-cluster/cluster_hosts.yml b/playbooks/libvirt/openshift-cluster/cluster_hosts.yml deleted file mode 100644 index e5f41382b..000000000 --- a/playbooks/libvirt/openshift-cluster/cluster_hosts.yml +++ /dev/null @@ -1,25 +0,0 @@ ---- -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_new_etcd_hosts: "{{ g_all_hosts | intersect(groups['tag_host-type-new_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_glusterfs_hosts: "{{ g_all_hosts | intersect(groups['tag_host-type-glusterfs'] | default([])) }}" - -g_master_hosts: "{{ g_all_hosts | intersect(groups['tag_host-type-master'] | default([])) }}" - -g_new_master_hosts: "{{ g_all_hosts | intersect(groups['tag_host-type-new-master'] | default([])) }}" - -g_node_hosts: "{{ g_all_hosts | intersect(groups['tag_host-type-node'] | default([])) }}" - -g_new_node_hosts: "{{ g_all_hosts | intersect(groups['tag_host-type-new-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/libvirt/openshift-cluster/config.yml b/playbooks/libvirt/openshift-cluster/config.yml deleted file mode 100644 index 569e00da2..000000000 --- a/playbooks/libvirt/openshift-cluster/config.yml +++ /dev/null @@ -1,39 +0,0 @@ ---- -# TODO: need to figure out a plan for setting hostname, currently the default -# is localhost, so no hostname value (or public_hostname) value is getting -# assigned - -- include: ../../common/openshift-cluster/std_include.yml - -- hosts: localhost -  gather_facts: no -  tasks: -  - include_vars: vars.yml -  - include_vars: cluster_hosts.yml -  - add_host: -      name: "{{ item }}" -      groups: l_oo_all_hosts -    with_items: "{{ g_all_hosts | default([]) }}" - -- hosts: l_oo_all_hosts -  gather_facts: no -  tasks: -  - include_vars: vars.yml -  - include_vars: cluster_hosts.yml - -- include: ../../common/openshift-cluster/config.yml -  vars: -    g_ssh_user: "{{ deployment_vars[deployment_type].ssh_user }}" -    g_sudo: "{{ deployment_vars[deployment_type].become }}" -    g_nodeonmaster: true -    openshift_cluster_id: "{{ cluster_id }}" -    openshift_debug_level: "{{ debug_level }}" -    openshift_deployment_type: "{{ deployment_type }}" -    openshift_hosted_registry_selector: 'type=infra' -    openshift_hosted_router_selector: 'type=infra' -    openshift_master_cluster_method: 'native' -    openshift_use_openshift_sdn: "{{ lookup('oo_option', 'use_openshift_sdn') }}" -    os_sdn_network_plugin_name: "{{ lookup('oo_option', 'sdn_network_plugin_name') }}" -    openshift_use_flannel: "{{ lookup('oo_option', 'use_flannel') }}" -    openshift_use_calico: "{{ lookup('oo_option', 'use_calico') }}" -    openshift_use_fluentd: "{{ lookup('oo_option', 'use_fluentd') }}" diff --git a/playbooks/libvirt/openshift-cluster/filter_plugins b/playbooks/libvirt/openshift-cluster/filter_plugins deleted file mode 120000 index 99a95e4ca..000000000 --- a/playbooks/libvirt/openshift-cluster/filter_plugins +++ /dev/null @@ -1 +0,0 @@ -../../../filter_plugins
\ No newline at end of file diff --git a/playbooks/libvirt/openshift-cluster/launch.yml b/playbooks/libvirt/openshift-cluster/launch.yml deleted file mode 100644 index 2475b9d6b..000000000 --- a/playbooks/libvirt/openshift-cluster/launch.yml +++ /dev/null @@ -1,57 +0,0 @@ ---- -- name: Launch instance(s) -  hosts: localhost -  become: no -  connection: local -  gather_facts: no -  vars_files: -  - vars.yml -  vars: -    image_url: "{{ deployment_vars[deployment_type].image.url }}" -    image_sha256: "{{ deployment_vars[deployment_type].image.sha256 }}" -    image_name: "{{ deployment_vars[deployment_type].image.name }}" -    image_compression: "{{ deployment_vars[deployment_type].image.compression }}" -  tasks: -  - include: tasks/configure_libvirt.yml - -  - include: ../../common/openshift-cluster/tasks/set_etcd_launch_facts.yml -  - include: tasks/launch_instances.yml -    vars: -      instances: "{{ etcd_names }}" -      cluster: "{{ cluster_id }}" -      type: "{{ k8s_type }}" -      g_sub_host_type: "default" - -  - include: ../../common/openshift-cluster/tasks/set_master_launch_facts.yml -  - include: tasks/launch_instances.yml -    vars: -      instances: "{{ master_names }}" -      cluster: "{{ cluster_id }}" -      type: "{{ k8s_type }}" -      g_sub_host_type: "default" - -  - include: ../../common/openshift-cluster/tasks/set_node_launch_facts.yml -    vars: -      type: "compute" -      count: "{{ num_nodes }}" -  - include: tasks/launch_instances.yml -    vars: -      instances: "{{ node_names }}" -      cluster: "{{ cluster_id }}" -      type: "{{ k8s_type }}" -      g_sub_host_type: "{{ sub_host_type }}" - -  - include: ../../common/openshift-cluster/tasks/set_node_launch_facts.yml -    vars: -      type: "infra" -      count: "{{ num_infra }}" -  - include: tasks/launch_instances.yml -    vars: -      instances: "{{ node_names }}" -      cluster: "{{ cluster_id }}" -      type: "{{ k8s_type }}" -      g_sub_host_type: "{{ sub_host_type }}" - -- include: update.yml - -- include: list.yml diff --git a/playbooks/libvirt/openshift-cluster/list.yml b/playbooks/libvirt/openshift-cluster/list.yml deleted file mode 100644 index 579cd7ac6..000000000 --- a/playbooks/libvirt/openshift-cluster/list.yml +++ /dev/null @@ -1,23 +0,0 @@ ---- -- name: Generate oo_list_hosts group -  hosts: localhost -  become: no -  connection: local -  gather_facts: no -  vars_files: -  - vars.yml -  tasks: -  - set_fact: scratch_group=tag_clusterid-{{ cluster_id }} -    when: cluster_id != '' -  - set_fact: scratch_group=all -    when: cluster_id == '' -  - add_host: -      name: "{{ item }}" -      groups: oo_list_hosts -      ansible_ssh_user: "{{ deployment_vars[deployment_type].ssh_user }}" -      ansible_become: "{{ deployment_vars[deployment_type].become }}" -      oo_public_ipv4: "" -      oo_private_ipv4: "{{ hostvars[item].libvirt_ip_address }}" -    with_items: "{{ groups[scratch_group] | default([]) | difference(['localhost']) }}" -  - debug: -      msg: "{{ hostvars | oo_select_keys(groups[scratch_group] | default([])) | oo_pretty_print_cluster }}" diff --git a/playbooks/libvirt/openshift-cluster/lookup_plugins b/playbooks/libvirt/openshift-cluster/lookup_plugins deleted file mode 120000 index ac79701db..000000000 --- a/playbooks/libvirt/openshift-cluster/lookup_plugins +++ /dev/null @@ -1 +0,0 @@ -../../../lookup_plugins
\ No newline at end of file diff --git a/playbooks/libvirt/openshift-cluster/roles b/playbooks/libvirt/openshift-cluster/roles deleted file mode 120000 index 20c4c58cf..000000000 --- a/playbooks/libvirt/openshift-cluster/roles +++ /dev/null @@ -1 +0,0 @@ -../../../roles
\ No newline at end of file diff --git a/playbooks/libvirt/openshift-cluster/service.yml b/playbooks/libvirt/openshift-cluster/service.yml deleted file mode 100644 index 8bd24a8cf..000000000 --- a/playbooks/libvirt/openshift-cluster/service.yml +++ /dev/null @@ -1,34 +0,0 @@ ---- -# TODO: need to figure out a plan for setting hostname, currently the default -# is localhost, so no hostname value (or public_hostname) value is getting -# assigned - -- name: Call same systemctl command for openshift on all instance(s) -  hosts: localhost -  become: no -  connection: local -  gather_facts: no -  vars_files: -  - vars.yml -  tasks: -  - fail: msg="cluster_id is required to be injected in this playbook" -    when: cluster_id is not defined - -  - name: Evaluate g_service_masters -    add_host: -      name: "{{ item }}" -      ansible_ssh_user: "{{ deployment_vars[deployment_type].ssh_user }}" -      ansible_become: "{{ deployment_vars[deployment_type].become }}" -      groups: g_service_masters -    with_items: "{{ g_master_hosts | default([]) }}" - -  - name: Evaluate g_service_nodes -    add_host: -      name: "{{ item }}" -      ansible_ssh_user: "{{ deployment_vars[deployment_type].ssh_user }}" -      ansible_become: "{{ deployment_vars[deployment_type].become }}" -      groups: g_service_nodes -    with_items: "{{ g_node_hosts | default([]) }}" - -- include: ../../common/openshift-node/service.yml -- include: ../../common/openshift-master/service.yml diff --git a/playbooks/libvirt/openshift-cluster/tasks/configure_libvirt.yml b/playbooks/libvirt/openshift-cluster/tasks/configure_libvirt.yml deleted file mode 100644 index f237c1a60..000000000 --- a/playbooks/libvirt/openshift-cluster/tasks/configure_libvirt.yml +++ /dev/null @@ -1,6 +0,0 @@ ---- -- include: configure_libvirt_storage_pool.yml -  when: libvirt_storage_pool is defined and libvirt_storage_pool_path is defined - -- include: configure_libvirt_network.yml -  when: libvirt_network is defined diff --git a/playbooks/libvirt/openshift-cluster/tasks/configure_libvirt_network.yml b/playbooks/libvirt/openshift-cluster/tasks/configure_libvirt_network.yml deleted file mode 100644 index b42ca83af..000000000 --- a/playbooks/libvirt/openshift-cluster/tasks/configure_libvirt_network.yml +++ /dev/null @@ -1,11 +0,0 @@ ---- -- name: Create the libvirt network for OpenShift -  virt_net: -    name: '{{ libvirt_network }}' -    state: '{{ item }}' -    autostart: 'yes' -    xml: "{{ lookup('template', 'network.xml') }}" -    uri: '{{ libvirt_uri }}' -  with_items: -    - present -    - active diff --git a/playbooks/libvirt/openshift-cluster/tasks/configure_libvirt_storage_pool.yml b/playbooks/libvirt/openshift-cluster/tasks/configure_libvirt_storage_pool.yml deleted file mode 100644 index 8685624ec..000000000 --- a/playbooks/libvirt/openshift-cluster/tasks/configure_libvirt_storage_pool.yml +++ /dev/null @@ -1,30 +0,0 @@ ---- -- name: Create libvirt storage directory for openshift -  file: -    dest: "{{ libvirt_storage_pool_path }}" -    state: directory - -# We need to set permissions on the directory and any items created under the directory, so we need to call the acl module with and without default set. -- acl: -    default: '{{ item.default }}' -    entity: kvm -    etype: group -    name: "{{ libvirt_storage_pool_path }}" -    permissions: '{{ item.permissions }}' -    state: present -  with_items: -    - default: no -      permissions: x -    - default: yes -      permissions: rwx - -- name: Create the libvirt storage pool for OpenShift -  virt_pool: -    name: '{{ libvirt_storage_pool }}' -    state: '{{ item }}' -    autostart: 'yes' -    xml: "{{ lookup('template', 'storage-pool.xml') }}" -    uri: '{{ libvirt_uri }}' -  with_items: -    - present -    - active diff --git a/playbooks/libvirt/openshift-cluster/tasks/launch_instances.yml b/playbooks/libvirt/openshift-cluster/tasks/launch_instances.yml deleted file mode 100644 index 4df86effa..000000000 --- a/playbooks/libvirt/openshift-cluster/tasks/launch_instances.yml +++ /dev/null @@ -1,142 +0,0 @@ ---- -# TODO: Add support for choosing base image based on deployment_type and os -# wanted (os wanted needs support added in bin/cluster with sane defaults: -# fedora/centos for origin, rhel for enterprise) - -# TODO: create a role to encapsulate some of this complexity, possibly also -# create a module to manage the storage tasks, network tasks, and possibly -# even handle the libvirt tasks to set metadata in the domain xml and be able -# to create/query data about vms without having to use xml the python libvirt -# bindings look like a good candidate for this - -- name: Download Base Cloud image -  get_url: -    url: '{{ image_url }}' -    sha256sum: '{{ image_sha256 }}' -    dest: '{{ libvirt_storage_pool_path }}/{{ [image_name, image_compression] | difference([""]) | join(".") }}' -  when: ( lookup("oo_option", "skip_image_download") | default("no", True) | lower ) in ["false", "no"] -  register: downloaded_image - -- name: Uncompress xz compressed base cloud image -  command: 'unxz -kf {{ libvirt_storage_pool_path }}/{{ [image_name, image_compression] | join(".") }}' -  args: -    creates: '{{ libvirt_storage_pool_path }}/{{ image_name }}' -  when: image_compression in ["xz"] and downloaded_image.changed - -- name: Uncompress tgz compressed base cloud image -  command: 'tar zxvf {{ libvirt_storage_pool_path }}/{{ [image_name, image_compression] | join(".") }}' -  args: -    creates: '{{ libvirt_storage_pool_path }}/{{ image_name }}' -  when: image_compression in ["tgz"] and downloaded_image.changed - -- name: Uncompress gzip compressed base cloud image -  command: 'gunzip {{ libvirt_storage_pool_path }}/{{ [image_name, image_compression] | join(".") }}' -  args: -    creates: '{{ libvirt_storage_pool_path }}/{{ image_name }}' -  when: image_compression in ["gz"] and downloaded_image.changed - -- name: Create the cloud-init config drive path -  file: -    dest: '{{ libvirt_storage_pool_path }}/{{ item }}_configdrive/' -    state: directory -  with_items: '{{ instances }}' - -- name: Create the cloud-init config drive files -  template: -    src: '{{ item[1] }}' -    dest: '{{ libvirt_storage_pool_path }}/{{ item[0] }}_configdrive/{{ item[1] }}' -  with_nested: -    - '{{ instances }}' -    - [ user-data, meta-data ] - -- name: Check for genisoimage -  command: which genisoimage -  register: which_genisoimage - -- name: Create the cloud-init config drive -  command: "{{ 'genisoimage' if which_genisoimage.rc == 0 else 'mkisofs' }} -output {{ libvirt_storage_pool_path }}/{{ item }}_cloud-init.iso -volid cidata -joliet -rock user-data meta-data" -  args: -    chdir: "{{ libvirt_storage_pool_path }}/{{ item }}_configdrive/" -    creates: "{{ libvirt_storage_pool_path }}/{{ item }}_cloud-init.iso" -  with_items: '{{ instances }}' - -- name: Refresh the libvirt storage pool for openshift -  command: 'virsh -c {{ libvirt_uri }} pool-refresh {{ libvirt_storage_pool }}' - -- name: Create VM drives -  command: 'virsh -c {{ libvirt_uri }} vol-create-as {{ libvirt_storage_pool }} {{ item }}.qcow2 10G --format qcow2 --backing-vol {{ image_name }} --backing-vol-format qcow2' -  with_items: '{{ instances }}' - -- name: Create VM docker drives -  command: 'virsh -c {{ libvirt_uri }} vol-create-as {{ libvirt_storage_pool }} {{ item }}-docker.qcow2 10G --format qcow2 --allocation 0' -  with_items: '{{ instances }}' - -- name: Create VMs -  virt: -    name: '{{ item }}' -    command: define -    xml: "{{ lookup('template', '../templates/domain.xml') }}" -    uri: '{{ libvirt_uri }}' -  with_items: '{{ instances }}' - -- name: Start VMs -  virt: -    name: '{{ item }}' -    state: running -    uri: '{{ libvirt_uri }}' -  with_items: '{{ instances }}' - -- name: Wait for the VMs to get an IP -  shell: 'virsh -c {{ libvirt_uri }} net-dhcp-leases {{ libvirt_network }} | egrep -c ''{{ instances | join("|") }}''' -  register: nb_allocated_ips -  until: nb_allocated_ips.stdout == '{{ instances | length }}' -  retries: 60 -  delay: 3 -  when: instances | length != 0 - -- name: Collect IP addresses of the VMs -  shell: 'virsh -c {{ libvirt_uri }} net-dhcp-leases {{ libvirt_network }} | awk ''$6 == "{{ item }}" {gsub(/\/.*/, "", $5); print $5}''' -  register: scratch_ip -  with_items: '{{ instances }}' - -- set_fact: -    ips: "{{ scratch_ip.results | default([]) | oo_collect('stdout') }}" - -- set_fact: -    node_label: -      type: "{{ g_sub_host_type }}" -  when: instances | length > 0 and type == "node" - -- set_fact: -    node_label: -      type: "{{ type }}" -  when: instances | length > 0 and type != "node" - -- name: Add new instances -  add_host: -    hostname: '{{ item.0 }}' -    ansible_ssh_host: '{{ item.1 }}' -    ansible_ssh_user: "{{ deployment_vars[deployment_type].ssh_user }}" -    ansible_become: "{{ deployment_vars[deployment_type].become }}" -    groups: "tag_environment-{{ cluster_env }}, tag_host-type-{{ type }}, tag_sub-host-type-{{ g_sub_host_type }}, tag_clusterid-{{ cluster_id }}" -    openshift_node_labels: "{{ node_label }}" -    libvirt_ip_address: "{{ item.1 }}" -  with_together: -    - '{{ instances }}' -    - '{{ ips }}' - -- name: Wait for ssh -  wait_for: -    host: '{{ item }}' -    port: 22 -  with_items: '{{ ips }}' - -- name: Wait for openshift user setup -  command: 'ssh -o StrictHostKeyChecking=no -o PasswordAuthentication=no -o ConnectTimeout=10 -o UserKnownHostsFile=/dev/null openshift@{{ item.1 }} echo openshift user is setup' -  register: result -  until: result.rc == 0 -  retries: 30 -  delay: 1 -  with_together: -    - '{{ instances }}' -    - '{{ ips }}' diff --git a/playbooks/libvirt/openshift-cluster/templates/domain.xml b/playbooks/libvirt/openshift-cluster/templates/domain.xml deleted file mode 100644 index 88504a5f6..000000000 --- a/playbooks/libvirt/openshift-cluster/templates/domain.xml +++ /dev/null @@ -1,65 +0,0 @@ -<domain type='kvm' id='8'> -  <name>{{ item }}</name> -  <memory unit='MiB'>{{ libvirt_instance_memory_mib }}</memory> -  <metadata xmlns:ansible="https://github.com/ansible/ansible"> -    <ansible:tags> -      <ansible:tag>environment-{{ cluster_env }}</ansible:tag> -      <ansible:tag>clusterid-{{ cluster }}</ansible:tag> -      <ansible:tag>host-type-{{ type }}</ansible:tag> -      <ansible:tag>sub-host-type-{{ g_sub_host_type }}</ansible:tag> -    </ansible:tags> -  </metadata> -  <vcpu placement='static'>{{ libvirt_instance_vcpu }}</vcpu> -  <os> -    <type arch='x86_64' machine='pc'>hvm</type> -    <boot dev='hd'/> -  </os> -  <features> -    <acpi/> -    <apic/> -    <pae/> -  </features> -  <cpu mode='host-model'> -    <model fallback='allow'/> -  </cpu> -  <clock offset='utc'> -    <timer name='rtc' tickpolicy='catchup'/> -    <timer name='pit' tickpolicy='delay'/> -    <timer name='hpet' present='no'/> -  </clock> -  <on_poweroff>destroy</on_poweroff> -  <on_reboot>restart</on_reboot> -  <on_crash>restart</on_crash> -  <devices> -    <emulator>/usr/bin/qemu-system-x86_64</emulator> -    <disk type='file' device='disk'> -      <driver name='qemu' type='qcow2' discard='unmap'/> -      <source file='{{ libvirt_storage_pool_path }}/{{ item }}.qcow2'/> -      <target dev='sda' bus='scsi'/> -    </disk> -    <disk type='file' device='disk'> -      <driver name='qemu' type='qcow2' discard='unmap'/> -      <source file='{{ libvirt_storage_pool_path }}/{{ item }}-docker.qcow2'/> -      <target dev='sdb' bus='scsi'/> -    </disk> -    <disk type='file' device='cdrom'> -      <driver name='qemu' type='raw'/> -      <source file='{{ libvirt_storage_pool_path }}/{{ item }}_cloud-init.iso'/> -      <target dev='sdc' bus='scsi'/> -      <readonly/> -    </disk> -    <controller type='scsi' model='virtio-scsi' /> -    <interface type='network'> -      <source network='{{ libvirt_network }}'/> -      <model type='virtio'/> -    </interface> -    <serial type='pty'> -      <target port='0'/> -    </serial> -    <console type='pty'> -      <target type='serial' port='0'/> -    </console> -    <memballoon model='virtio'> -    </memballoon> -  </devices> -</domain> diff --git a/playbooks/libvirt/openshift-cluster/templates/meta-data b/playbooks/libvirt/openshift-cluster/templates/meta-data deleted file mode 100644 index 6b421770d..000000000 --- a/playbooks/libvirt/openshift-cluster/templates/meta-data +++ /dev/null @@ -1,3 +0,0 @@ -instance-id: {{ item[0] }} -hostname: {{ item[0] }} -local-hostname: {{ item[0] }}.example.com diff --git a/playbooks/libvirt/openshift-cluster/templates/network.xml b/playbooks/libvirt/openshift-cluster/templates/network.xml deleted file mode 100644 index 0ce2a8342..000000000 --- a/playbooks/libvirt/openshift-cluster/templates/network.xml +++ /dev/null @@ -1,23 +0,0 @@ -<network> -  <name>{{ libvirt_network }}</name> -  <forward mode='nat'> -    <nat> -      <port start='1024' end='65535'/> -    </nat> -  </forward> -  <!-- TODO: query for first available virbr interface available --> -  <bridge name='virbr3' stp='on' delay='0'/> -  <!-- TODO: make overridable --> -  <domain name='example.com' localOnly='yes' /> -  <dns> -    <!-- TODO: automatically add host entries --> -  </dns> -  <!-- TODO: query for available address space --> -  <ip address='192.168.55.1' netmask='255.255.255.0'> -    <dhcp> -      <range start='192.168.55.2' end='192.168.55.254'/> -      <!-- TODO: add static entries addresses for the hosts to be created --> -    </dhcp> -  </ip> -</network> - diff --git a/playbooks/libvirt/openshift-cluster/templates/storage-pool.xml b/playbooks/libvirt/openshift-cluster/templates/storage-pool.xml deleted file mode 100644 index da139afd0..000000000 --- a/playbooks/libvirt/openshift-cluster/templates/storage-pool.xml +++ /dev/null @@ -1,6 +0,0 @@ -<pool type='dir'> -  <name>{{ libvirt_storage_pool }}</name> -  <target> -    <path>{{ libvirt_storage_pool_path }}</path> -  </target> -</pool> diff --git a/playbooks/libvirt/openshift-cluster/templates/user-data b/playbooks/libvirt/openshift-cluster/templates/user-data deleted file mode 100644 index fbcf7c886..000000000 --- a/playbooks/libvirt/openshift-cluster/templates/user-data +++ /dev/null @@ -1,43 +0,0 @@ -#cloud-config -disable_root: true - -hostname: {{ item[0] }} -fqdn: {{ item[0] }}.example.com - -mounts: -- [ sdb ] - -users: -  - default -  - name: root -    ssh_authorized_keys: -    - {{ lookup('file', '~/.ssh/id_rsa.pub') }} - -system_info: -  default_user: -    name: openshift -    sudo: ["ALL=(ALL) NOPASSWD: ALL"] - -ssh_authorized_keys: -  - {{ lookup('file', '~/.ssh/id_rsa.pub') }} - -write_files: -  - path: /etc/sudoers.d/00-openshift-no-requiretty -    permissions: 440 -    content: | -        Defaults:openshift !requiretty -  - path: /etc/sysconfig/docker-storage-setup -    owner: root:root -    permissions: '0644' -    content: | -      DEVS=/dev/sdb -      VG=docker_vg -      EXTRA_DOCKER_STORAGE_OPTIONS='--storage-opt dm.blkdiscard=true' -  - path: /etc/systemd/system/fstrim.timer.d/hourly.conf -    content: | -      [Timer] -      OnCalendar=hourly - -runcmd: -  - NETWORK_CONFIG=/etc/sysconfig/network-scripts/ifcfg-eth0; if ! grep DHCP_HOSTNAME ${NETWORK_CONFIG}; then echo 'DHCP_HOSTNAME="{{ item[0] }}.example.com"' >> ${NETWORK_CONFIG}; fi; pkill -9 dhclient; service network restart -  - systemctl enable --now fstrim.timer diff --git a/playbooks/libvirt/openshift-cluster/terminate.yml b/playbooks/libvirt/openshift-cluster/terminate.yml deleted file mode 100644 index 8a63d11a5..000000000 --- a/playbooks/libvirt/openshift-cluster/terminate.yml +++ /dev/null @@ -1,70 +0,0 @@ ---- -# TODO: does not handle a non-existent cluster gracefully - -- name: Terminate instance(s) -  hosts: localhost -  become: no -  connection: local -  gather_facts: no -  vars_files: -  - vars.yml -  tasks: -  - set_fact: cluster_group=tag_clusterid-{{ cluster_id }} -  - add_host: -      name: "{{ item }}" -      groups: oo_hosts_to_terminate -      ansible_ssh_user: "{{ deployment_vars[deployment_type].ssh_user }}" -      ansible_become: "{{ deployment_vars[deployment_type].become }}" -    with_items: '{{ groups[cluster_group] | default([]) }}' - -- name: Unsubscribe VMs -  hosts: oo_hosts_to_terminate -  vars_files: -  - vars.yml -  roles: -  - role: rhel_unsubscribe -    when: deployment_type in ['atomic-enterprise', 'enterprise', 'openshift-enterprise'] and -          ansible_distribution == "RedHat" and -          lookup('oo_option', 'rhel_skip_subscription') | default(rhsub_skip, True) | -            default('no', True) | lower in ['no', 'false'] - -- name: Terminate instance(s) -  hosts: localhost -  become: no -  connection: local -  gather_facts: no -  vars_files: -  - vars.yml -  tasks: -  - name: Destroy VMs -    virt: -      name: '{{ item[0] }}' -      command: '{{ item[1] }}' -      uri: '{{ libvirt_uri }}' -    with_nested: -    - "{{ groups['oo_hosts_to_terminate'] }}" -    - [ destroy, undefine ] - -  - name: Delete VM drives -    command: 'virsh -c {{ libvirt_uri }} vol-delete --pool {{ libvirt_storage_pool }} {{ item }}.qcow2' -    args: -      removes: '{{ libvirt_storage_pool_path }}/{{ item }}.qcow2' -    with_items: "{{ groups['oo_hosts_to_terminate'] }}" - -  - name: Delete VM docker drives -    command: 'virsh -c {{ libvirt_uri }} vol-delete --pool {{ libvirt_storage_pool }} {{ item }}-docker.qcow2' -    args: -      removes: '{{ libvirt_storage_pool_path }}/{{ item }}-docker.qcow2' -    with_items: "{{ groups['oo_hosts_to_terminate'] }}" - -  - name: Delete the VM cloud-init image -    file: -      path: '{{ libvirt_storage_pool_path }}/{{ item }}_cloud-init.iso' -      state: absent -    with_items: "{{ groups['oo_hosts_to_terminate'] }}" - -  - name: Remove the cloud-init config directory -    file: -      path: '{{ libvirt_storage_pool_path }}/{{ item }}_configdrive/' -      state: absent -    with_items: "{{ groups['oo_hosts_to_terminate'] }}" diff --git a/playbooks/libvirt/openshift-cluster/update.yml b/playbooks/libvirt/openshift-cluster/update.yml deleted file mode 100644 index a152135fc..000000000 --- a/playbooks/libvirt/openshift-cluster/update.yml +++ /dev/null @@ -1,37 +0,0 @@ ---- -- hosts: localhost -  gather_facts: no -  tasks: -  - include_vars: vars.yml -  - include_vars: cluster_hosts.yml -  - add_host: -      name: "{{ item }}" -      groups: l_oo_all_hosts -    with_items: '{{ g_all_hosts }}' - -- hosts: l_oo_all_hosts -  gather_facts: no -  tasks: -  - include_vars: vars.yml -  - include_vars: cluster_hosts.yml - -- 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: -      name: "{{ item }}" -      groups: oo_hosts_to_update -      ansible_ssh_user: "{{ deployment_vars[deployment_type].ssh_user }}" -      ansible_become: "{{ deployment_vars[deployment_type].become }}" -    with_items: '{{ g_all_hosts | default([]) }}' - -- include: ../../common/openshift-cluster/update_repos_and_packages.yml - -- include: config.yml diff --git a/playbooks/libvirt/openshift-cluster/vars.yml b/playbooks/libvirt/openshift-cluster/vars.yml deleted file mode 100644 index 5156789e7..000000000 --- a/playbooks/libvirt/openshift-cluster/vars.yml +++ /dev/null @@ -1,40 +0,0 @@ ---- -default_pool_path: "{{ lookup('env','HOME') }}/libvirt-storage-pool-openshift-ansible" -libvirt_storage_pool_path: "{{ lookup('oo_option', 'libvirt_storage_pool_path') | default(default_pool_path, True) }}" -libvirt_storage_pool: "{{ lookup('oo_option', 'libvirt_storage_pool') | default('openshift-ansible', True) }}" -libvirt_network: "{{ lookup('oo_option', 'libvirt_network') | default('openshift-ansible', True) }}" -libvirt_instance_memory_mib: "{{ lookup('oo_option', 'libvirt_instance_memory_mib') | default(1024, True) }}" -libvirt_instance_vcpu: "{{ lookup('oo_option', 'libvirt_instance_vcpu') | default(2, True) }}" -libvirt_uri: "{{ lookup('oo_option', 'libvirt_uri') | default('qemu:///system', True) }}" -debug_level: 2 - -# Automatic download of the qcow2 image for RHEL cannot be done directly from the RedHat portal because it requires authentication. -# The default value of image_url for enterprise and openshift-enterprise deployment types below won't work. -deployment_rhel7_ent_base: -  image: -    url: "{{ lookup('oo_option', 'image_url') | -             default('https://access.cdn.redhat.com//content/origin/files/sha256/25/25f880767ec6bf71beb532e17f1c45231640bbfdfbbb1dffb79d2c1b328388e0/rhel-guest-image-7.2-20151102.0.x86_64.qcow2', True) }}" -    name: "{{ lookup('oo_option', 'image_name') | -              default('rhel-guest-image-7.2-20151102.0.x86_64.qcow2', True) }}" -    sha256: "{{ lookup('oo_option', 'image_sha256') | -                default('25f880767ec6bf71beb532e17f1c45231640bbfdfbbb1dffb79d2c1b328388e0', True) }}" -    compression: "" -  ssh_user: openshift -  become: yes - -deployment_vars: -  origin: -    image: -      url: "{{ lookup('oo_option', 'image_url') | -               default('http://cloud.centos.org/centos/7/images/CentOS-7-x86_64-GenericCloud-1602.qcow2.xz', True) }}" -      compression: "{{ lookup('oo_option', 'image_compression') | -                       default('xz', True) }}" -      name: "{{ lookup('oo_option', 'image_name') | -                default('CentOS-7-x86_64-GenericCloud.qcow2', True) }}" -      sha256: "{{ lookup('oo_option', 'image_sha256') | -                  default('dd0f5e610e7c5ffacaca35ed7a78a19142a588f4543da77b61c1fb0d74400471', True) }}" -    ssh_user: openshift -    become: yes -  enterprise: "{{ deployment_rhel7_ent_base }}" -  openshift-enterprise: "{{ deployment_rhel7_ent_base }}" -  atomic-enterprise: "{{ deployment_rhel7_ent_base }}"  | 
