X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=modules%2Fganeti2%2Fmanifests%2Finit.pp;h=5619d523bd233cc9f51e906d421139be4f7759d3;hb=cee76592045b959cf25e00e54728cc0ac7339752;hp=4838bac3129e3ca865d11a08f2974e9e5f65446c;hpb=056b14839b903856b01908ad8b30679948baad3d;p=mirror%2Fdsa-puppet.git diff --git a/modules/ganeti2/manifests/init.pp b/modules/ganeti2/manifests/init.pp index 4838bac31..5619d523b 100644 --- a/modules/ganeti2/manifests/init.pp +++ b/modules/ganeti2/manifests/init.pp @@ -1,90 +1,44 @@ +# = Class: ganeti2 +# +# Standard ganeti2 config debian.org hosts +# +# == Sample Usage: +# +# include ganeti2 +# class ganeti2 { - package { 'ganeti2': - ensure => installed - } + include ganeti2::params + include ganeti2::firewall - package { 'drbd8-utils': - ensure => installed - } + $drbd = $ganeti2::params::drbd - package { 'ganeti-instance-debootstrap': + package { 'ganeti': ensure => installed } - package { 'ganeti-htools': - ensure => installed - } + site::linux_module { 'tun': } - @ferm::rule { 'dsa-ganeti-noded-v4': - description => 'allow ganeti-noded communication', - rule => 'proto tcp mod state state (NEW) dport (1811) @subchain \'ganeti-noded\' { saddr ($HOST_GANETI_V4) daddr ($HOST_GANETI_V4) ACCEPT; }', - notarule => true, + file { '/etc/cron.hourly/puppet-cleanup-watcher-pause-file': + source => 'puppet:///modules/ganeti2/cleanup-watcher-pause-file', + mode => '0555', } - @ferm::rule { 'dsa-ganeti-confd-v4': - description => 'allow ganeti-confd communication', - rule => 'proto udp mod state state (NEW) dport (1814) @subchain \'ganeti-confd\' { saddr ($HOST_GANETI_V4) daddr ($HOST_GANETI_V4) ACCEPT; }', - notarule => true, - } - - @ferm::rule { 'dsa-ganeti-rapi-v4': - description => 'allow ganeti-rapi communication', - rule => 'proto tcp mod state state (NEW) dport (5080) @subchain \'ganeti-rapi\' { saddr ($HOST_GANETI_V4) daddr ($HOST_GANETI_V4) ACCEPT; }', - notarule => true, - } - - @ferm::rule { 'dsa-ganeti-drbd-v4': - description => 'allow ganeti drbd communication', - rule => 'proto tcp mod state state (NEW) dport (11000:11999) @subchain \'ganeti-drbd\' { saddr ($HOST_GANETI_BACKEND_V4) daddr ($HOST_GANETI_BACKEND_V4) ACCEPT; }', - notarule => true, - } - - @ferm::rule { 'dsa-ganeti-kvm-migration-v4': - description => 'allow ganeti kvm migration ', - rule => 'proto tcp dport 8102 @subchain \'ganeti-kvm-migration\' { saddr ($HOST_GANETI_BACKEND_V4) daddr ($HOST_GANETI_BACKEND_V4) ACCEPT; }', - notarule => true, - } - - @ferm::rule { 'dsa-ganeti-ssh-v4': - description => 'allow ganeti to ssh around', - rule => 'proto tcp dport ssh @subchain \'ganeti-ssh\' { saddr ( $HOST_GANETI_V4 $HOST_GANETI_BACKEND_V4) ACCEPT; }', - notarule => true, - } - - file { - '/etc/ganeti/instance-debootstrap/variants.list': - content => template('ganeti2/instance-debootstrap/variants.list.erb'), - ; - '/etc/ganeti/instance-debootstrap/variants/dsa.conf': - content => template('ganeti2/instance-debootstrap/variants/dsa.conf.erb'), - ; - '/etc/ganeti/instance-debootstrap/hooks/00-dsa-configure-networking': - content => template('ganeti2/instance-debootstrap/hooks/00-dsa-configure-networking.erb'), + if $::debarchitecture == 'arm64' { + file { '/usr/local/bin/qemu-system-aarch64-wrapper': + source => 'puppet:///modules/ganeti2/qemu-system-aarch64-wrapper', mode => '0555', - ; - '/etc/ganeti/instance-debootstrap/hooks/10-dsa-install-extra-packages': - content => template('ganeti2/instance-debootstrap/hooks/10-dsa-install-extra-packages.erb'), - mode => '0555', - ; - '/etc/ganeti/instance-debootstrap/hooks/20-dsa-install-bootloader': - content => template('ganeti2/instance-debootstrap/hooks/20-dsa-install-bootloader.erb'), - mode => '0555', - ; - '/etc/ganeti/instance-debootstrap/hooks/30-dsa-install-ssh-keys': - content => template('ganeti2/instance-debootstrap/hooks/30-dsa-install-ssh-keys.erb'), - mode => '0555', - ; - '/etc/ganeti/instance-debootstrap/hooks/40-dsa-setup-swapfile': - content => template('ganeti2/instance-debootstrap/hooks/40-dsa-setup-swapfile.erb'), + } + } + if $::cluster == 'ganeti.bm.debian.org' { + file { '/usr/local/sbin/crazy-multipath-restart': + source => 'puppet:///modules/ganeti2/crazy-multipath-restart', mode => '0555', - ; - '/etc/ganeti/instance-debootstrap/hooks/clear-root-password': - mode => '0444', - ; - '/etc/ganeti/instance-debootstrap/hooks/xen-hvc0': - mode => '0444', - ; + } + file { '/etc/cron.d/puppet-crazy-multipath-restart': + content => @("EOF"), + */15 * * * * root /usr/local/sbin/crazy-multipath-restart + | EOF + } } - }