diff --git a/site-modules/profile/files/multipath/multipathd.service b/site-modules/profile/files/multipath/multipathd.service new file mode 100644 --- /dev/null +++ b/site-modules/profile/files/multipath/multipathd.service @@ -0,0 +1,26 @@ +# Unit overridden by software heritage, to move this service *Before* systemd-udev-settle.service + +[Unit] +Description=Device-Mapper Multipath Device Controller +Wants=systemd-udev-trigger.service systemd-udev-settle.service +Before=iscsi.service iscsid.service lvm2-activation-early.service +Before=local-fs-pre.target blk-availability.service systemd-udev-settle.service +After=multipathd.socket systemd-udev-trigger.service +DefaultDependencies=no +Conflicts=shutdown.target +ConditionKernelCommandLine=!nompath +ConditionKernelCommandLine=!multipath=off + +[Service] +Type=notify +NotifyAccess=main +LimitCORE=infinity +ExecStartPre=-/sbin/modprobe -a scsi_dh_alua scsi_dh_emc scsi_dh_rdac dm-multipath +ExecStart=/sbin/multipathd -d -s +ExecReload=/sbin/multipathd reconfigure +TasksMax=infinity + +[Install] +WantedBy=sysinit.target +Also=multipathd.socket +Alias=multipath-tools.service diff --git a/site-modules/profile/manifests/multipath.pp b/site-modules/profile/manifests/multipath.pp new file mode 100644 --- /dev/null +++ b/site-modules/profile/manifests/multipath.pp @@ -0,0 +1,13 @@ +# Various overrides for multipath setup +class profile::multipath { + $multipath_packages = ['multipath-tools', 'multipath-tools-boot'] + + ::systemd::unit_file {'multipathd.service': + ensure => 'present', + source => 'puppet:///modules/profile/multipath/multipathd.service', + } -> + package {$multipath_packages: + ensure => present + } + } +} diff --git a/site-modules/role/manifests/swh_storage_baremetal.pp b/site-modules/role/manifests/swh_storage_baremetal.pp --- a/site-modules/role/manifests/swh_storage_baremetal.pp +++ b/site-modules/role/manifests/swh_storage_baremetal.pp @@ -1,4 +1,5 @@ class role::swh_storage_baremetal inherits role::swh_storage { include profile::dar::server include profile::megacli + include profile::multipath }