Pertanyaan Mengapa orang menggunakan Puppet / Chef dengan Amazon Cloud Formation daripada hanya menggunakan CloudInit?


Kami berencana untuk menggunakan instance AMI EC2 yang tidak "dipra-matang". Yaitu. ketika mereka berputar, mereka menginstal AWS dari linux. Proses bootstrap kami akan menarik berbagai pemasangan yang kami butuhkan mis. python, kucing jantan. Kami akan memiliki min 3 instance dan maks 8.

Dengan persyaratan ini, apakah menggunakan Wayang / Koki bermanfaat daripada menggunakan Amazon Cloud Formation (CloudInit)?

Yang terbaik yang bisa saya lihat adalah jika kita menggunakan Wayang, maka kita akan memiliki pemrograman deklaratif yang lebih mudah untuk mengaudit untuk melihat apa yang terjadi dibandingkan skrip. Juga CloudInit memiliki batas ukuran skrip 16k yang mungkin kita temui atau tidak.

Adakah yang pindah dari CloudInit ke Wayang atau Chef karena alasan tertentu yang dapat mereka berikan di sini sebagai jawaban atas pertanyaan saya?


76
2017-08-16 20:55


asal


Jawaban:


Apakah ada kelebihan dari CloudInit? Ya, tentu saja, banyak dari mereka!

Tentu, Anda dapat menulis skrip dari top ke bawah setelah skrip CloudInit menyediakan server. Tetapi apa yang terjadi ketika Anda perlu mengubah file konfigurasi, menambahkan pengguna, memperbarui paket, atau menginstal paket baru? Anda akan berakhir masuk ke server atau menulis skrip untuk melakukannya, dan tidak dapat dihindari merupakan status server yang tidak sesuai.

CloudInit bukan manajemen konfigurasi. Jika Anda memilih untuk mulai menggunakan perangkat lunak manajemen konfigurasi, gunakan cloud init hanya untuk satu tugas: untuk mem-boot boneka / Chef / agen lainnya.

Wayang tidak hanya membantu Anda mengotomatisasi paket penginstalan, mengatur kunci ssh, atau menyetel tumpukan Tebu Anda. Ini memastikan keadaan hal-hal. Ketika seorang pengembang memecahkan masalah aplikasi Java pada pukul 3 pagi dan mengubah konfigurasi Tomcat Anda, Wayang akan mengubahnya kembali. Anda dapat dengan cepat mengubah versi Python untuk semua atau sekelompok node, dan jika seseorang menginstal versi yang berbeda, Wayang akan mengubahnya kembali.

Ketika tumpukan aplikasi Anda berubah dan Anda mulai menggunakan, katakanlah RabbitMQ, atau Jetty, atau RDBMS baru, Anda dapat dengan mudah menguji dan menerapkan perubahan di puluhan atau ribuan server.

Ada banyak alasan lain untuk menggunakan perangkat lunak manajemen konfigurasi seperti pelaporan back end, audit, dan kepatuhan keamanan.


75
2017-08-17 00:50



Inti dari manajemen konfigurasi adalah mem-spin up mesin-mesin yang dapat diprediksi dan konsisten. CloudFormation dan cloudinit sangat bagus ketika Anda benar-benar terbatas pada AWS (meskipun debugging CloudFormation templates adalah pengalaman yang menyedihkan), tetapi bagaimana dengan aplikasi yang menggunakan sumber daya pusat data dan AWS, atau lingkungan pengujian lokal, atau mesin pengembangan?

Jika Anda benar-benar ada di AWS, saya kira Anda bisa pergi dengan cloudinit dan tidak ada yang lain, tapi saya tidak yakin itu realistis untuk aplikasi skala apa pun (Netflix, misalnya, pra-bakes AMI mereka menggunakan teknologi OSS yang telah mereka tulis dan dirilis ke dunia, pertimbangkan video ini untuk detail). Aplikasi yang sangat tersedia bersifat trans-regional, sering berbasis VPC, cenderung untuk kembali ke pusat data di seluruh VPN, dan ini bahkan tidak menyentuh demo, pementasan, pengujian, atau lingkungan pengembangan. Sebagai seseorang yang dibebankan dengan mesin penyediaan terakhir hal-hal yang ingin saya lakukan adalah mengulangi pekerjaan atau terjebak debugging beberapa metode penyediaan.

Makanya Chef atau Wayang. Mereka bekerja dengan baik untuk AWS seperti yang mereka lakukan untuk datacenter saya, dan juga untuk mesin pengembangan saya berjalan Gelandangan seperti yang mereka lakukan untuk lingkungan demo yang kadang-kadang saya butuhkan dengan cepat. Saya lebih baik meluncurkan Chef atau Wayang dari cloudinit daripada memelihara cloudinit dan Chef atau Wayang.


61
2017-08-17 12:08



Untuk membuang server, katakanlah berjalan di belakang grup penskalaan otomatis, saya akan mengatakan cloudinit mungkin cukup. skrip linux shell atau skrip windows powershell harus melakukan trik.

Jika server lama berjalan Anda berencana untuk mengelola mungkin koki, boneka, atau buruh pelabuhan mungkin memberi Anda keuntungan seperti yang disebutkan dalam jawaban yang diterima. Jika Anda tidak dapat melihat keuntungan setelah menggunakannya, maka Anda mungkin tidak membutuhkan alat tersebut.


5
2018-02-04 20:09



Dalam pengalaman saya, ada hal-hal sederhana yang mudah dilakukan dengan alat GUI out-of-the-box yang disediakan AWS, tetapi ketika Anda masuk ke hal-hal yang lebih kompleks, Anda mulai menemukan bahwa ada keterbatasan pada apa yang dapat Anda lakukan hanya dengan alat mereka.

Pada titik itu, Anda dapat berhenti, atau Anda dapat menemukan alat lain (seperti Chef atau Wayang) yang dapat membantu Anda mencapai tujuan yang lebih kompleks serta melakukan hal-hal yang lebih sederhana.

Pilihanmu.


0
2018-04-22 22:45