1. Gambaran Umum Puppet adalah alat konfigurasi dan penyebaran otomatisasi perangkat lunak open source yang mudah digunakan dan kuat, dan mendapatkan lebih banyak perhatian, dan banyak perusahaan TI besar sekarang menggunakan puppet untuk mengelola dan menyebarkan perangkat lunak dalam cluster, seperti Google menggunakan puppet untuk mengelola lebih dari 6.000 komputer desktop Mac (data 2007). Artikel ini terutama memperkenalkan metode instalasi, arsitektur desain, dan metode penggunaan boneka.
2. Arsitektur desain Boneka didasarkan pada arsitektur C/S. Sisi server menyimpan semua kode konfigurasi untuk server klien, yang disebut manifes dalam boneka. Setelah klien mengunduh manifes, server dapat dikonfigurasi sesuai dengan manifes, seperti manajemen paket, manajemen pengguna, dan manajemen file.
Seperti yang ditunjukkan pada gambar di atas, alur kerja boneka adalah sebagai berikut: (1) Boneka klien memanggil facter, dan facter mendeteksi beberapa variabel host, seperti nama host, ukuran memori, alamat IP, dll. pupppetd mengirimkan informasi ini ke server melalui koneksi SSL; (2) Dalang sisi server mendeteksi nama host klien, lalu menemukan konfigurasi simpul yang sesuai dalam manifes, dan mengurai bagian konten ini. Penguraian dibagi menjadi beberapa tahap, pemeriksaan sintaks, dan pelaporan kesalahan jika sintaksnya salah. Jika sintaksnya benar, lanjutkan mengurai, dan hasil penguraian akan menghasilkan "pseudocode" perantara, lalu kirim pseudocode ke klien; (3) Klien menerima "pseudocode" dan menjalankannya, dan klien mengirimkan hasil eksekusi ke server; (4) Sisi server menulis hasil eksekusi klien ke log. Ada dua poin yang perlu diperhatikan dalam proses pekerjaan PUPPET, pertama, untuk memastikan keamanan, klien dan master didasarkan pada SSL dan sertifikat, dan hanya klien yang diautentikasi oleh sertifikat master yang dapat berkomunikasi dengan master; Kedua, puppet akan menjaga sistem dalam keadaan tertentu yang Anda harapkan dan mempertahankannya sepanjang waktu, seperti mendeteksi file dan memastikan bahwa itu selalu ada, memastikan bahwa layanan ssh selalu aktif, jika file dihapus atau layanan ssh ditutup, saat boneka dieksekusi berikutnya (30 menit secara default), itu akan membuat ulang file atau memulai layanan ssh.
3. Instalasi perangkat lunak Tidak disarankan untuk menggunakan perintah apt-get untuk instalasi karena boneka yang diunduh oleh perintah ini memiliki bug. Itu dapat diinstal langsung dari kode sumber, dan perangkat lunak yang perlu diinstal adalah ruby, facter, dan boneka.
3.1 Prosedur Instalasi Edit /etc/host untuk memodifikasi nama host, karena boneka berbasis sertifikat dan berisi nama host dalam sertifikat; Instal Ruby, Facter, dan Puppet di Master and Slave, dan gunakan Ruby Install.rb untuk menginstal Facter dan Puppet.
3.2 Struktur direktori setelah instalasi (1) Direktori instalasi Direktori instalasi disimpan di /etc/puppet, dan bermanifestasi di file manifes penyimpanan direktori ini. File lain yang dapat dieksekusi di bawah /user/sbin terutama meliputi: boneka: Digunakan untuk mengeksekusi file mainfests independen yang ditulis oleh pengguna, seperti: boneka -l /tmp/manifest.log manifest.pp puppetd: Program klien yang berjalan pada host terkelola, seperti: Puppet –nama server server –waitforcert 60 puppetmasterd: Program server yang berjalan di mesin manajemen, seperti: puppetmasterd –debug Program sertifikasi Puppetca Puppet terutama digunakan untuk mengautentikasi sertifikat budak, seperti: Periksa budak yang akan diautentikasi: puppetca –list Sertifikasi budak-budak ini: boneka -s –a Puppetrun digunakan untuk terhubung ke klien, memaksa file konfigurasi lokal untuk berjalan, seperti: puppetrun -p 10 –host host1 –host host2 -t remotefile -t webserver (2) File konfigurasi boneka.conf File konfigurasi utama Puppet adalah /etc/puppet/puppet.conf untuk pengguna root, dan ~user/.puppet/puppet.conf untuk pengguna normal Untuk parameter konfigurasi tertentu, lihat:
http://docs.puppetlabs.com/references/stable/configuration.html#configuration-files fileserver.conf File konfigurasi server file boneka. Gunakan jalur file konfigurasi jalur dan izinkan/tolak untuk mengonfigurasi izin akses, lihat http://docs.puppetlabs.com/guides/file_serving.html
3.3 Verifikasi bahwa instalasi berhasil Pilih slave untuk diverifikasi dengan master, dengan asumsi bahwa host slave adalah slave00 dan host master adalah masterhost, masukkan pada slave00: boneka –uji –nama server server Kemudian lihat slave yang akan diautentikasi di masterhost: Daftar boneka Jika tidak apa-apa, Anda dapat melihat slave00 menandatangani sertifikat budak: boneka -s -a Dengan cara ini, slave00 lulus validasi sertifikat dan dapat berinteraksi dengan master lebih lanjut. Tulis file site.pp di direktori /etc/puppet/manifests masterhost, yang berbunyi: simpul default { berkas { "/tmp/uji": content=>"halo", mode => 0644;
}
} Pada saat yang sama, masukkan boneka –test –nama server server di slave00, periksa folder /tmp dari slave00, dan buat pengujian file baru, yang isinya adalah hello, dan izin file adalah -rw-r—r-. Dengan cara ini, instalasi boneka terbukti berhasil
|