Saya pikir orang lain telah membahas mengapa jadi saya akan coba bagaimana. Saya pikir dengan memahami bagaimana seseorang dapat menggunakan Wayang untuk melakukan apa yang Anda inginkan, itu akan membuat keputusan menjadi lebih jelas.
Lakukan casing dasar terlebih dahulu
Modul Wayang Anda untuk Apache seharusnya tidak melakukan banyak hal secara default. Instal Apache, konfigurasikan ke standar minimum, dan mulai layanan. Jadikan ini bekerja pada semua distro yang Anda butuhkan untuk didukung.
Tambahkan fleksibilitas kedua
Kami perlu menambahkan vhosts. Anda akan berakhir dengan sistem yang dapat menjatuhkan file atau menghapusnya dari serangkaian conf.d atau vhosts.d / direktori sesuai dengan yang Anda butuhkan. Hal yang sama dengan mengaktifkan atau mengkonfigurasi modul.
Gunakan kelas peran atau hostgroup untuk mengikat blok bangunan Anda bersama-sama
Saya pikir cara terbaik untuk menggunakan Wayang adalah untuk memastikan itu aditif. Dengan menggunakan contoh di atas kita harus memiliki modul yang berfungsi
- Instal Apache
- Setel konfigurasi dasar
- Tambahkan vhosts ke apache
- Konfigurasikan pengaturan tambahan apa pun
- Mulai Apache
Alih-alih membebani modul Apache default kami untuk melakukan apa yang kita butuhkan untuk host atau grup tertentu yang harus kita tangani ini adalah kelas peran atau hostgroup.
class role::web_cust1 {
include apache
apache::vhost {'www.domain.com': }
apache::vhost {'www.domain2.com': priority => '99', }
include php
include php-fpm
include mysql
}
Lagi aditif.
Letakkan case khusus di Hiera
Saya penggemar berat Hiera Puppet, menganggapnya sebagai database untuk Wayang, menyimpan bit khusus. Jika host atau hostgroup tertentu membutuhkan pengaturan khusus, pertama-tama masukkan default waras ke dalam modul sehingga pengguna normal tidak perlu mengetahuinya. Kemudian masukkan data untuk host atau grup host khusus tersebut sehingga Hiera dapat menggunakannya untuk meneruskannya ke Puppet sesuai kebutuhan.
Kasing penggunaan saya adalah Dengarkan port. Beberapa server memiliki Varnish atau haproxy di depannya. Secara default modul Puppet memiliki Apache menggunakan port 80, tetapi jika Hiera menemukan data, ia akan menimpa default itu.