Bayangkan Anda akan mengelola sejumlah server dengan sejumlah layanan berbeda yang digunakan oleh sejumlah orang. Sekarang katakan Anda ingin mengkonfigurasi ulang atau mengganti beberapa perangkat lunak pada salah satu server itu. Jelas Anda tidak ingin bekerja di server yang sedang dalam produksi.
Jika ini adalah perubahan kode, sebagai pengembang, saya akan membuat perubahan pada mesin pengembangan lokal saya, mengujinya secara lokal dan melakukan perubahan pada sistem kontrol versi. Perubahan kemudian dapat digunakan dalam lingkungan pementasan, diuji lebih lanjut dan akhirnya dikerahkan di lingkungan produksi. Juga akan mudah bagi saya untuk mundur, jika perlu.
Secara umum, atau secara khusus, bagaimana Anda mencapai ini dalam administrasi sistem?
(Hal pertama yang terlintas dalam pikiran adalah menggunakan mesin virtual dan menempatkan gambar mesin virtual dalam kontrol versi, tapi saya yakin ada banyak literatur dan solusi cerdas yang saat ini tidak saya sadari.)
Jawaban:
Jawaban singkatnya adalah "manajemen penyebaran OS", "Manajemen Konfigurasi" dan "Pengemasan Perangkat Lunak". Jawaban panjangnya berikut.
Saya ingin menambahkan balasan Daniel Pittman dengan rincian apa yang membentuk "sistem" dalam administrasi sistem.
Sistem atau lingkungan terdiri dari:
Enveloping ini akan menjadi proses seperti:
Dan Anda ingin menggabungkan ini bersama untuk membantu Anda mencapai tujuan yang tidak berfungsi seperti:
Ini adalah dump otak yang cepat. Saya yakin lebih banyak yang dapat ditambahkan ke semua daftar.
Pertanyaan Anda menyentuh beberapa di antaranya tanpa menggunakan kata-kata spesifik. Misalnya, Anda ingin dapat menggunakan dengan mudah dan mengembalikan kembali yaitu ingin mempertahankan; Anda ingin melakukannya dalam lingkungan pengujian dan menguji sampai lulus yaitu pengulangan, pengujian dan terukur; Anda berpikir untuk menempatkan gambar vm di kontrol versi karena Anda ingin pengulangan OS dan konfigurasi konfigurasi.
Ada banyak alat untuk membantu Anda dalam hal ini, beberapa di antaranya disebutkan oleh Daniel. Beberapa yang lain adalah:
Sekali lagi, ini bukan daftar yang komprehensif, tetapi sesuatu yang saya simpan di kepala saya untuk membimbing saya dan mudah-mudahan itu akan membantu Anda juga.
sumber
Penafian: Saya adalah salah satu pengembang Wayang.
Cara yang jelas adalah dengan hanya menerapkan konsep-konsep: mendefinisikan siklus pengembangan / pengujian / produksi, dan mendorong perubahan melaluinya. Gunakan kontrol versi untuk melacak sistem.
Dalam waktu singkat, memulai dari jalur itu mengarah ke penemuan bahwa Anda benar-benar menginginkan alat yang mengotomatiskan hal-hal itu - pada dasarnya, bahwa Anda ingin mengotomatiskan administrasi sistem, sehingga Anda tidak menggunakan teknik-teknik itu pada mesin, Anda menggunakannya pada sistem yang mengelola mesin.
Alat-alat seperti Chef , Puppet , Salt , dan CFEngine adalah alat yang populer untuk memenuhi kebutuhan kedua itu. Mereka bekerja dalam arah umum mengubah administrasi sistem menjadi solusi sentral yang dapat Anda kontrol versi dan uji.
The DevOps gerakan adalah sumber lain dari informasi yang baik tentang bagaimana untuk melakukan hal ini. Sementara sila adalah kerja sama yang lebih baik antara Pengembang dan staf Operasional, itu juga cenderung ke arah yang sama.
sumber
Di dunia Windows, masalah ini seputar manajemen siklus aplikasi sedang ditangani dengan System Center 2012.
Dalam System Center Virtual Machine Manager (SCVMM), layanan didefinisikan menggunakan 'Templat Layanan' (misalnya layanan tiga tingkat klasik) dan lingkungan eksekusi didefinisikan sebagai 'Awan' (misalnya pengembangan, pementasan, produksi). Templat Layanan dapat diversi dan diluncurkan (secara otomatis) ke Awan yang berbeda. Di bawah penutup, SCVMM melakukan pekerjaan untuk menyediakan, menyebarkan dan mengkonfigurasi perangkat keras yang divirtualisasikan (VMs dll) dan perangkat lunak (OS, komponen aplikasi dll).
System Center Service Manager adalah bagian yang mengikat ini bersama-sama dari sudut pandang proses. Misalnya, manajemen masalah dan kontrol perubahan.
sumber