GNU/Linux >> Belajar Linux >  >> Linux

Administrasi Massal/Jarak Jauh Linux

Itu tergantung apa yang sebenarnya Anda butuhkan dan apa yang Anda cari. Namun secara umum terdapat beberapa solusi untuk "manajemen konfigurasi seperti:

  1. boneka
  2. koki
  3. Cfengine
  4. mungkin
  5. garam

dll. Saya pribadi akan merekomendasikan boneka karena memiliki komunitas besar dan banyak resep yang disediakan dari luar. Ini memungkinkan Anda untuk mengonfigurasi dan mengelola sistem secara otomatis. Jika Anda menggabungkan ini dengan repositori sendiri dan pembaruan otomatis melalui mis. unattended-upgrades Anda dapat memperbarui sistem secara otomatis.

Solusi lain adalah menyediakan paket Anda sendiri seperti company-base dll. yang secara otomatis bergantung pada perangkat lunak yang diperlukan dan dapat mengonfigurasi sistem Anda secara otomatis.

Anda juga harus melihat penerapan otomatis (barebone dan virtual). Jika Anda menggabungkan ini dengan manajemen konfigurasi atau repositori Anda sendiri, Anda dapat dengan mudah mengotomatiskan dan menginstal ulang sistem Anda. Jika Anda ingin memulai dengan instalasi otomatis, lihat forman yang mendukung libvirt serta instalasi tulang telanjang dan memiliki dukungan boneka terintegrasi. Jika Anda ingin melakukannya sendiri, Anda dapat melihat kickstart (redhat et. al.) atau "preseeding" untuk mengonfigurasi sistem Anda secara otomatis. Untuk Debian, Anda juga dapat menggunakan sesuatu seperti debootstrap atau pembungkus bernama grml-debootstrap yang mendukung gambar virtual.

Untuk membantu menyediakan gambar VirtualBox untuk pengembang Anda, lihat gelandangan, ini memungkinkan Anda mengotomatiskan pembuatan sistem tervirtualisasi dengan skrip chef, boneka, dan shell yang mendukung VirtualBox untuk menyesuaikan lingkungan virtual Anda.

Jika Anda ingin menggunakan solusi dari penyedia yang ada, Anda harus bertanya kepada mereka bagaimana mereka mengelola sistem Anda, tetapi itu mungkin semacam manajemen konfigurasi. Dimungkinkan untuk menjalankan agen mereka di sistem Anda jika Anda dapat mengakses server konfigurasi.

Untuk kata kunci google, lihat devops , configuration management , it automation dan server orchestration .

Singkatnya, otomatiskan sebanyak mungkin dan jangan pernah berpikir untuk melakukan hal-hal manual.


Ulrich telah memberikan jawaban terkait penerapan perangkat lunak dan penyiapan server otomatis.

Prinsip di balik ini adalah

  • Tentukan tampilan server Anda - ini termasuk perangkat lunak umum yang diinstal secara default, skema partisi, dan tata letak sistem file
  • Server produksi, staging, pengujian, dan pengembangan tidak boleh berbeda terkait standar dasar ini (jika tidak, Anda akan mengalami masalah di kemudian hari - seperti yang Anda alami)
  • Gunakan manajemen perubahan yang tepat untuk mendokumentasikan SEMUA perubahan yang Anda lakukan (termasuk perubahan kecil satu baris dalam konfigurasi apa pun)
  • Anda selalu mengubah terlebih dahulu dalam pengujian, kemudian dalam pengembangan, kemudian dalam pementasan, dan terakhir dalam produksi

Anda meminta alat praktis untuk mengelola banyak server - favorit pribadi saya adalah cluster-ssh (cssh ). Ketik sekali dan lakukan perubahan di banyak server secara bersamaan.

Jika Anda menemukan masalah dan memiliki perbaikan untuk menghilangkan masalah tersebut:

  1. Terapkan perbaikan ke Test/Dev/Staging/Prod (lihat di atas) jika benar-benar berhasil
  2. Terapkan perbaikan pada template virtual Anda sehingga tiruan VM di masa mendatang tidak akan memiliki bug tersebut
  3. Terapkan perbaikan ke proses penginstalan fisik Anda (kickstart/autoyast/apa pun)
  4. Terapkan perbaikan ke SEMUA server

Jika Anda menghadapi banyak server untuk diperbaiki, ini adalah proses yang harus didokumentasikan dengan baik dan pada akhirnya tim lain harus memeriksa apakah perbaikan telah diterapkan sepenuhnya.

Kami menggunakan Mantis (sumber terbuka, PHP) untuk tujuan itu.


Saya mengelola sekitar 30 produk dan beberapa ratus server di berbagai negara. Saya manajer konfigurasi perangkat lunak, jadi saya tidak memiliki akses root (sesuai desain), tidak menyentuh database atau server mereka (sekali lagi, sesuai desain) dan harus melewati banyak rintangan karena keamanan perusahaan. Tapi saya mengelola konfigurasi dalam pengujian, pementasan, dan produksi, termasuk tautan dan perubahan basis data. Saya memiliki sejumlah skrip yang masuk ke server menggunakan kombinasi ssh , python dan skrip shell.

Hal utama yang harus dipikirkan adalah:

  1. Interaksi seperti apa yang akan Anda lakukan dengan server Anda? Hanya mengunggah file? Menjalankan program baris perintah? Menjalankan klien X jarak jauh?
  2. Tingkat keamanan apa yang diperlukan untuk mengakses server ini? Firewall, jaringan aman, vpn? Apakah ssh cukup dan dari lokasi pusat yang aman?
  3. Berapa banyak yang dapat diotomatisasi di setiap server? Bisakah Anda menginstal program di setiap server dan menjalankannya, atau apakah Anda perlu melakukan streaming program melalui sesuatu seperti ssh untuk menjalankannya dari jarak jauh? Bisakah Anda membuat skrip dengan expect atau hanya permintaan baris perintah?

VirtualBox memberikan banyak alat baris perintah yang dapat Anda kelola hanya melalui ssh atau sistem seperti puppet seperti yang disebutkan Ulrich.


Linux
  1. Linux Massal/Administrasi Jarak Jauh?

  2. Mengonfigurasi Penyimpanan Blok di Server Linux

  3. Bagaimana cara menambahkan koneksi MySQL jarak jauh di linux?

  1. Cara Memasang Windows Share Jarak Jauh di Linux

  2. Paksa reboot server Linux jarak jauh

  3. Linux – Bagaimana Mengganti Server Vm Dns?

  1. 5 Aplikasi Desktop Jarak Jauh Terbaik untuk Linux

  2. Server Web Linux Terbaik

  3. Administrasi Server Linux