Server boot yang sangat cepat

19

Saya mengubah cara kerja DHCP / DNS kami di tempat kerja. Saat ini kami memiliki 3 server DNS, dan sebuah kotak DHCP. Semuanya VM.

Ada ketergantungan melingkar di mana hal-hal booting membutuhkan NFS, yang membutuhkan DNS. Jadi, ketika kita mem-boot ulang barang, hal-hal mungkin akan kembali rusak secara halus hingga DNSnya habis, dan kita memulai kembali beberapa layanan.

Yang ingin saya lakukan adalah memiliki beberapa server berdaya rendah, mungkin Atom dual core atau serupa, berjalan dari SSD, sehingga mereka boot dengan sangat cepat. Saya ingin membuat semuanya boot sedekat mungkin dengan instan.

Idealnya saya ingin menggunakan Ubuntu 11.10, atau Debian 6 sebagai OS. Saya tidak tertarik dengan Gentoo atau mengkompilasi kernel saya sendiri. Ini perlu didukung secara wajar oleh saya sendiri.

Selain drive SSD, langkah pengoptimalan apa yang dapat saya ambil untuk meningkatkan kecepatan boot?

Tom O'Connor
sumber
2
Apakah ada pertanyaan aktual di sini?
ceejayoz
14
@ceejayoz Other than SSDing drives, what other optimisation steps can I takesepertinya pertanyaan bagi saya.
MDMarra
7
@ceejayoz Jadi jangan menjawabnya jika Anda pikir akan terlalu lama untuk menjawab. Ini bukan diskusi yang berorientasi dan tentu saja sebuah pertanyaan, apa pun yang Anda inginkan.
MDMarra
2
Per alasan dekat, "Pertanyaan ini ambigu, samar-samar , tidak lengkap, terlalu luas , atau retoris dan tidak dapat dijawab secara wajar dalam bentuk saat ini."
ceejayoz
4
@ceejayoz Saya tidak berpikir itu kabur atau terlalu luas sama sekali. Itu adalah pertanyaan yang terdefinisi dengan baik yang mungkin memiliki jawaban yang rumit, tetapi tidak terlalu jauh "Halp! My thingz don't boot rite!". Anda dipersilakan untuk langsung masuk ke Server Fault Chat dan diskusikan jika Anda mau. Ada banyak dari kita yang membicarakannya di sana, termasuk OP.
MDMarra

Jawaban:

29

Bukankah ini situasi di mana Anda harus merekayasa sekitar dependensi melingkar? Atur penundaan power-on di BIOS server. Anda memiliki beberapa server DNS, jadi itu nilai tambah. Caching DNS? Apakah ini semudah menggunakan alamat IP atau file host untuk NFS atau jaringan penyimpanan Anda? Anda tidak menyebutkan teknologi virtualisasi tertentu, tetapi dimungkinkan untuk mengatur prioritas boot VM di VMWare, misalnya ... Apakah ini melintasi beberapa server host?

Kalau tidak, boot drive berbasis SSD dapat membantu. Gunakan distro dengan proses boot Pemula. Potong daemon.

putih
sumber
5
Saya pikir ini adalah jawaban yang bagus. Perbaiki dependensi melingkar sebaik mungkin.
mfinni
Jawaban yang bagus. Ini adalah alasan utama file host masih ada. Mereka memberikan solusi untuk sebelum DNS tersedia, atau untuk kasus-kasus di mana Anda perlu mencari bahkan jika DNS tidak tersedia (yaitu cluster Oracle RAC).
Christopher Cashell
11

Tergantung pada status UPS Anda, ini bisa menjadi salah satu dari sedikit kasus penggunaan di mana ACPI hibernate mungkin merupakan ide yang bagus. Umumnya restore-from-hibernate mengalahkan boot-from-scratch, terutama dalam hal sistem berbasis SSD dengan RAM rendah. Jika Anda memiliki kemampuan, langkah 'shutdown' untuk perangkat lunak UPS Anda dapat diatur untuk hibernasi server DNS.

sysadmin1138
sumber
Itu sebenarnya ide yang menarik - satu-satunya downside adalah menyalakan kembali mesin (atau membangunkannya dari tidur). Jika PSU diatur ke "secara otomatis hidup setelah kehilangan daya" ini harus bekerja selama mesin benar-benar kehilangan daya, jika tidak, Anda hanya perlu mengetahui kasus sudut di mana sinyal hibernasi dikirim tetapi kemudian daya AC kembali sebelum UPS mati.
voretaq7
2
@ Voretaq7 Jika saya melakukan ini, saya akan memiliki DNS Primer berperilaku normal (tidak ada tipuan ACPI), dan DNS Sekunder melakukan trik ini. Ini akan memperlambat startup layanan di tempat lain karena kegagalan DNS, tetapi layanan masih akan mulai. Jika tidak, beberapa sihir wake-on-LAN mungkin perlu terjadi.
sysadmin1138
WoL akan benar-benar menyelesaikan ini dengan baik
voretaq7
Kami memiliki UPS yang gemuk, sangat gemuk .. dan ada perangkat lunak Apcupsd dalam beberapa jenis konfigurasi jaringan .. Sebenarnya saya sangat menyukai ide ini. Kami akan meluncurkan WOL di jaringan untuk keperluan lain juga, nanti di bulan ini.
Tom O'Connor
6

Saya dapat merekomendasikan sistem NetBSD yang sangat kecil pada SSD, tetapi jika Anda memiliki hati di Linux ada dua opsi yang segera muncul dalam pikiran:

  • Damn Small Linux adalah salah satu distro Linux kecil dengan nama besar. Saya tidak tahu apa waktu booting mereka, tapi itu harus relatif singkat.
  • Slax sedikit lebih dapat dikustomisasi sejak awal, dan mungkin sedikit lebih cepat.

Ada juga pilihan solusi custom / embedded yang sangat kecil seperti ini (sistem berbasis ARM $ 99 pada modul dengan waktu boot 1 detik (ish). Ini bukan perangkat keras komoditas tetapi bisa disimpan di sudut yang sunyi. dari pusat data dan dibiarkan berjalan selamanya ...

voretaq7
sumber
3

Dalam kebanyakan pengaturan, DNS adalah layanan infrastruktur yang paling penting. Jika rusak, yang lain akan rusak juga. Kesimpulannya adalah bahwa server DNS tidak boleh bergantung pada server lain.

Jika Anda benar-benar membutuhkan NFS untuk boot - buat DNS-server Anda NFS-server tersebut (ini juga melanggar aturan) - tetapi pastikan untuk mengekspor ro saja dan pastikan Anda tidak dapat meletakkan NFS-server Anda dalam bahaya serangan DoS.

Kemungkinan solusi yang lebih baik adalah pendekatan (HA) yang berbeda untuk menyediakan layanan NFS yang diperlukan untuk boot, sehingga memutus ketergantungan melingkar ( nscd dapat membantu pada server NFS juga).

Pembaruan 2011-11-17 di NFS: Dari salah satu komentar Anda, saya melihat bahwa NFS sedang digunakan untuk / home-dirs. Pengguna teknis lokal tidak boleh memilikinya. Ada lagi yang harus dipasang melalui autofs dengan bg, keras, intr.

Nils
sumber