Saya telah menginstal puppetmaster di ubuntu 11.04 dan saya telah menginstal puppetmaster di semua klien saya. Saya telah bergabung dengan semua klien boneka saya dengan guru boneka. Apakah mungkin menyalin file ke semua klien wayang ini dari kepala boneka?
Sebagai contoh:
Saya memiliki file dengan nama data.xls di Desktop saya (Puppet Master). Bagaimana cara menyalin file ini ke semua klien boneka saya di lokasi berikut (/ home / operator1 / Desktop / Backup /)?
Memperbarui:
- Hai file masih tidak dibagikan.
- Bagaimana cara memodifikasi baris ini
puppet:///modules/module_name/datas.xls
file yang akan disalin berada di bawah lokasi ini/etc/puppet/modules/mymodule/manifests/datas.xls
?
Kesalahan pada Klien: (Diselesaikan)
root@testing:~# puppetd --test
err: Could not retrieve catalog from remote server: Error 400 on SERVER: Could not find class sudo at /etc/puppet/manifests/site.pp:2 on node testing.chn.jd.com
warning: Not using cache on failed catalog
err: Could not retrieve catalog; skipping run
Kesalahan 2 pada Klien:
root@tme13:~# puppetd --test
err: Could not run Puppet configuration client: Could not retrieve local facts: bad URI(is not URI?): http://169.254.169.254/2008-02-01/meta-data/<HTML><HEAD><TITLE>HTTP access denied</TITLE></HEAD><BODY><img src/
Pembaruan Baru:
Bagaimana cara menerapkan modul ini ke semua node? Sedemikian rupa sehingga file tersebut akan disalin ke semua node.
Jawaban:
Wayang adalah semacam monster yang bisa membuat Anda berpikir, jadi belajar dengan memberi contoh bukanlah hal yang buruk. Di bawah ini saya mengasumsikan Anda menggunakan modul - silakan katakan dalam komentar jika Anda tidak atau jika Anda memerlukan detail lebih lanjut tentang cara menyatukan modul.
Katakanlah Anda memulai modul baru yang disebut
mymodule
. Dalam direktori home wayang (biasanya/etc/puppet
) pada master wayang Anda harus membuat manifes modul dan direktori file:Kemudian buat file di direktori itu bernama
init.pp
dan masukkan:Kemudian masukkan
datas.xls
file kefiles
direktori modul - dalam contoh ini dimodules/mymodule/files/
. (Perhatikan juga adatemplates
direktori untuk templat ).Dalam
manifests/site.pp
file Anda perlu mengimpor modul dan memasukkan kelas dengan melakukan sesuatu seperti:Pastikan bahwa semua simpul Anda mewarisi dari basis dan itu yang harus Anda lakukan. Pada wayang 0.25 Anda dapat menggunakan ekspresi reguler dalam nama simpul, misalnya:
Beri tahu saya dalam komentar jika Anda memerlukan klarifikasi lebih lanjut.
Menyiapkan klien untuk berbicara dengan master boneka
Pada klien, Anda perlu melakukan:
Kemudian edit
/etc/default/puppet
dan ubahSTART=no
keSTART=yes
.Juga edit
/etc/puppet/puppet.conf
dan tambahkan baris ke[main]
bagian untuk memberi tahu di mana menemukan master boneka:Lalu kita bisa melakukan uji coba dengan
sudo puppetd --test
. Jika Anda mendapatkan kesalahan kunci, Anda mungkin perlu pergi ke server master boneka dan menandatangani kunci klien. Untuk memeriksa nama persis yang dapat Anda lakukansudo puppetca --list
dan kemudiansudo puppetca --sign server1.mydomain.com
(atau apa pun nama server dari perintah daftar).Sekarang mulai layanan boneka dengan
sudo service puppet start
dan Anda harus pergi. Layanan boneka akan berjalan setiap jam, jadi jika Anda memperbarui resep boneka Anda maka semua klien Anda juga akan diperbarui.Menghapus File
Saya perhatikan dalam pertanyaan awal yang Anda ingin tahu cara menghapus file. Anda akan mengedit
manifests/init.pp
menjadiKiat bermanfaat lainnya
Jika Anda mengalami masalah, ada beberapa hal yang dapat Anda lakukan. Pada mesin apa pun dengan boneka yang terpasang, Anda dapat memeriksa sintaks Anda dengan menjalankan
atau periksa keseluruhannya dengan mengeluarkan
--ignoreimport
benderanya, meskipun itu dapat menyebabkan beberapa pesan kesalahan lucu yang sebenarnya bukan kesalahan yang saya temukan. Anda juga dapat menjalankan boneka langsung di mesin klien boneka dengan melakukan:yang menunjukkan berbagai hasil yang bermanfaat, dengan kesalahan dan peringatan disorot dalam berbagai warna. Jika Anda ingin lebih detail Anda bisa menjalankan:
tetapi itu umumnya menghasilkan begitu banyak output sehingga sulit untuk dilalui, jadi hanya lakukan itu jika Anda sudah mencoba langkah-langkah sebelumnya dan macet dan perlu melihat semuanya dilakukan.
Catatan ini didasarkan pada boneka 0.25.x yang merupakan apa yang saya gunakan di tempat kerja saat ini, dan juga versi di Ubuntu 10,04. Kode boneka di bagian utama pasti masih akan berfungsi, tetapi versi boneka yang baru memiliki bendera baru yang dapat membantu dengan hasil debugging.
sumber
puppet:///modules/module_name/datas.xls
file yang akan disalin berada di bawah lokasi ini/etc/puppet/modules/mymodule/manifests/datas.xls
/etc/puppet/modules/mymodule/files/datas.xls
- saya akan memperbarui jawabannya agar lebih jelas tentang itu.puppet agent --test