initial playbook and roles for beaker virthosts
This commit is contained in:
parent
8ca6476563
commit
76c06c004f
5 changed files with 70 additions and 1 deletions
7
inventory/group_vars/beaker-virthosts
Normal file
7
inventory/group_vars/beaker-virthosts
Normal file
|
@ -0,0 +1,7 @@
|
||||||
|
---
|
||||||
|
virthost: true
|
||||||
|
nrpe_procs_warn: 900
|
||||||
|
nrpe_procs_crit: 1000
|
||||||
|
|
||||||
|
libvirt_remote_pubkey: 'ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAsxg20+vmLTt/U23x6yBtxU6N2Ool8ddlC5TFwr3FktCM7hcxkQ/funJ3VD5v9iN7Qg09g2YsPaPTfvmOPOP4bzX+/Fk8vJJb5nVg++XbS80Uw62eofr8g68ZPf6IWLEBiZ8/hmumK3TxTmsj/jn17bZBFTcQL7sB7Q4y7TxODt+5W9/0mJTLXbKoCvV+BCpxEfokx+50vVcX5CxXLHdgrdhPzKHcBHKtX6d2W8xzFj2dCThgAXl5tULYI1xP0BYTOtG+RaTNQWme4JxNlQZB8xbCxN2U+e1NpZl1Hn7Y9MbRL+nLfMIuWNJjYzUTGP3o9m2Tl9RCc2nhuS652rjfcQ== tflink@imagebuilder.qa.fedoraproject.org'
|
||||||
|
libvirt_user: "{{ beaker_libvirt_user }}"
|
|
@ -7,6 +7,9 @@
|
||||||
[beaker]
|
[beaker]
|
||||||
beaker01.qa.fedoraproject.org
|
beaker01.qa.fedoraproject.org
|
||||||
|
|
||||||
|
[beaker-virthosts]
|
||||||
|
qa02.qa.fedoraproject.org
|
||||||
|
|
||||||
[qadevel]
|
[qadevel]
|
||||||
qadevel.qa.fedoraproject.org
|
qadevel.qa.fedoraproject.org
|
||||||
|
|
||||||
|
@ -614,7 +617,6 @@ virthost16.phx2.fedoraproject.org
|
||||||
virthost17.phx2.fedoraproject.org
|
virthost17.phx2.fedoraproject.org
|
||||||
virthost18.phx2.fedoraproject.org
|
virthost18.phx2.fedoraproject.org
|
||||||
qa01.qa.fedoraproject.org
|
qa01.qa.fedoraproject.org
|
||||||
qa02.qa.fedoraproject.org
|
|
||||||
qa03.qa.fedoraproject.org
|
qa03.qa.fedoraproject.org
|
||||||
qa04.qa.fedoraproject.org
|
qa04.qa.fedoraproject.org
|
||||||
qa05.qa.fedoraproject.org
|
qa05.qa.fedoraproject.org
|
||||||
|
|
37
playbooks/groups/beaker-virthosts.yml
Normal file
37
playbooks/groups/beaker-virthosts.yml
Normal file
|
@ -0,0 +1,37 @@
|
||||||
|
# create a new beaker virthost server system
|
||||||
|
# NOTE: should be used with --limit most of the time
|
||||||
|
# NOTE: most of these vars_path come from group_vars/backup_server or from hostvars
|
||||||
|
# This has an extra role that configures the virthost to be used with beaker for
|
||||||
|
# virtual machine clients
|
||||||
|
|
||||||
|
- name: make virthost server system
|
||||||
|
hosts: beaker-virthosts
|
||||||
|
user: root
|
||||||
|
gather_facts: True
|
||||||
|
|
||||||
|
vars_files:
|
||||||
|
- /srv/web/infra/ansible/vars/global.yml
|
||||||
|
- "/srv/private/ansible/vars.yml"
|
||||||
|
- /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml
|
||||||
|
|
||||||
|
roles:
|
||||||
|
- base
|
||||||
|
- rkhunter
|
||||||
|
- { role: denyhosts, when: ansible_distribution_major_version != '7' }
|
||||||
|
- nagios_client
|
||||||
|
- hosts
|
||||||
|
- fas_client
|
||||||
|
- collectd/base
|
||||||
|
- { role: iscsi_client, when: datacenter == "phx2" }
|
||||||
|
- sudo
|
||||||
|
- { role: openvpn/client, when: datacenter != "phx2" }
|
||||||
|
- role: beaker/virthost
|
||||||
|
|
||||||
|
tasks:
|
||||||
|
- include: "{{ tasks }}/yumrepos.yml"
|
||||||
|
- include: "{{ tasks }}/2fa_client.yml"
|
||||||
|
- include: "{{ tasks }}/motd.yml"
|
||||||
|
- include: "{{ tasks }}/virthost.yml"
|
||||||
|
|
||||||
|
handlers:
|
||||||
|
- include: "{{ handlers }}/restart_services.yml"
|
4
roles/beaker/virthost/files/polkit/10-libvirt.rules
Normal file
4
roles/beaker/virthost/files/polkit/10-libvirt.rules
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
polkit.addRule(function (action, subject) {
|
||||||
|
if (action.id == "org.libvirt.unix.manage" && subject.isInGroup("kvm"))
|
||||||
|
return polkit.Result.YES;
|
||||||
|
});
|
19
roles/beaker/virthost/tasks/main.yml
Normal file
19
roles/beaker/virthost/tasks/main.yml
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
- name: add libvirt remote user
|
||||||
|
user:
|
||||||
|
name: "{{ libvirt_user }}"
|
||||||
|
groups: kvm
|
||||||
|
|
||||||
|
- name: add ssh key for libvirt remote user
|
||||||
|
authorized_key:
|
||||||
|
user: "{{ libvirt_user }}"
|
||||||
|
path: /home/{{ libvirtuser }}/.ssh/authorized_keys
|
||||||
|
key: "{{ libvirt_remote_pubkey }}"
|
||||||
|
|
||||||
|
- name: add polkit rule for users in kvm group
|
||||||
|
copy:
|
||||||
|
src: polkit/10-libvirt.rules
|
||||||
|
dest: /etc/polkit-1/rules.d/10-libvirt.rules
|
||||||
|
owner: root
|
||||||
|
group: root
|
||||||
|
mode: 0644
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue