RAID 1 Di Solaris 10

RAID (redundant array of inexpensive disks) adalah gabungan beberapa harddisk untuk menjalankan fungsi tertentu; bisa untuk mirroring, atau bisa juga untuk menggabungkan volume dari beberapa harddisk menjadi 1 kesatuan virtual disk. Ada beberapa level RAID. Di tulisan ini saya hanya mau menulis soal RAID 1. RAID 1 adalah RAID level yang digunakan untuk mirroring 2 atau lebih harddisk. Mirroring gampangnya dapat disebut sebagai kloning harddisk.

Misalkan sebuah harddisk yang berisi sistem operasi Solaris 10, digabungkan dengan sebuah harddisk lain menggunakan RAID 1. Harddisk kedua akan berisi sama persis seperti harddisk pertama. Harddisk kedua ini akan membackup harddisk utama bilamana terjadi kerusakan pada harddisk pertama; begitu pula sebaliknya (dengan kata lain kedua harddisk saling menjaga kelangsungan kerja sistem). Kedua harddisk bekerja secara redundant. Sistem tidak akan mati jika salah satu dari harddisk gagal berfungsi. Dengan demikian RAID 1/mirroring salah satu cara untuk meningkatkan performansi sistem. Sistem operasi yang bekerja di dalamnya akan melihat kedua harddisk tersebut sebagai sebuah harddisk saja (virtual disk). Lihat ilustrasi berikut ini :

raid 1

Solaris 10 memiliki fitur untuk membuat RAID, yaitu Solaris Volume Manager. Jadi dengan Solaris kita bisa membuat mirroring 2 atau lebih harddisk. Pada gambar di atas misalkan kita memiliki 2 harddisk dalam sebuah sistem. Ketika dibuat menjadi RAID 1, harddisk pertama akan dikenal sebagai submirror 1 dan harddisk kedua akan dikenal sebagai submirror 2. Virtual disk adalah perangkat yang dikenali oleh sistem operasi setelah proses mirroring dilakukan.

Berikut ini adalah contoh command line yang digunakan untuk membuat mirror dari 2 harddisk yang terpasang pada sebuah server dengan Solaris 10 sebagai sistem operasi. Harddisk pertama adalah c0t0d0 (sebagai system disk), harddisk kedua adalah c1t0d0.

  1. Mula-mula kita lihat dulu konfigurasi file vfstab untuk melihat mount point dari masing-masing slice. Contohnya seperti ini :
    # more /etc/vfstab
    /dev/dsk/c0t0d0s0  /dev/rdsk/c0t0d0s0   /             ufs   1   no      -
    /dev/dsk/c0t0d0s1    			swap           -    -  	-       -
    /dev/dsk/c0t0d0s3  /dev/rdsk/c0t0d0s3   /var          ufs   1   no      -
    /dev/dsk/c0t0d0s4  /dev/rdsk/c0t0d0s4   /opt          ufs   2   yes     -
    /dev/dsk/c0t0d0s5  /dev/rdsk/c0t0d0s5   /export/home  ufs   2   yes     -
  2. Kita harus membuat salinan dari VTOC (volume table of contents) yang berisi informasi partisi harddisk pertama.
    # prtvtoc /dev/rdsk/c0t0d0s2 | fmthard –s - /dev/rdsk/c1t0d0s2
  3. Langkah berikutnya adalah membuat metadb dari mirror yang akan kita buat. Metadb ini adalah file database yang akan menampung semua data konfigurasi mirror yang dibuat. Sebaiknya metadb ini diletakkan pada slice yang belum terpakai, dalam kasus ini metadb diletakkan pada slice 7.
    # metadb –a –c 3 –f c0t0d0s7 c1t0d0s7
  4. Tiap slice yang ada di dalam harddisk kita buat virtual devicenya dengan perintah metainit.
    # metainit –f d11 1 1 c0t0d0s0
    # metainit –f d12 1 1 c1t0d0s0
    # metainit d10 –m d11
    # metainit –f d21 1 1 c0t0d0s1
    # metainit –f d22 1 1 c1t0d0s1
    # metainit d20 –m d21
    # metainit –f d31 1 1 c0t0d0s3
    # metainit –f d32 1 1 c1t0d0s3
    # metainit d30 –m d31
    # metainit –f d41 1 1 c0t0d0s4
    # metainit –f d42 1 1 c1t0d0s4
    # metainit d40 –m d41
    # metainit –f d51 1 1 c0t0d0s5
    # metainit –f d52 1 1 c1t0d0s5
    # metainit d50 –m d51
  5. Setelah kita membuat virtual device untuk masing-masing slice, kita perlu memberitahu operating system bahwa root sistem sekarang berupa virtual device bukan slice harddisk lagi.
    # metaroot d10
  6. Restart server
    # shutdown -g0 -i6 -y
  7. Tambahkan virtual device yang berasal dari harddisk kedua ke mirror yang bersesuaian.
    # metattach d10 d12
    # metattach d20 d22
    # metattach d30 d32
    # metattach d40 d42
    # metattach d50 d52
  8. Lihat status mirror yang terbentuk dengan perintah # metastat , seharusnya pada tahap ini kedua harddisk sudah mulai melakukan proses sinkronisasi. Kalau anda melihat file vfstab setelah proses mirroring ini maka file ini sudah berbeda dengan yang kita lihat pada awal proses ini.
    # more /etc/vfstab
    /dev/md/dsk/d10  /dev/md/rdsk/d10   /             ufs   1   no      -
    /dev/md/dsk/d20    		    swap           -    -   -       -
    /dev/md/dsk/d30  /dev/md/rdsk/d30   /var          ufs   1   no      -
    /dev/md/dsk/d40  /dev/md/rdsk/d40   /opt          ufs   2   yes     -
    /dev/md/dsk/d50  /dev/md/rdsk/d50   /export/home  ufs   2   yes     -

Sebaiknya harddisk yang akan dijadikan mirror berada pada kontroler yang berlainan dengan sistem disk.  Pada contoh di atas, harddisk pertama dan kedua berada pada kontroler yang berlainan.

21 thoughts on “RAID 1 Di Solaris 10

  1. Pingback: Mirroring (RAID 1) di Solaris 10 « Just [invaleed]

  2. Pingback: Mirroring (RAID 1) Solaris 10 - localbyte

  3. Pingback: Mirroring (RAID 1) Solaris 10 « KOTAK

  4. Pingback: Blognya Tedy Tirtawidjaja » Unmirroring RAID 1 di Solaris 10

  5. Pingback: Mirroring (RAID 1) Solaris 10

  6. thank u

    sy ad p’tanyaan ni

    klo server ny punya 4 disk, 2 disk di mirror(disk0 dan disk1)

    partisi nya disk0 /, swap, /var, /pot, /oracle, /export/home

    disk yg 2 lg sy ingin mounting ke /oracle

    pertanyaan:
    1.bagaimana mounting ke 2 disk3 dan 4 tersebut ke /oracle pada

  7. Om tedy,
    Saya mempunyai system solaris 8
    saya ingin menambahkan 1 hard disk baru dengan 1 partition ke system yang lama
    selanjutnya saya ingin membuat directory di system yang lama sedangkan isinya di taruh di partition di disk yang baru.
    mohon bantuannya ya om,

    -sri-

  8. – pasang disknya
    – cek dgn command format sudah terdeteksi belum
    – create 1 partisi di slice 0 misalnya
    – newfs partisi baru tersebut
    – mount partisi itu misalnya /data

    ready to go…

  9. @ Sriwulandari :

    – pasang disknya
    – cek dgn command format sudah terdeteksi belum
    – create 1 partisi di slice 0 misalnya
    – newfs partisi baru tersebut
    – mount partisi itu misalnya /data

    ready to go…

  10. Misalnya kita sudah selesai mirroring solaris.Pertanyaannya adalah:
    1. Lalu bagaimana cara kita mengecek apakah mirroring kita berhasil atau tidak? 2. Apa indikatornya jika mirroring kita berhasil?
    3. Jika kita mempunyai 2 hard disk dan kita mirroring lalu kita cabut hard disk 1 dan kita biarkan hard disk 2 di server kemudian kita hidupkan server tersebut, lalu apakah dengan kondisi tersebut server bisa berjalan? Kalau misalnya server tersebut bisa berjalan apakah itu berarti mirroring kita berhasil? Kalau misalnya server tersebut tidak berjalan, bukankah kita sudah mirroring kedua hard disk tersebut?

    Terima Kasih atas jawabannya.

  11. @ arief :
    1. caranya tahu mirroring sukses apa tidak : boot dari disk mirrornya
    2. indikatornya saat boot dari disk mirror, proses berjalan normal, Solaris bisa up.
    3. selama Anda sudah benar mengkonfigurasi mirror & boot parameternya (set eeprom boot-disk disk1 disk2) pasti server tersebut bisa boot walaupun disk 1 dicabut. Kalau sampai tidak boot berarti ada yang salah selama proses mirroring.

Leave a Reply