chore: migrate media applications (#299)
- migrate media applications to new cephfs pool + incus - enable exporting haproxy - move ceph-client-setup to only apply to non-lxc hosts - ensure unrar is installed for nzbget - updated jellyfin use of data_dir - set lxc instances for jellyfin to use /shared/apps/jellyfin Reviewed-on: https://git.query.consul/unkinben/puppet-prod/pulls/299
This commit is contained in:
parent
1d23fef82e
commit
b3347f9226
@ -61,3 +61,11 @@ profiles::yum::global::repos:
|
||||
baseurl: https://download1.rpmfusion.org/nonfree/el/updates/%{facts.os.release.major}/%{facts.os.architecture}
|
||||
gpgkey: https://download1.rpmfusion.org/nonfree/el/RPM-GPG-KEY-rpmfusion-nonfree-el-%{facts.os.release.major}
|
||||
mirrorlist: absent
|
||||
unkinben:
|
||||
name: unkinben
|
||||
descr: unkinben repository
|
||||
target: /etc/yum.repos.d/unkin.repo
|
||||
baseurl: https://git.query.consul/api/packages/unkinben/rpm/el8
|
||||
gpgkey: https://git.query.consul/api/packages/unkinben/rpm/repository.key
|
||||
gpgcheck: false
|
||||
mirrorlist: absent
|
||||
|
||||
@ -5,6 +5,9 @@ hiera_include:
|
||||
- profiles::media::nzbget
|
||||
- profiles::nginx::ldapauth
|
||||
|
||||
profiles::packages::include:
|
||||
unrar: {}
|
||||
|
||||
# manage nzbget
|
||||
nzbget::params::user: nzbget
|
||||
nzbget::params::group: media
|
||||
|
||||
@ -6,11 +6,5 @@ profiles::packages::include:
|
||||
# disable mlock for vault nodes on lxd/incus
|
||||
vault::disable_mlock: true
|
||||
|
||||
hiera_exclude:
|
||||
# exclude the media profiles which are just cephfs-mount-management
|
||||
- profiles::media::lidarr
|
||||
- profiles::media::nzbget
|
||||
- profiles::media::prowlarr
|
||||
- profiles::media::radarr
|
||||
- profiles::media::readarr
|
||||
- profiles::media::sonarr
|
||||
# manage jellyfin changes
|
||||
profiles::media::jellyfin::data_dir: /shared/apps/jellyfin
|
||||
|
||||
@ -1,9 +1,9 @@
|
||||
# jellyfin params
|
||||
class jellyfin::params (
|
||||
Array[String] $packages = [
|
||||
'jellyfin',
|
||||
'jellyfin-web',
|
||||
'jellyfin-server',
|
||||
'jellyfin-ffmpeg-bin',
|
||||
'SDL2',
|
||||
'ffmpeg',
|
||||
'ffmpeg-devel',
|
||||
|
||||
@ -2,10 +2,10 @@
|
||||
class profiles::media::jellyfin (
|
||||
Stdlib::Absolutepath $media_root = '/shared/media',
|
||||
Stdlib::Absolutepath $data_dir = '/data/jellyfin',
|
||||
Stdlib::Absolutepath $lib_dir = '/data/jellyfin/var/lib',
|
||||
Stdlib::Absolutepath $cache_dir = '/data/jellyfin/var/cache',
|
||||
Stdlib::Absolutepath $config_dir = '/data/jellyfin/etc',
|
||||
Stdlib::Absolutepath $log_dir = '/data/jellyfin/var/log',
|
||||
Stdlib::Absolutepath $lib_dir = "${data_dir}/var/lib",
|
||||
Stdlib::Absolutepath $cache_dir = "${data_dir}/var/cache",
|
||||
Stdlib::Absolutepath $config_dir = "${data_dir}/etc",
|
||||
Stdlib::Absolutepath $log_dir = "${data_dir}/var/log",
|
||||
Stdlib::Absolutepath $ffmpeg_path = '/usr/local/bin/ffmpeg',
|
||||
Stdlib::Absolutepath $sysconfig_file = '/etc/sysconfig/jellyfin',
|
||||
Stdlib::Absolutepath $migration_flag = '/etc/sysconfig/jellyfin_migration_done',
|
||||
|
||||
@ -3,15 +3,16 @@ class profiles::media::lidarr (
|
||||
Stdlib::Absolutepath $media_root = '/shared/media',
|
||||
) {
|
||||
|
||||
include profiles::ceph::client
|
||||
|
||||
# manage the sharedvol
|
||||
profiles::storage::cephfsvol {"${::facts['networking']['fqdn']}_media":
|
||||
mount => $media_root,
|
||||
keyring => '/etc/ceph/ceph.client.media.keyring',
|
||||
cephfs_name => 'media',
|
||||
cephfs_fs => 'mediafs',
|
||||
require => Profiles::Ceph::Keyring['media'],
|
||||
if $facts['virtual'] != 'lxc' {
|
||||
# manage the sharedvol
|
||||
include profiles::ceph::client
|
||||
profiles::storage::cephfsvol {"${::facts['networking']['fqdn']}_media":
|
||||
mount => $media_root,
|
||||
keyring => '/etc/ceph/ceph.client.media.keyring',
|
||||
cephfs_name => 'media',
|
||||
cephfs_fs => 'mediafs',
|
||||
require => Profiles::Ceph::Keyring['media'],
|
||||
}
|
||||
}
|
||||
|
||||
# export haproxy balancemember
|
||||
|
||||
@ -3,15 +3,16 @@ class profiles::media::nzbget (
|
||||
Stdlib::Absolutepath $media_root = '/shared/media',
|
||||
) {
|
||||
|
||||
include profiles::ceph::client
|
||||
|
||||
# manage the sharedvol
|
||||
profiles::storage::cephfsvol {"${::facts['networking']['fqdn']}_media":
|
||||
mount => $media_root,
|
||||
keyring => '/etc/ceph/ceph.client.media.keyring',
|
||||
cephfs_name => 'media',
|
||||
cephfs_fs => 'mediafs',
|
||||
require => Profiles::Ceph::Keyring['media'],
|
||||
if $facts['virtual'] != 'lxc' {
|
||||
# manage the sharedvol
|
||||
include profiles::ceph::client
|
||||
profiles::storage::cephfsvol {"${::facts['networking']['fqdn']}_media":
|
||||
mount => $media_root,
|
||||
keyring => '/etc/ceph/ceph.client.media.keyring',
|
||||
cephfs_name => 'media',
|
||||
cephfs_fs => 'mediafs',
|
||||
require => Profiles::Ceph::Keyring['media'],
|
||||
}
|
||||
}
|
||||
|
||||
# export haproxy balancemember
|
||||
|
||||
@ -3,15 +3,16 @@ class profiles::media::prowlarr (
|
||||
Stdlib::Absolutepath $media_root = '/shared/media',
|
||||
) {
|
||||
|
||||
include profiles::ceph::client
|
||||
|
||||
# manage the sharedvol
|
||||
profiles::storage::cephfsvol {"${::facts['networking']['fqdn']}_media":
|
||||
mount => $media_root,
|
||||
keyring => '/etc/ceph/ceph.client.media.keyring',
|
||||
cephfs_name => 'media',
|
||||
cephfs_fs => 'mediafs',
|
||||
require => Profiles::Ceph::Keyring['media'],
|
||||
if $facts['virtual'] != 'lxc' {
|
||||
# manage the sharedvol
|
||||
include profiles::ceph::client
|
||||
profiles::storage::cephfsvol {"${::facts['networking']['fqdn']}_media":
|
||||
mount => $media_root,
|
||||
keyring => '/etc/ceph/ceph.client.media.keyring',
|
||||
cephfs_name => 'media',
|
||||
cephfs_fs => 'mediafs',
|
||||
require => Profiles::Ceph::Keyring['media'],
|
||||
}
|
||||
}
|
||||
|
||||
# export haproxy balancemember
|
||||
|
||||
@ -3,15 +3,16 @@ class profiles::media::radarr (
|
||||
Stdlib::Absolutepath $media_root = '/shared/media',
|
||||
) {
|
||||
|
||||
include profiles::ceph::client
|
||||
|
||||
# manage the sharedvol
|
||||
profiles::storage::cephfsvol {"${::facts['networking']['fqdn']}_media":
|
||||
mount => $media_root,
|
||||
keyring => '/etc/ceph/ceph.client.media.keyring',
|
||||
cephfs_name => 'media',
|
||||
cephfs_fs => 'mediafs',
|
||||
require => Profiles::Ceph::Keyring['media'],
|
||||
if $facts['virtual'] != 'lxc' {
|
||||
# manage the sharedvol
|
||||
include profiles::ceph::client
|
||||
profiles::storage::cephfsvol {"${::facts['networking']['fqdn']}_media":
|
||||
mount => $media_root,
|
||||
keyring => '/etc/ceph/ceph.client.media.keyring',
|
||||
cephfs_name => 'media',
|
||||
cephfs_fs => 'mediafs',
|
||||
require => Profiles::Ceph::Keyring['media'],
|
||||
}
|
||||
}
|
||||
|
||||
# export haproxy balancemember
|
||||
|
||||
@ -3,15 +3,16 @@ class profiles::media::readarr (
|
||||
Stdlib::Absolutepath $media_root = '/shared/media',
|
||||
) {
|
||||
|
||||
include profiles::ceph::client
|
||||
|
||||
# manage the sharedvol
|
||||
profiles::storage::cephfsvol {"${::facts['networking']['fqdn']}_media":
|
||||
mount => $media_root,
|
||||
keyring => '/etc/ceph/ceph.client.media.keyring',
|
||||
cephfs_name => 'media',
|
||||
cephfs_fs => 'mediafs',
|
||||
require => Profiles::Ceph::Keyring['media'],
|
||||
if $facts['virtual'] != 'lxc' {
|
||||
# manage the sharedvol
|
||||
include profiles::ceph::client
|
||||
profiles::storage::cephfsvol {"${::facts['networking']['fqdn']}_media":
|
||||
mount => $media_root,
|
||||
keyring => '/etc/ceph/ceph.client.media.keyring',
|
||||
cephfs_name => 'media',
|
||||
cephfs_fs => 'mediafs',
|
||||
require => Profiles::Ceph::Keyring['media'],
|
||||
}
|
||||
}
|
||||
|
||||
# export haproxy balancemember
|
||||
|
||||
@ -3,15 +3,16 @@ class profiles::media::sonarr (
|
||||
Stdlib::Absolutepath $media_root = '/shared/media',
|
||||
) {
|
||||
|
||||
include profiles::ceph::client
|
||||
|
||||
# manage the sharedvol
|
||||
profiles::storage::cephfsvol {"${::facts['networking']['fqdn']}_media":
|
||||
mount => $media_root,
|
||||
keyring => '/etc/ceph/ceph.client.media.keyring',
|
||||
cephfs_name => 'media',
|
||||
cephfs_fs => 'mediafs',
|
||||
require => Profiles::Ceph::Keyring['media'],
|
||||
if $facts['virtual'] != 'lxc' {
|
||||
# manage the sharedvol
|
||||
include profiles::ceph::client
|
||||
profiles::storage::cephfsvol {"${::facts['networking']['fqdn']}_media":
|
||||
mount => $media_root,
|
||||
keyring => '/etc/ceph/ceph.client.media.keyring',
|
||||
cephfs_name => 'media',
|
||||
cephfs_fs => 'mediafs',
|
||||
require => Profiles::Ceph::Keyring['media'],
|
||||
}
|
||||
}
|
||||
|
||||
# export haproxy balancemember
|
||||
|
||||
Loading…
Reference in New Issue
Block a user