diff --git a/inventory/group_vars/badges-web b/inventory/group_vars/badges-web new file mode 100644 index 0000000000..10f5180ccf --- /dev/null +++ b/inventory/group_vars/badges-web @@ -0,0 +1,18 @@ +--- +# common items for the releng-* boxes +lvm_size: 20000 +mem_size: 4096 +num_cpus: 2 +ks_url: http://infrastructure.fedoraproject.org/repo/rhel/ks/kvm-rhel-6 +ks_repo: http://infrastructure.fedoraproject.org/repo/rhel/RHEL6-x86_64/ +install_command: /usr/sbin/virt-install -n ${inventory_hostname} -r ${mem_size} + --disk ${volgroup}/${inventory_hostname} + --vcpus=${num_cpus} -l ${ks_repo} -x + "ksdevice=eth0 ks=${ks_url} ip=${eth0_ip} netmask=${nm} + gateway=${gw} dns=${dns} console=tty0 console=ttyS0" + --network=bridge=br0 --autostart --noautoconsole + +# for systems that do not match the above - specify the same parameter in +# the host_vars/$hostname file + +tcp_ports: [ 80 443 ] diff --git a/inventory/group_vars/badges-web-stg b/inventory/group_vars/badges-web-stg new file mode 100644 index 0000000000..0f426ae0d8 --- /dev/null +++ b/inventory/group_vars/badges-web-stg @@ -0,0 +1,18 @@ +--- +# Define resources for this group of hosts here. +lvm_size: 20000 +mem_size: 1024 +num_cpus: 2 +ks_url: http://infrastructure.fedoraproject.org/repo/rhel/ks/kvm-rhel-6 +ks_repo: http://infrastructure.fedoraproject.org/repo/rhel/RHEL6-x86_64/ +install_command: /usr/sbin/virt-install -n ${inventory_hostname} -r ${mem_size} + --disk ${volgroup}/${inventory_hostname} + --vcpus=${num_cpus} -l ${ks_repo} -x + "ksdevice=eth0 ks=${ks_url} ip=${eth0_ip} netmask=${nm} + gateway=${gw} dns=${dns} console=tty0 console=ttyS0" + --network=bridge=br0 --autostart --noautoconsole + +# for systems that do not match the above - specify the same parameter in +# the host_vars/$hostname file + +tcp_ports: [ 80 443 ] diff --git a/inventory/host_vars/badges-web01.stg.phx2.fedoraproject.org b/inventory/host_vars/badges-web01.stg.phx2.fedoraproject.org new file mode 100644 index 0000000000..cd4036c443 --- /dev/null +++ b/inventory/host_vars/badges-web01.stg.phx2.fedoraproject.org @@ -0,0 +1,10 @@ +--- +nm: 255.255.255.0 +gw: 10.5.126.254 +dns: 10.5.126.21 +ks_url: http://10.5.126.23/repo/rhel/ks/kvm-rhel-6 +ks_repo: http://10.5.126.23/repo/rhel/RHEL6-x86_64/ +volgroup: /dev/vg_guests +eth0_ip: 10.5.126.69 +vmhost: virthost12.phx2.fedoraproject.org +datacenter: phx2 diff --git a/inventory/inventory b/inventory/inventory index dd7db007b9..762f8a7e7c 100644 --- a/inventory/inventory +++ b/inventory/inventory @@ -53,6 +53,13 @@ badges-backend01.phx2.fedoraproject.org [badges-backend-stg] badges-backend01.stg.phx2.fedoraproject.org +[badges-web] +badges-web01.phx2.fedoraproject.org +badges-web02.phx2.fedoraproject.org + +[badges-web-stg] +badges-web01.stg.phx2.fedoraproject.org + [bapp] bapp02.phx2.fedoraproject.org @@ -293,6 +300,7 @@ proxy01.stg.phx2.fedoraproject.org value01.stg.phx2.fedoraproject.org openid01.stg.phx2.fedoraproject.org badges-backend01.stg.phx2.fedoraproject.org +badges-web01.stg.phx2.fedoraproject.org [unbound-dns] unbound-ib01.fedoraproject.org diff --git a/playbooks/groups/badges-web.yml b/playbooks/groups/badges-web.yml new file mode 100644 index 0000000000..070d1c970f --- /dev/null +++ b/playbooks/groups/badges-web.yml @@ -0,0 +1,46 @@ +# create a new badges-web server +# NOTE: should be used with --limit most of the time +# NOTE: make sure there is room/space for this server on the vmhost +# NOTE: most of these vars come from group_vars/badges-web* or from hostvars + +- name: make badges-web server + hosts: badges-web;badges-web-stg + user: root + gather_facts: False + + vars_files: + - /srv/web/infra/ansible/vars/global.yml + - ${private}/vars.yml + - ${vars}/${ansible_distribution}.yml + + tasks: + - include: $tasks/virt_instance_create.yml + + handlers: + - include: $handlers/restart_services.yml + +- name: make the box be real + hosts: badges-web;badges-web-stg + user: root + gather_facts: True + + vars_files: + - /srv/web/infra/ansible/vars/global.yml + - ${private}/vars.yml + - ${vars}/${ansible_distribution}.yml + + tasks: + - include: $tasks/hosts.yml + - include: $tasks/yumrepos.yml + - include: $tasks/base.yml + - include: $tasks/fas_client.yml + - include: $tasks/2fa_client.yml + - include: $tasks/motd.yml + - include: $tasks/sudo.yml + - include: $tasks/rkhunter.yml + - include: $tasks/denyhosts.yml + - include: $tasks/nagios_client.yml + - include: $tasks/fedmsg_base.yml + + handlers: + - include: $handlers/restart_services.yml