Saya sedang mencari koki untuk mengotomatiskan penyebaran Magento - baik ke dalam opsi hosting Magento standar maupun lingkungan seperti EC2. Saya sudah googled di sekitar dan saya melihat banyak resep, tetapi tidak ada yang benar-benar menganggap saya sebagai kanonik. Apakah ada naskah koki tertentu yang lebih baik / yang terbaik? Juga, jika Anda telah melakukan penyebaran chef dengan PHP sebelumnya, apa satu hal yang Anda ingin Anda ketahui ketika Anda memulai?
10
Jawaban:
Hampir tidak mungkin untuk memiliki satu set rutinitas untuk semua ukuran. Saya telah berhasil menulis skrip Bash yang mengeksekusi
chef-client
berjalan pada daftar host yang disediakan olehknife search
. Prosedurnya terlihat seperti ini ...Open source Chef Server 10.18.2 di Ubuntu 12.04 LTS
$branch
n98-magerun.phar
n98-magerun.phar
$revision
sebagai rilis baruSumber: https://gist.github.com/parhamr/6177160#file-2-deployment
sumber
Ini adalah bagaimana saya mendekati area ini sambil mengenakan peran ingin menjadi sysadmin / devops. Kebanyakan yang berikut ini hanya akan menjadi prinsip umum yang saya coba ikuti dan tidak spesifik untuk Chef.
Saya akhirnya pergi dengan Wayang karena saya menemukan ada lebih banyak sumber daya pada saat itu dan merasa lebih mudah untuk menjemput saya.
Saya melihat berbagai modul pre-built yang tersedia untuk hal-hal seperti apache, php5, dll. Banyak dari mereka tampaknya melakukan jauh lebih banyak daripada yang saya butuhkan dan menjadi sangat tidak terbiasa dengan platform saya tidak percaya apa yang sedang terjadi. Saya memutuskan akan lebih mudah bagi saya untuk mengidentifikasi apa yang perlu saya lakukan pada setiap jenis simpul.
Saya memulai proses dengan menyediakan lingkungan pengembangan lokal tim (vargrant + kotak virtual). Untuk setiap layanan / komponen saya membuat modul: php5, apache2, redis, mysql, dll.
Setelah lingkungan dev stabil / berfungsi, saya mulai membangun lingkungan QA. Saya mendefinisikan jenis simpul umum untuk server web, redis, pernis, dll. Yang menggunakan kembali modul yang sama dengan dev. Setelah ini Pementasan dan Produksi membutuhkan perubahan minimal yang diperlukan untuk bangkit dan berjalan.
Saat Anda membaca dan menulis resep / template Anda, Anda harus mempertimbangkan bagaimana jika dapat digunakan kembali / digeneralisasi. Jangan membuat kode yang sulit seperti jalur atau pengguna / grup yang dapat berubah di antara distro / proyek / lingkungan. Karena Anda sedang melihat pendekatan umum, saya kira rintangan besar akan berhadapan dengan perbedaan antara distribusi * nix.
Yang terpenting, tetap sederhana. Mengotomatiskan / membakukan bagian lingkungan yang paling penting / memakan waktu. Iterate, berevolusi.
sumber