Apa peran yang dimainkan oleh alat Pengelola Konfigurasi dalam infrastruktur yang tidak berubah?

12

Jika saya menggunakan server / wadah yang tidak dapat diubah , apakah saya memerlukan alat-alat seperti Koki, Boneka, Anonim, atau Garam? Alat manajemen konfigurasi tersebut dirancang untuk membuat konfigurasi dan kemudian memeliharanya.

Jika saya menggunakan server yang tidak bisa diubah, haruskah saya menggunakan alat manajemen konfigurasi hanya untuk penyediaan awal?

Dave Swersky
sumber

Jawaban:

12

Ada beberapa jawaban untuk itu:

  1. Sesuatu perlu membangun gambar yang tidak berubah itu. Tentunya lebih mudah untuk menggunakan skrip prosedural gaya sekolah lama untuk membangun sesuatu ketika mulai dari keadaan awal yang diketahui tetapi ini masih bisa menjadi sangat sulit dari waktu ke waktu (misalnya Dockerfiles), terutama ketika Anda akhirnya menginginkan matriks besar gambar yang berbeda untuk hal-hal seperti versi yang berbeda dari perangkat lunak, lingkungan yang berbeda, dll. Packer dan alat pembuat gambar lainnya terintegrasi dengan baik dengan Chef, Ansible, Puppet, Salt, dan banyak lagi.

  2. Kekekalan adalah spektrum, bukan biner. Bahkan dalam penyebaran "sangat tidak berubah" tidak jarang memiliki beberapa file konfigurasi yang memerlukan manajemen runtime. Ini juga merupakan tempat di mana Anda dapat menggunakan alat-alat CAPS, meskipun opsi yang lebih ringan seperti Template Konsul atau etcd mungkin lebih masuk akal tergantung pada keseluruhan infra. Jika Anda melakukan server aplikasi yang tidak dapat diubah tetapi server basis data Anda lebih tradisional dikelola menggunakan Chef, maka mungkin masuk akal untuk menggunakan Chef bahkan di sisi yang tidak dapat diubah untuk tugas-tugas manajemen kecil.

  3. Manajemen tanpa hari. Kekekalan baik, tetapi apa yang akan Anda lakukan ketika OpenSSL 0day berikutnya turun? Jika Anda memiliki pipeline bangunan Anda dalam posisi untuk membuat gambar perbaikan terbaru langsung dan menggunakan mereka, maka itu bagus. Tetapi banyak orang mungkin tidak akan memiliki kemampuan putaran cepat semacam itu.

  4. Hal-hal yang tidak bisa berubah. Jawabannya, tetapi seluruh infra jarang 100% abadi. Hal-hal seperti server basis data dan workstation pengembang (ya, itu adalah bagian dari infra Anda) ada di antara yang sulit dan tidak mungkin untuk diubah.

pembuat kode
sumber
Anda membuat banyak asumsi tentang "banyak orang". Mereka yang tidak dapat menghasilkan gambar untuk infrastruktur abadi mereka, kemungkinan besar tidak memiliki infrastruktur permanen untuk memulai.
Evgeny
Ada kesenjangan besar antara "dapat menggunakan menggunakan wadah tidak berubah" dan "dapat membangun kembali dan memindahkan kembali setiap wadah dalam waktu 6 jam bahkan dengan penyebaran lainnya sedang berlangsung".
coderanger
Dan dalam pengalaman saya, ketika Anda memiliki kesenjangan (6 jam), Anda tidak dapat memiliki infrastruktur yang tidak dapat diubah. Memiliki server yang tidak dapat diubah dan membangun server yang tidak dapat diubah dengan cepat bukanlah kemampuan yang identik, tetapi mereka terkait erat.
Evgeny
Banyak orang yang mengatakan "kami menjalankan wadah yang tidak dapat diubah" tidak termasuk dalam kategori itu. Oleh karena itu, menunjukkan bahwa ini adalah masalah yang harus diatasi, yang merupakan inti dari pertanyaan.
coderanger
Anda dapat mendefinisikan "tidak berubah" berarti "tidak ada SSH yang masuk dan membuat perubahan manual", karena itu tidak dapat berarti sama sekali tidak berubah, karena mereka mengubah diri mereka sendiri selama operasi normal. Bahkan menulis pidfile adalah mutasi.
Gayus
0

Lingkungan yang benar-benar abadi adalah ide yang buruk, saya pikir.

Alat CM seperti Ansible, Chef, Puppet dapat berguna dalam banyak kasus termasuk milik Anda.

Saya menggunakan mungkin untuk penyediaan awal VM contoh di GCP.

Quarind
sumber