Bagaimana cara mengaktifkan layanan instantiated systemd dengan boneka?

9

Saya mendapatkan layanan boneka berikut:

service { "[email protected]": 
    provider => systemd,
    ensure => running,
    enable => true,
}

Ketika saya mencoba menerapkan konfigurasi ini pada klien saya, itu menimbulkan kesalahan berikut:

err: /Stage[main[//Node[puppetclient[/Service[[email protected][/enable: perubahan dari false ke true gagal: Tidak dapat mengaktifkan [email protected]:

Layanan ini berjalan dengan baik dan saya dapat memastikan itu dimulai pada boot sistem dengan menambahkan symlink ke getty.target.wants:

ln -s /lib/systemd/system/[email protected] /etc/systemd/system/getty.target.wants/[email protected]

Dari sumber, saya bisa melanjutkan dan menghapus "enable => true" dari definisi layanan dan menyertakan symlink secara manual dalam konfigurasi boneka, tetapi bukankah boneka harus mengurus ini? Apakah saya melakukan sesuatu yang sangat salah?

Clayton Louden
sumber

Jawaban:

6

Penyedia systemd di Puppet hari ini hanya menggunakan dua perintah untuk status layanan enable:

  • systemctl is-enabled <unit>, memeriksa kode kembali untuk keadaan aktif saat ini
  • systemctl enable/disable <unit> untuk mengubahnya

Perintah aktifkan membuat kesalahan ketika Anda mengaktifkan sebuah instance dari getty @ service yang belum ada:

$ sudo systemctl enable [email protected]
Failed to issue method call: No such file or directory

Ini kemudian menyebabkan kesalahan yang ditampilkan dalam Wayang (meskipun stderr tampaknya tidak ditampilkan).

Bagi saya sepertinya ada celah dalam systemd bahwa Anda tidak dapat mengaktifkan instance template baru. Sudah ada BZ # 752774 di Fedora , tetapi komentar menyarankan itu mungkin tidak ditambahkan dalam waktu dekat.

Anda mungkin lebih baik mengajukan permintaan fitur terhadap Wayang untuk menambahkan dukungan khusus untuk mengaktifkan instance baru. Dalam permintaan fitur Anda, saya sarankan menghubungkan ke penjelasan Lennart tentang instance unit untuk latar belakang.

Dominic Cleal
sumber