Dengan virtualisasi, apakah masih masuk akal untuk menggunakan beberapa titik pemasangan?

15

Pada tahun 2013, apakah masuk akal untuk tetap memiliki beberapa titik pemasangan pada gambar Linux baru, atau apakah mengalokasikan semua ruang untuk / lebih masuk akal?

Saya lebih suka menghindari reboot yang diperlukan untuk menambah ukuran titik pemasangan. Saya juga lebih suka memonitor ruang mount tunggal. Saya lebih suka tahu seluruh server di atas 70% penggunaan ruang drive, vs berurusan dengan masing-masing titik pemasangan.

Jeremy Mullin
sumber
Mengapa Anda harus memulai ulang untuk meningkatkan ukuran titik pemasangan? Saya pikir semua filesystem umum mendukung ekspansi online pada saat ini.
derobert

Jawaban:

17

Tentu itu masih bermanfaat. Anda tidak ingin proses pelarian untuk mengisi log dan menyebabkan / menjadi disk penuh. Juga, jika Anda menggunakan sesuatu seperti LVM Anda dapat melakukan ekspansi volume online.

Dengan banyak VM, Anda tetap ingin memisahkan IO. Anda mungkin menginginkan database Anda pada spindle yang terpisah dan satu-satunya cara untuk mencapai itu adalah dengan memiliki mount point terpisah untuk lokasi database Anda. Di samping basis data, ini membuat fleksibilitas lebih terperinci di jalan jika Anda melampaui desain asli Anda.

Jadi, singkatnya, ya masih ada alasan bagus untuk melakukan ini di 2013.

MDMarra
sumber
Bukankah mesin masih macet walaupun / var (atau / tmp) tetap penuh?
onionjake
2
@onionjake Tidak, belum tentu. Tetapi mereka akan crash jika /terisi.
ewwhite
Terima kasih atas catatan tentang log yang keluar dari kendali. VM khusus ini menggunakan SAN jadi saya percaya IO sudah didistribusikan dan tidak menjadi perhatian saya dalam situasi khusus ini.
Jeremy Mullin
Lebih jauh ke titik ini, jika Anda ingin satu VM untuk span beberapa VMFS pools di ESXi, Anda harus menggunakan beberapa disk virtual (yang muncul sebagai disk fisik ke VM). Anda masih dapat menggabungkan ini menjadi satu titik pemasangan dengan LVM jika Anda benar-benar menginginkannya, tapi menurut saya itu praktik yang buruk.
Paul Gear
5

Saat ini, saya tidak akan menggunakan terlalu banyak mount terpisah, tetapi mungkin beberapa kunci akan sangat membantu dalam administrasi sistem.

Hanya 2 atau 3, esp. dengan ukuran yang bervariasi. Ini tergantung pada apa yang Anda gunakan. Saya akan mengatakan hanya / (relatif stabil) dan / var (berubah). Bergantung pada os dan disk geometri, / boot juga mungkin diperlukan. / tmp kemungkinan mount tmpfs diatur oleh installer.

Volume yang berubah (/ var kebanyakan, tetapi bisa saja / var / log dan / var / lib / mysql dll.) Biasanya adalah apa yang perlu Anda khawatirkan dan rencanakan untuk ekspansi. Jadi jika memungkinkan, gunakan lvm dll. Untuk mengubah ukuran lebih mudah.

johnshen64
sumber
1
Saya pribadi menggunakan LVM dan boot harus di partisi sendiri, bukan bagian dari grup volume yang saya percaya (jika Anda menggunakan grub legacy).
4

Ya, saya masih menggunakan banyak partisi pada mesin virtual dan titik mount untuk pemantauan, keamanan dan persyaratan pemeliharaan.

Saya bukan penggemar mesin virtual mountpoint tunggal atau terbatas (kecuali mereka mesin sekali pakai). Saya memperlakukan VM sama seperti saya memperlakukan server fisik. Menyelaraskan partisi dengan beberapa Linux Filesystem Hierarchy Standard masih masuk akal dalam hal pemisahan logis dari executable, partisi data, temp dan penyimpanan log. Ini juga memudahkan perbaikan sistem. Ini benar terutama dengan mesin virtual dan server yang berasal dari templat.

(BTW, saya juga tidak suka LVM di mesin virtual ... Rencanakan lebih baik !! )

Dalam sistem saya, saya mencoba melakukan hal berikut:

  • / biasanya kecil dan tidak tumbuh banyak.
  • /boot ukurannya dapat diprediksi dan pertumbuhannya dikendalikan oleh frekuensi pembaruan kernel.
  • /tmptergantung pada aplikasi dan lingkungan, tetapi dapat diukur dengan tepat. Memantau secara terpisah membantu mengukur perilaku abnormal dan melindungi sistem lainnya.
  • /usr Harus dapat diprediksi, mengandung executable, dll.
  • /vartumbuh, tetapi jumlah churn data bisa lebih kecil. Senang bisa mengukurnya secara terpisah.
  • Dan partisi pertumbuhan. Dalam hal ini, itu /data, tetapi jika ini adalah sistem basis data, mungkin /var/lib/mysqlatau /var/lib/pgsql... Perhatikan bahwa ini adalah perangkat blok yang berbeda /dev/sdb,. Ini hanyalah VMDK lain pada mesin virtual ini, sehingga dapat diubah ukurannya secara independen dari VMDK yang berisi partisi OS nyata.

# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda2              12G  2.5G  8.8G  23% /
tmpfs                 7.8G     0  7.8G   0% /dev/shm
/dev/sda1             291M  131M  145M  48% /boot
/dev/sda7             2.0G   68M  1.9G   4% /tmp
/dev/sda3             9.9G  3.5G  5.9G  38% /usr
/dev/sda6             6.0G  892M  4.8G  16% /var
/dev/sdb1             360G  271G   90G  76% /data

Pemisahan beberapa partisi ini membuatnya lebih mudah untuk mengidentifikasi tren dan mendeteksi perilaku aneh; misalnya 4GB inti dumps /var, proses yang knalpot /tmp,

Normal masukkan deskripsi gambar di sini

Abnormal. Peningkatan mendadak /vartidak akan mudah untuk dideteksi jika satu /partisi besar digunakan. masukkan deskripsi gambar di sini


Baru-baru ini, saya harus menerapkan sejumlah parameter dan atribut mount filesystem (nodev, nosuid, noexec, noatime, nobarrier) untuk templat VM yang dikeraskan dengan keamanan. Partisi adalah persyaratan mutlak untuk ini karena beberapa partisi memerlukan pengaturan khusus yang tidak dapat diterapkan secara global. Titik data lain.

putih
sumber
2

Tentu beberapa titik mount masih memiliki kelebihan mereka, server virtual atau tidak.

Tetapi dengan virtualisasi Anda mungkin juga menggunakan templat mesin virtual, bukan? Dan sistem pemantauan Anda, seperti Nagios (dengan NConf?) Juga mendukung templat? Jika demikian, maka Anda harus melalui pertarungan titik mental ini hanya sekali.

Kembali ke topik.

Aku digunakan untuk membagi sistem saya dengan cara ini: /, /home, /usr, /var, /tmp(dan mungkin beberapa lainnya titik untuk data gunung), tapi itu berlebihan dan kerumitan. Saat ini gambar OS sederhana dengan hanya /, mungkin dengan terpisah /varadalah cara untuk pergi untuk saya; maka jika server virtual membutuhkan lebih banyak penyimpanan untuk data, maka saya memberikan gambar disk lain untuk itu dan memasangnya di mana pun diperlukan.

Janne Pikkarainen
sumber
Bagaimana Anda mendeteksi masalah dalam mengatakan, /optatau di /tmpbawah pengaturan partisi tunggal?
ewwhite
Jika server mulai memakan ruang disk dengan cepat, sesuatu seperti du -m --max-depth=4 / | sort -nr | head -n 30 | lessini ternyata efektif. Dan secara terkendali. lingkungan dipantau, berapa banyak tempat potensial yang Anda miliki untuk barang-barang semacam ini, sih? /var/log, /tmp, /opt/*/log, Mungkin sesuatu yang lain? Tidak terlalu sulit.
Janne Pikkarainen
1

Untuk server file, saya juga cenderung untuk me-mount /homevolume pada partisi / disk sendiri, dan menggunakan noexecopsi saat memasang itu. Paranoia, tetapi mencegah pengguna mengeksekusi file dari dalam folder rumah mereka.

Selain itu, saya cenderung untuk menempatkan /bootvolume pada mirror RAID 1 di semua drive, tapi sekali lagi, praktik lama saya ikuti bahwa saya belum melihat sisi negatifnya untuk saat ini.

Luke Kanada
sumber
1
Pertanyaannya adalah tentang server virtual, jadi sedikit tentang / boot pada RAID 1 tidak berlaku. Tapi itu pasti ide bagus di server fisik.
Paul Gear