LVM(Logical Volume Manager) on Linux

ÇÊÀÚ : ¼­±âÇö(nefsall@kldp.org)
µ¥ºñ¾È-kr °³¹ßÀÚ

 

     

    LinuxÀÇ ¾²ÀÓ»õ°¡ Á¡Â÷ ´ëÇüÈ­, °í¼ÓÈ­¸¦ ¿ä±¸ÇÏ°Ô µÇ¸é¼­, ¸¹Àº ºÎºÐÀÌ ±×¿¡ ¸ÂÃß¾î Çâ»óµÇ°í ÀÖ´Ù. 64 Bit ÇÁ·Î¼¼¼­, ±â°¡¹ÙÀÌÆ®(Giga Byte : 2^30 Byte)´ëÀÇ ¸Þ¸ð¸®, ±â°¡ºñÆ®±Þ ³×Æ®¿÷, Å׶ó¹ÙÀÌÆ®(Tera Byte : 2^40 Byte) ½ÉÁö¾î Æä¶ó¹ÙÀÌÆ®(Pera Byte : 2^50 Byte) ±Ô¸ðÀÇ ÆÄÀϽýºÅÛ... ÀÌ·ç ¸»ÇÒ ¼ö ¾ø´Â º¯È­°¡ ½Ã½Ã°¢°¢ ÀϾ°í ÀÖ´Ù.

    ¿ÃÇØ ÃÊ, Linux Kernel 2.4 °¡ ¹ßÇ¥µÇ¸é¼­ ¸¹Àº ±â´É Çâ»ó°ú Ãß°¡°¡ ÀÌ·ç¾îÁ³´Ù. À§¿¡ ¾ð±ÞÇÑ ±â¾÷¼öÁØÀÇ ±Ô¸ð¸¦ ¾î´À Á¤µµ ¸¸Á·½Ãų ¼ö ÀÖ°Ô µÇ¾ú´Ù. ±×Áß¿¡ ´«¿¡ ¶ç´Â °ÍÀÌ ¹Ù·Î LVM¸¦ ±âº»À¸·Î Áö¿øÇÑ´Ù´Â °ÍÀÌ´Ù.

 

1. LVM À̶õ?

    LVM Àº Logical Volume Manager ÀÇ ¾àÀڷμ­, ÀúÀåÀåÄ¡µéÀ» Á»´õ È¿À²ÀûÀÌ°í À¯¿¬ÇÏ°Ô °ü¸®ÇÒ ¼ö ÀÖ´Â Ä¿³ÎÀÇ ºÎºÐ°ú ÇÁ·Î±×·¥À» ¸»ÇÑ´Ù. óÀ½¿¡´Â IBM¿¡¼­ °³¹ßµÇ¾ú´Âµ¥, ±×ÈÄ¿¡ OSF(ÇöÀç´Â OpenGroup http://www.opengroup.org)¿¡¼­ Â÷¿ëÀ» ÇÏ¿© OSF/1 operating system ¿¡¼­ ¾²¿´´Ù. Áö±ÝÀº HP-UX, Digital Unix operating system, AIX µîÀÇ »ó¿ë À¯´Ð½º¿¡¼­ ¾²°í ÀÖ´Ù. ¸®´ª½º ¹öÀüÀº ÇöÀç HP-UXÀÇ °ÍÀ» ¸ðµ¨·Î ÇÏ¿© Sistina Software »ç(http://www.sistina.com)¿¡¼­ open source·Î °³¹ßÇÏ°í ÀÖ´Ù.

    LVM À» ÀÌÇØÇÏ·Á¸é ¸ÕÀú Software RAID (Redundant Array of Inexpensive Drives)¸¦ ¾ð±ÞÇØ¾ß Çϴµ¥, ÀÌ µÑÀº ºñ½ÁÇϸ鼭µµ Å« Â÷ÀÌ°¡ ÀÖ´Ù.
    ºñ½ÁÇÑ Á¡Àº ¿©·¯ ¹°¸®ÀûÀÎ µð½ºÅ©µéÀ» ÇϳªÀÇ ³í¸®ÀûÀÎ µð½ºÅ©Ã³·³ ´Ù·ê ¼ö ÀÖ°Ô ÇÔÀ¸·Î¼­ Á¶ÇÕ¹æ¹ý¿¡ µû¶ó °í¿ë·®, °í¼Ó, µ¥ÀÌÅÍÀÇ ¹«°á¼ºÀ» ½ÇÇöÇÏ´Â Á¡ÀÌ´Ù.
    ÇÏÁö¸¸ ºÐ¸íÇÏ°Ô ´Ù¸¥ Á¡ÀÌ Àִµ¥. lvmÀº raidº¸´Ù °ü¸® ¹× È®ÀåÀÌ ºñ±³Àû ½¬¿î ¹Ý¸é, raid¿¡´Â lvm¿¡´Â ¾ø´Â disk mirroring(RAID level 1), Parity Stripe (RAID level 4,5) µîÀÇ ¹æ½ÄÀÌ À־ ¼Óµµ ¶Ç´Â µ¥ÀÌÅÍÀÇ ¹«°á¼ºÀ» º¸Àå ¹ÞÀ» ¼ö ÀÖ´Ù.

    ±×·¯³ª ÀÌ·± Â÷ÀÌÁ¡¿¡µµ ºÒ±¸ÇÏ°í lvm°¡ ÁÖ¸ñÀ» ¹Þ´Â ÀÌÀ¯´Â ´ÙÀ½°ú °°´Ù.

    ¡¤½¬¿î °ü¸®.
    ¡¤¼­·Î ´Ù¸¥ ¸¹Àº µð¹ÙÀ̽º Á¶ÇÕ Áö¿ø.
    ¡¤Á÷°üÀûÀÎ ÀúÀå ÀåÄ¡·ÎÀÇ Á¢±Ù.
    ¡¤¶Ù¾î³­ È®À强.
    ¡¤¹ÏÀ»¸¸ÇÑ ¾ÈÀü¼º°ú È¿À².
    ¡¤½º³À¼¦ ±â´É Áö¿ø.  

    ÀÌ¿Í °°Àº Ư¡µé·Î ÀÎÇØ »ç¿ëÀÚµéÀÌ ¾ò´Â À̵æÀº ¸¹´Ù.

    ¿ì¼±, pc ±Þ ½Ã½ºÅÛ »ç¿ëÀÚµéÀÇ °¡Àå Å« °í¹Î ÁßÀÇ Çϳª°¡ ½Ã½ºÅÛÀ» óÀ½ ¼³Ä¡ÇÒ ¶§¿¡ ÆÄƼ¼ÇÀÇ ±¸¼ºÀ» ¾î¶»°Ô ÇÒ °ÍÀΰ¡ ÀÏ °ÍÀÌ´Ù. ÆÄƼ¼ÇÀº Çѹø ±¸¼ºÇØ ³õÀ¸¸é ¹Ù²Ù±â°¡ ½±Áö ¾Ê±â ¶§¹®ÀÌ´Ù. ¶Ç ÆÄƼ¼ÇÀÌ °¡µæ Â÷±â¶óµµ ÇÏ¸é ¾î·Æ°Ô ¹é¾÷À» Çϰųª ´«¹°À» ¸Ó±Ý°í(?) ÀڷḦ Áö¿ö¾ß ÇÒ °æ¿ìµµ ½É½ÉÄ¡ ¾Ê°Ô »ý±â±â ¸¶·ÃÀÌ´Ù. ÇÏÁö¸¸ LVM¸¦ ¾²¸é °£´ÜÇÏ°Ô ÀúÀå°ø°£À» È®Àå, Ãà¼Ò ÇÒ ¼ö Àֱ⠶§¹®¿¡ ±×·± °í¹ÎÀ» ´ú ¼ö ÀÖ´Ù.

    ´Ù¸¥ ¿¹·Î, Áß¼ÒÇü ¼­¹ö¿¡¼­´Â ºñ±³Àû ÀûÀº ºñ¿ëÀ¸·Î ´ë¿ë·® ÀúÀå ÀåÄ¡¸¦ ±¸ÇöÇÏ´Â °ÍÀÌ °¡´ÉÇØÁø´Ù. ±×¸®°í, ¹é¾÷ ¾øÀÌ ±âÁ¸ÀÇ È¯°æÀ» À¯ÁöÇÑ Ã¤ È®ÀåÀÌ °¡´ÉÇϱ⠶§¹®¿¡ (¹°·Ð ¹é¾÷Àº *¾ðÁ¦³ª* Áß¿äÇÏ´Ù.) À¯Áöº¸¼ö¸é¿¡¼­ »ó´çÇÑ À̵æÀÌ ÀÖÀ» °ÍÀÌ´Ù.

 

2. ±âº» Áö½Ä

    ÀϹÝÀûÀ¸·Î À¯´Ð½º ½Ã½ºÅÛ¿¡¼­ ÀúÀå ÀåÄ¡¸¦ ¾²´Â ¹æ¹ýÀº ±× ÀåÄ¡ÀÇ ºí·Ï µð¹ÙÀ̽º(Block Device)¿¡ ÆÄÀÏ ½Ã½ºÅÛ (File System)À» ¸¸µé¾î¼­ (´Ù¸¥ Ç¥ÇöÀ¸·Î´Â Æ÷¸Ë(Format)ÇÑ´Ù¶ó°í ÇÏÁö¸¸ À¯´Ð½ºÀÇ ¼¼°è¿¡¼­´Â Àß ¾²Áö ¾Ê´Â´Ù.) µð·ºÅ丮¿¡ ¸¶¿îÆ® ½ÃÅ°´Â °ÍÀÌ´Ù. ¿¹¸¦ µé¾î, µÎ¹ø° ¹ö½ºÀÇ ÇÁ¶óÀ̸Ӹ® ide µð½ºÅ©ÀÇ Ã¹¹ø° ÆÄƼ¼Ç¿¡ reiserfs ÆÄÀÏ ½Ã½ºÅÛÀ» ¸¸µç ÈÄ, /debian/ftp ¶ó´Â µð·ºÅ丮¿¡ ¸¶¿îÆ®¸¦ ½ÃŲ´Ù¸é ´ÙÀ½°ú °°Àº ÀýÂ÷¸¦ ¹âÀ» °ÍÀÌ´Ù.

    # mkfs -t reiserfs /dev/hdc1
    # È­¸é¿¡ ³ª¿À´Â Áú¹®¿¡ y ¶ó°í ´äº¯
    # mount -t reiserfs /dev/hdc1 /debian/ftp

    lvmÀ» ½áµµ ¸¶Âù°¡Áö ÀýÂ÷¸¦ ¹â´Â´Ù. ´ÜÁö, ½ÇÁ¦ ºí·Ï µð¹ÙÀ̽º°¡ ¾Æ´Ñ °¡»óÀÇ ºí·Ï µð¹ÙÀ̽º¸¦ ¾´´Ù´Â Á¡ÀÌ Æ²¸®´Ù.

    < ±×¸² 1 >
    ½ÇÁ¦ÀûÀ¸·Î lvmÀº Ä¿³Î¿¡¼­ ÆÄÀÏ ½Ã½ºÅÛ°ú ºí·Ï µð¹ÙÀ̽º »çÀÌ¿¡ À§Ä¡ÇÏ¿© µ¿ÀÛÇÑ´Ù. ÀϹÝÀûÀÎ ¹æ½Ä°ú lvm¿¡ ÀÇÇØ µ¿ÀÛÇÏ´Â ¹æ½ÄÀÇ Â÷ÀÌ´Â <±×¸²1>¿¡ Àß ³ªÅ¸³ª ÀÖ´Ù.

    lvmÀÇ µ¿ÀÛ ¹æ½ÄÀÇ ÀÌÇØ¿Í È°¿ëÀ» À§Çؼ­´Â ¸î °¡Áö ¿ë¾î¿¡ ´ëÇÑ »çÀüÁö½ÄÀÌ ÇÊ¿äÇÏ´Ù.

    1)  VG, PV, LV

    VG(Volume Group)Àº LVMÀÇ °¡Àå ±âº»ÀûÀÎ ¿ä¼ÒÀÌ´Ù. ½±°Ô ¸»ÇÏÀÚ¸é °¡»ó µð½ºÅ©¶ó°í ÇÒ ¼ö Àִµ¥, Çϳª ÀÌ»óÀÇ ½ÇÁ¦ ¹°¸®ÀûÀ¸·Î Á¸ÀçÇÏ´Â ºí·Ï µð¹ÙÀ̽º°¡ ¸ð¿©¼­ VG¸¦ ÀÌ·ç°Ô µÈ´Ù.

    ±× ¹°¸®ÀûÀÎ ºí·Ï µð¹ÙÀ̽º¸¦ PV(Physical Volume)¶ó°í Çϴµ¥, °ÅÀÇ ´ëºÎºÐÀÇ ÀåÄ¡¸¦ PV·Î ¾µ ¼ö ÀÖ´Ù. Çϵåµð½ºÅ© ¹× ±× ÆÄƼ¼Ç, ¼ÒÇÁÆ®¿þ¾î/Çϵå¿þ¾î RAID ÀåÄ¡, ½ÉÁö¾î Loopback ºí·Ï µð¹ÙÀ̽º(ÆÄÀÏ ½Ã½ºÅÛ»óÀÇ ÆÄÀÏÀ» ºí·Ï µð¹ÙÀ̽ºÃ³·³ ¾µ ¼ö ÀÖ°Ô ÇØÁØ´Ù)±îÁöµµ ¸»ÀÌ´Ù.

    PV¿Í ´ëºñµÇ´Â °ÍÀÌ LV(Logical Volume)ÀÌ´Ù. ÀÌ°ÍÀº °¡»ó ÆÄƼ¼ÇÀ̶ó°íµµ ÇÒ ¼ö Àִµ¥, VG¸¦ Àû´çÈ÷ ³ª´©¾î ÇÒ´çÇÑ °ÍÀÌ LVÀÌ´Ù. »ç¿ëÀÚ´Â LV¸¦ ÀÏ¹Ý µð½ºÅ©³ª ÆÄƼ¼Çó·³ ¾²¸é µÈ´Ù.

    Á¤¸®ÇÏÀÚ¸é, <±×¸²2>¸¦ º¸¸é ¾Ë ¼ö ÀÖµíÀÌ, Çϳª ÀÌ»óÀÇ PV°¡ ¸ð¿© VG¸¦ ÀÌ·ç°í, VG¸¦ °¡»óÀûÀ¸·Î ³ª´©¾î ÇÒ´çÇϸé LVÀÌ µÈ´Ù.

    < ±×¸² 2 >
    Âü°íÀûÀ¸·Î, ÇÑ ½Ã½ºÅÛ¿¡¼­ VG´Â ÃÖ´ë 99°³±îÁö ¸¸µé ¼ö ÀÖ°í, ÇϳªÀÇ VG¿¡´Â PV, LV ¸ðµÎ ÃÖ´ë 256°³±îÁö ÇÒ´çÇÒ ¼ö ÀÖ´Ù.

    2)  PE¿Í LE

    PE(Physical Extent)¿Í LE(Logical Extent)´Â °¢°¢ ¹°¸®Àû ÇÒ´ç´ÜÀ§¿Í ³í¸®Àû ÇÒ´ç´ÜÀ§¸¦ ¶æÇÑ´Ù. ÀÌ µÑÀº ¹°¸®ÀûÀÎ À§Ä¡³ª Å©±â´Â °°´Ù.
    ±×·¯¹Ç·Î PE°¡ LV¿¡ ÇÒ´çµÇ¸é LE°¡ µÈ´Ù¶ó°í º¼ ¼ö ÀÖ´Ù.

    <±×¸²3>¸¦ º¸¸é PE, LEÀÇ °ü°è°¡ Àß ¼³¸íµÇ¾î ÀÖ´Ù.

    < ±×¸² 3 >

    VG¸¦ ³ª´©¾î LV·Î ÇÒ´çÇÒ ¶§ LVMÀº Çϵåµð½ºÅ©ÀÇ ¼½ÅÍó·³ ÀÛÀº ´ÜÀ§·Î ÇÏÁö ¾Ê°í Àû´çÇÑ Å©±âÀÇ PE·Î ÇÏ°Ô µÈ´Ù. ±× ÀÌÀ¯´Â ÇÒ´ç´ÜÀ§°¡ ±ØÈ÷ ÀÛÀ¸¸é, ÇÒ´çÁ¤º¸°¡ ¾öû³ª°Ô Ä¿Áö°í, ±×¿¡µû¶ó ½Ã½ºÅÛÀÇ ¼º´Éµµ ´À·ÁÁú °ÍÀÌ´Ù. ¶ÇÇÑ ÇÒ´çÇÒ ¼ö ÀÖ´Â Å©±â¿¡µµ ÇÑ°è°¡ »ý±æ °ÍÀÌ´Ù. PEÀÇ Å©±â´Â VG¸¦ ¸¸µé ¶§¿¡ Á¤ÇØÁö´Âµ¥, ±×¿¡ µû¶ó¼­ VGÀÇ ÃÖ´ë Å©±â°¡ Á¤ÇØÁø´Ù. ÇϳªÀÇ VG¿¡´Â 65536°³±îÁö PE¸¦ ÇÒ´çÇÒ ¼ö ÀÖ°í, PEÀÇ Å©±â´Â ÃÖ¼Ò 8KB¿¡¼­ 2¹è¾¿ ´Ã¾î³ª ÃÖ´ë 512MB±îÁöÀÌ´Ù. ±×·¯¹Ç·Î VGÀÇ ÃÖ´ë Å©±âÀÇ ¹üÀ§´Â ÃÖ¼Ò 512MB(8KB x 65536)¿¡¼­ ÃÖ´ë 32TB(512MB x 65536)ÀÏ °ÍÀÌ´Ù.

    3)  VGDA

    PVÀÇ ¾Õ ºÎºÐ¿¡´Â VGDA(Volume Group Descriptor Area)¶ó´Â ºÎºÐÀÌ À־ VGÀÇ ¸ðµç Á¤º¸°¡ ±â·ÏµÈ´Ù. °°Àº VG¿¡ ¼ÓÇØ ÀÖ´Â PVµéÀº VGDAÀÇ ³»¿ëÀÌ °°´Ù.

    ±× ³»¿ëÀº, VGÀÇ À̸§, »óÅÂ, ¼ÓÇØÀÖ´Â PV, LVµé, PE, LEµéÀÇ ÇÒ´ç »óÅ µîÀÌ´Ù. LVMÀº ÀÌ VGDA ¸¦ ÂüÁ¶ÇÏ°í, °»½ÅÇϸ鼭 ¸ðµç ÀÏÀ» ¼öÇàÇÑ´Ù.

    4)  Linear Mapping LV ¿Í Striped Mapping LV

    ¾Õ¼­ ¾ð±ÞÇÑ ´ë·Î LVMÀº ¼ÒÇÁÆ®¿þ¾î RAID¸¦ ¾î´À Á¤µµ´Â ´ëüÇÒ ¼ö ÀÖ´Ù. lvm¿¡¼­´Â µÎ °¡Áö ¹æ½ÄÀ¸·Î LV¸¦ ¸¸µé ¼ö Àִµ¥, Linear RAID ¿Í ´ëÀÀµÇ´Â Linear Mapping ¹æ½Ä°ú RAID Level 0 °ú ´ëÀÀµÇ´Â Striped Mapping ¹æ½ÄÀÌ ±×°ÍÀÌ´Ù.  

    µÎ ¹æ½ÄÀÇ Â÷ÀÌÁ¡Àº µÎ°³ ÀÌ»óÀÇ ºñ¾îÀÖ´Â PV¸¦ °¡Áö°í ÀÖ´Â VG¿¡ LV¸¦ ÇÒ´çÇÒ ¶§¿¡, PE¸¦ ¾î¶»°Ô ¹èÄ¡½ÃÅ°´Â°¡ ÀÌ´Ù.

    Linear Mapping ¹æ½ÄÀº ÀϹÝÀûÀÎ °ÍÀ¸·Î½á, PE¸¦ ¼øÂ÷ÀûÀ¸·Î ÇÒ´ç½ÃŲ´Ù. ¿¹¸¦ µé¾î <±×¸²4>ÀÇ ¿ÞÂÊ ±×¸²À» º¸¸é, °¢°¢ 3°³ÀÇ PE°¡ ÀÖ´Â PV1, PV2À¸·Î ÀÌ·ç¾îÁø VG1¿¡ 4°³ÀÇ LE¸¦ °¡Áø LV1À» ÇÒ´çÇÑ´Ù°í ÇÒ ¶§¿¡, LVMÀº ¸ÕÀú PV1¿¡ 3°³ÀÇ PE¸¦ ¼øÂ÷ÀûÀ¸·Î ÇÒ´çÇÏ°í ³ª¸ÓÁö 1°³ÀÇ PE´Â PV2¿¡ ÇÒ´çÇÑ´Ù.

    ¹Ý¸é, Striped Mapping ¹æ½ÄÀº <±×¸²4>ÀÇ ¿À¸¥ÂÊ ±×¸²¿¡ ³ªÅ¸³ª ÀÖµíÀÌ, À§¿¡¼­¿Í °°Àº ȯ°æÀ¸·Î ÇÒ´çÇÑ´Ù°í ÇÒ ¶§¿¡, PE´Â Àû´çÇÑ Å©±âÀÇ Á¶°¢µé(stripes?)·Î ³ª´©¾îÁø´Ù. LVM´Â ±×°ÍÀ» µÎ PV¿¡ ºÐ»êÇÏ¿© ÇÒ´çÇÏ°Ô µÈ´Ù. ±×·¯¹Ç·Î µÎ PVµé¿¡ ÇÒ´çµÈ PEÀÇ °¹¼ö´Â °°´Ù.

    Striped Mapping ¹æ½ÄÀÇ ¸ñÀûÀº µÎ°³ ÀÌ»óÀÇ PV¸¦ µ¿½Ã¿¡ ÀÐ°í ¾¸À¸·Î¼­, ¼Óµµ Çâ»óÀ» ¹Ù¶ö ¼ö°¡ ÀÖ´Ù´Â °ÍÀÌ´Ù. ¹°·Ð, PVµéÀÌ ¼­·Î µ¶¸³ÀûÀÎ ÀåÄ¡À̾î¾ßÁö, °°Àº ÀåÄ¡ ³»ÀÇ ÆÄƼ¼ÇµéÀ̶ó¸é ¿ÀÈ÷·Á ¿ªÈ¿°ú°¡ ³¯ °ÍÀÌ´Ù.

    5)  Snapshots  

    ±Ô¸ð°¡ Å« ½Ã½ºÅÛ¿¡¼­ ¼­ºñ½ºÀÇ ÁßÁö¾øÀÌ ¹é¾÷À» ÇÒ ¶§¿¡ °¡Àå Å« ¹®Á¦Á¡ÀÌ ¹é¾÷µµÁß¿¡ µ¥ÀÌÅÍ°¡ º¯°æµÇ´Â °ÍÀÌ´Ù. ±×·¯¸é ¹é¾÷ ÀÚü°¡ ¹«¿ëÁö¹°ÀÌ µÉ ¼öµµ Àֱ⠶§¹®ÀÌ´Ù.

    ±×·± ¹®Á¦¸¦ ÇØ°áÇÏ·Á¸é ¾î´À ½ÃÁ¡¿¡ µ¥ÀÌÅÍ°¡ º¯°æµÇÁö ¸øÇÏ°Ô °íÁ¤½ÃÅ°´Â °ÍÀε¥, ±×·± ±â´ÉÀ» ±¸ÇöÇÑ °ÍÀÌ Snapshot LVÀÌ´Ù.

    Snapshot LV´Â ±âÁ¸ÀÇ LV¸¦ º¹»çÇÏ¸ç º°µµÀÇ Àбâ Àü¿ëÀÇ LV¸¦ ¸¸µå´Â °ÍÀ̱⠶§¹®¿¡, µ¥ÀÌÅÍ º¯°æÀ» °ÆÁ¤ÇÏÁö ¾Ê°í ¹é¾÷À» ¸¶Ä¥ ¼ö ÀÖÀ» °ÍÀÌ´Ù.  

     

3. Áغñ»çÇ×

    1)  Kernel  

    Ä¿³Î 2.4 ´ë¿¡´Â ±âº»ÀûÀ¸·Î LVMÀÌ µé¾î°¡ À־ µ¿ÀÛÀÌ °¡´ÉÇÏ°Ô Ä¿³Î ¼³Á¤À» ÇÏ°í ´Ù½Ã ÄÄÆÄÀÏ ÇØÁÖ¸é µÈ´Ù. Ä¿³Î ¼ºÁ¤Àº ¡°Multi-device support (RAID and LVM)¡±¿¡ ÀÖÀ¸¹Ç·Î Ä¿³Î ¾È¿¡ ³Öµµ·ÏÇÒ ¼öµµ ÀÖ°í, ¸ðµâ·Î »¬ ¼öµµ ÀÖ´Ù. Âü°íÀûÀ¸·Î ¸ðµâ À̸§Àº ¡®lvm-mod.o¡¯ÀÌ´Ù. Ä¿³Î 2.2 ´ë¿¡¼­µµ ÆÐÄ¡¸¦ Àû¿ëÇÏ¸é »ç¿ëÀÌ °¡´ÉÇѵ¥, ÇÊÀÚ´Â ½ÃÇèÇÏÁö ¸øÇß´Ù. LVM Tools tarballÀÇ PATCHES ¶ó´Â µ¥·ºÅ丮¿¡ ÀÖ´Â README¸¦ ÀÐ°í ½ÃµµÇغ¸±â ¹Ù¶õ´Ù. ¶Ç lvm ÆÐÄ¡ ÀÌ¿Ü¿¡ raw-io ÆÐÄ¡°¡ ÇÊ¿äÇÑ µ¥, ´ÙÀ½ÀÇ »çÀÌÆ®¿¡¼­ °¢ Ä¿³Î¿¡ ¸Â´Â ÆÐÄ¡¸¦ ±¸ÇÒ ¼ö ÀÖ´Ù.  

    http://www.kernel.org/pub/linux/kernel/people/sct/raw-io

    »õ·Î¿î Ä¿³Î·Î ºÎÆà ÇÑ ÈÄ¿¡ lvmÀ» »ç¿ëÇÒ ¼ö ÀÖ´ÂÁö È®ÀÎÀ» ÇÏ·ÁÆí /proc/lvm À̶ó´Â µð·ºÅ丮°¡ ÀÖ´ÂÁö È®ÀÎÇÏ¸é µÈ´Ù.

    2)  Tools

    LVM°¡ µ¿ÀÛÇÏ·Á¸é Ä¿³ÎÀÇ Áö¿ø ÀÌ¿Ü¿¡ ÇÁ·Î±×·¥ÀÌ ÇÊ¿äÇÏ´Ù. ´ÙÀ½ÀÇ »çÀÌÆ®¿¡¼­ ±¸ÇÒ ¼ö ÀÖ´Ù.

    ftp://ftp.sistina.com/pub/LVM

    ¼³Ä¡´Â ³Ê¹«µµ °£´ÜÇÏ´Ù. tarballÀ» Ǭ ÈÄ¿¡, ¸¸µé¾îÁø µð·ºÅ丮¿¡ µé¾î°¡¼­ ´ÙÀ½ÀÇ ¸í·ÉÀ» ÀÔ·ÂÇ϶ó.

    # ./configure && make && make install

    Ȥ½Ã¶óµµ ÇÁ·Î±×·¥À» Áö¿ì°í ½Í´Ù¸é.

    # make remove  

    DebianÀÇ °æ¿ì¿¡´Â Main FTP¿¡ ÆÐÅ°Áö°¡ ÀÖÀ¸¹Ç·Î ´ÙÀ½°ú °°Àº ¸í·ÉÀ¸·Î ¼³Ä¡ÇÒ ¼ö ÀÖ´Ù.

    # apt-get install lvm  

    3)  ÃʱâÈ­ ½ºÅ©¸³Æ®

    Ä¿³Î°ú ÇÁ·Î±×·¥ÀÌ ÁغñµÇ¾ú´Ù¸é ÀÌÁ¦ ºÎÆýóª ¼Ë´Ù¿î½Ã¿¡ ÀÚµ¿À¸·Î lvmÀ» È°¼ºÈ­, ºñ È°¼ºÈ­ ½Ãų ¼ö ÀÖ°Ô °íÃÄÁà¾ß ÇÑ´Ù. °¢ ¹èÆ÷ÆÇ ¸¶´Ù ÃʱâÈ­ ½ºÅ©¸³Æ®°¡ ´Ù¸£Áö¸¸ µé¾î°¡¾ß ÇÒ ¸í·ÉÀº ¸ðµÎ °°´Ù.

    LVMÀ» È°¼ºÈ­ ½ÃÅ°·Á¸é,

    # vgscan
    # vgchange -a y

    ºñÈ°¼ºÈ­ ½ÃÅ°·Á¸é,

    # vgchange -a n

    ¡œ Debian : ÆÐÅ°Áö·Î ¼³Ä¡Çß´Ù¸é ÀÌ °úÁ¤Àº ÇÊ¿äÇÏÁö ¾Ê´Ù. ÇÏÁö¸¸ ¼Ò½º·Î Á÷Á¢ ¼³Ä¡Çß´Ù¸é ¾Æ·¡ÀÇ ÀýÂ÷¸¦ µû¶ó¾ß ÇÑ´Ù.

    ¸ÕÀú ´ÙÀ½°ú °°Àº ³»¿ëÀ¸·Î /etc/init.d/lvm¸¦ ÀÛ¼ºÇÑ´Ù.

    --
    #!/bin/sh

    case "$1" in
      start)
            /sbin/vgscan
            /sbin/vgchange -ay
            ;;
      stop)
            /sbin/vgchange -an
            ;;
      restart|force-reload)
            ;;
    esac

    exit 0
    --

    ±×¸®°í ´ÙÀ½ÀÇ ¸í·ÉÀ» ½ÇÇàÇØÁØ´Ù.

    # chmod 0755 /etc/init.d/lvm
    # update-rc.d lvm start 26 S . stop 82 1 .

    * Redhat : /etc/rc.d/rc.sysinit¿¡¼­ ¡®Mount all other filesystems¡¯¶ó´Â ¹®±¸ÀÇ ¹Ù·Î Àü¿¡
       È°¼ºÈ­½ÃÅ°´Â ¸í·ÉÀ» ³Ö´Â´Ù.

    ¶Ç /etc/rc.d/init.d/halt¿¡ ºñÈ°¼ºÈ­½ÃÅ°´Â ¸í·ÉÀ» ³Ö´Â´Ù.

    * Slackware  : /etc/rc.d/rc.S¸¦ ´ÙÀ½°ú °°ÀÌ °íÄ£´Ù. ¾Æ·¡ÀÇ ³»¿ë ÀÌÈÄ¿¡,

    # Remount the root filesystem in read-write mod
    eecho ¡°Remounting root device with read-write enabled.¡±
    /sbin/mount -w -v -n -o remount /

    ´ÙÀ½°ú °°Àº ³»¿ëÀ» Ãß°¡ÇÑ´Ù.

    # This was an addition, limits vgscan to /proc thus
    # speeding up the scan immensely.
    /sbin/mount /proc

    # Initialize Logical Volume Manager
    /sbin/vgscan
    /sbin/vgchange -ay

    ±×¸®°í ¡®/sbin/mount -a¡¯¸¦ ´ÙÀ½°ú °°ÀÌ °íÄ£´Ù.

    # mount file systems in fstab
    (and create an entry for /)
    # but not NFS because TCP/IP is not yet configured
    /sbin/mount -a -v -t nonfs,proc  

 

4. ½ÇÁ¦ÀûÀÎ ÀÛ¾÷

    ÀÌÁ¦ º»°ÝÀûÀ¸·Î LVM¸¦ ´Ù·ç¾î º¸µµ·Ï ÇÏÀÚ.

    1)  PV ÃʱâÈ­

    ¸ÕÀú Á¦ÀÏ Ã³À½¿¡ ÇØ¾ß ÇÒ ÀÛ¾÷ÀÌ ºí·Ï µð¹ÙÀ̽º¸¦ PV·Î ÃʱâÈ­ÇÏ´Â °ÍÀÌ´Ù. PVÀÌ µÉ ¼ö ÀÖ´Â ÀåÄ¡·Î´Â, ÇÏµå µð½ºÅ© (/dev/hda, /dev/sda, ...), Çϵåµð½ºÅ©ÀÇ ÆÄƼ¼Ç (/dev/hda1, /dev/sda1, ...), ¼ÒÇÁÆ®¿þ¾î RAID µð¹ÙÀ̽º (/dev/md0, ...), Loopback µð¹ÙÀ̽º (/dev/loop0, ...) µîÀÌ ÀÖ´Ù.  

    ±×·¯³ª Çϵåµð½ºÅ©ÀÇ °æ¿ì »çÀü ÀÛ¾÷À» ÇØ¾ß ÇÑ´Ù. ¸¸¾à ÆÄƼ¼ÇÀ» PVÀ¸·Î ¸¸µé °æ¿ì ±× ÆÄƼ¼ÇÀÇ System ID°¡ 0x8e À̾î¾ß ÇÑ´Ù. °£´ÜÈ÷ fdisk¸¦ »ç¿ëÇؼ­ /dev/hda2¸¦ ¹Ù²Û´Ù¸é ´ÙÀ½°ú °°À» °ÍÀÌ´Ù.

    # fdisk /dev/hda
    Command (m for help): t
    Partition number (1-6): 2
    Hex code (type L to list codes): 8e
    Changed system type of partition 2 to 8e (Linux LVM)

    Command (m for help): w

    ±×¸®°í, ÆÄƼ¼ÇÀ» ³ª´©Áö ¾Ê°í Çϵåµð½ºÅ© Àüü¸¦ PV·Î ¸¸µé·Á°í ÇÒ ¶§¿¡, ÆÄƼ¼Ç Á¤º¸°¡ ±â·ÏµÇ¾î ÀÖ´Ù¸é PV·Î ¸¸µé¾îÁöÁö ¾ÊÀ» °ÍÀÌ´Ù. ÆÄƼ¼ÇÀ» fdiskµîÀ¸·Î ÀüºÎ Áö¿öµµ ¸¶Âù°¡ÁöÀε¥ ÇØ°á ¹æ¹ýÀº ddµîÀÇ ¸í·ÉÀ¸·Î ÆÄƼ¼Ç Á¤º¸¸¦ ±ú²ýÈ÷ Áö¿öÁÖ¸é µÈ´Ù. ¿¹¸¦ µé¸é ´ÙÀ½°ú °°´Ù.

    # dd if=/dev/zero of=/dev/sda bs=512 count=1

    (**ÁÖÀÇ** À§ÀÇ ¸í·ÉÀº ÇѼø°£¿¡ ÆÄƼ¼Ç Á¤º¸¸¦ ³¯¸®´Â ¹æ¹ýÀÌ´Ù. »ç¿ë»óÀÇ Æ¯º°ÇÑ ÁÖÀÇ°¡ ÇÊ¿äÇÏ´Ù.)

    PV ¸¦ ¸¸µå´Â ¸í·ÉÀº pvcreateÀε¥ »ç¿ë¹ýÀº °£´ÜÇÏ´Ù. ¾Æ·¡´Â ±× »ç¿ëÀÇ ¿¹ÀÌ´Ù.

    # pvcreate /dev/hda2
    pvcreate -- physical volume ¡°/dev/hda2¡±
    successfully created

    Ãß°¡ÀûÀ¸·Î, ±ÇÀåÇÏ´Â °ÍÀº Ưº°ÇÑ ÀÌÀ¯°¡ ¾øÀ¸¸é ÇϳªÀÇ Çϵåµð½ºÅ©¿¡´Â µÎ°³ ÀÌ»óÀÇ PV¸¦ ¸¸µéÁö ¾Ê´Â °ÍÀÌ ÁÁ´Ù. °ü¸®ÀûÀÎ ¸éÀ̳ª È¿À²ÀûÀÎ ¸é¿¡¼­ À̵æÀÌ ¸¹±â ¶§¹®ÀÌ´Ù.

    2)  VG ¸¸µé±â, À̸§ ¹Ù²Ù±â, Áö¿ì±â

    ¸¸µé¾îÁø PVµéÀ» ÇÕÃļ­ ÇϳªÀÇ VG·Î ¸¸µå´Â ¸í·ÉÀº vgcreateÀÌ´Ù.
    ¾Æ·¡´Â ±× ¿¹ÀÌ´Ù.

    # vgcreate -s 16m new_vg /dev/sda /dev/sdb /dev/sdc

    À§ÀÇ ¸í·ÉÀº ¼¼°³ÀÇ SCSI µð½ºÅ©¸¦ ÇÕÃļ­ new_vg¶ó´Â VG¸¦ ¸¸µç´Ù´Â °ÍÀÌ´Ù.
    ¿É¼Ç ¡®-s 16m¡¯Àº PEÀÇ Å©±â¸¦ 16MB·Î Á¤ÇÏ´Â °ÍÀε¥, ¸¸¾à ¿É¼Ç ¡®-s¡¯°¡ »ý·«µÇ¸é ±âº»ÀûÀ¸·Î PEÀÇ Å©±â´Â 4MB°¡ µÈ´Ù.  

    VG°¡ ¸¸µé¾îÁö¸é /dev/VolumeGroupName¶ó´Â Çü½ÄÀ¸·Î µð·ºÅ丮°¡ »ý±â°Ô µÈ´Ù. À§ÀÇ ¿¹¿¡¼­´Â /dev/new_vg °¡ µÉ °ÍÀÌ´Ù.

    VGÀÇ À̸§À» ¹Ù²Ù·Á¸é vgrename À̶ó´Â ¸í·ÉÀ» ¾Æ·¡¿Í °°ÀÌ ¾²¸é µÈ´Ù.

    # vgrename new_vg vg00

    VG¿¡ LV°¡ ³²¾ÆÀÖÁö ¾Ê°í ºñÈ°¼ºÈ­µÇ¾î ÀÖÀ¸¸é vgremove·Î Áö¿ï ¼ö ÀÖ´Ù. ºñÈ°¼ºÈ­½ÃÅ°´Â ¹æ¹ýÀº,

    # vgchange -a n vg00

    ÀÌ°í, ´ÙÀ½ÀÇ ¸í·ÉÀ¸·Î Áö¿öÁø´Ù.

    # vgremove vg00

    3)  VG È®Àå½ÃÅ°±â, Ãà¼Ò½ÃÅ°±â

    VGÀÇ È®Àå°ú Ã˼Ҵ PVÀÇ Ãß°¡, Á¦°Å·Î ÀÌ·ç¾îÁø´Ù.

    VG¿¡ PV¸¦ Ãß°¡ÇÏ´Â ¸í·ÉÀº vgextendÀε¥, vg00À̶ó´Â VG¿¡ PVÀÎ /dev/hda2¸¦ Ãß°¡ÇÏ·Á¸é ´ÙÀ½°ú °°ÀÌ ½ÇÇàÇØ¾ß ÇÑ´Ù.

    # vgextend vg00 /dev/hda2

    PV¸¦ VG¿¡¼­ Á¦°ÅÇÏ´Â ¸í·ÉÀº vgreduceÀÌ´Ù. ±×·¯³ª PV¿¡ PE°¡ ÇÒ´çµÇ¾î ÀÖÀ¸¸é Á¦°ÅµÇÁö ¾Ê´Â´Ù. ±× ÇÒ´çµÈ PE¸¦ ´Ù¸¥ PV·Î ¿Å°Ü¾ß Á¦°ÅµÉ °ÍÀÌ´Ù. ºó PVÀÎ /dev/hda2¸¦ vg00¿¡¼­ Á¦°ÅÇÏ·Á¸é,

    # vgreduce vg00 /dev/hda2

    4)  LV ¸¸µé±â, À̸§ ¹Ù²Ù±â, Áö¿ì±â

    VG¿¡ LV¸¦ ¸¸µé¸é /dev/VolumeGroupName/LogicalVolumeNameÀÇ Çü½ÄÀ¸·Î ºí·Ï µð¹ÙÀ̽º°¡ ¸¸µé¾îÁø´Ù. ÀÌ°ÍÀº ÀÏ¹Ý ºí·Ï µð¹ÙÀ̽º¿Í ´Ù¸¦ ¹Ù ¾ø´Â ¿ëµµ·Î ¾µ ¼ö ÀÖ´Ù.

    LV ¸¦ ¸¸µå´Â ¸í·ÉÀº lvcreateÀε¥ ÀϹÝÀûÀÎ ¿¹´Â ´ÙÀ½°ú °°´Ù.

    # lvcreate -L 4g -n data vg00

    À§ÀÇ ¸í·ÉÀº 4GB Å©±â·Î vg00À̶ó´Â VG¿¡ data¶ó´Â »õ·Î¿î LV¸¦ ¸¸µå´Â °ÍÀÌ´Ù. ¿É¼Ç ¡®-L¡¯Àº LVÀÇ Å©±â¸¦ ÁöÁ¤ÇÏ´Â °ÍÀε¥, ¼ýÀÚ µÚÀÇ Á¢¹Ì»ç¿¡ µû¶ó ¼ýÀÚÀÇ ´ÜÀ§°¡ ´Þ¶óÁø´Ù. k´Â KB, mÀº MB, g´Â GB, t´Â TB¸¦ ¶æÇÑ´Ù. ¸¸¾à, Á¢¹Ì»ç°¡ ¾È ºÙ¾îÀÖÀ¸¸é ¼ýÀÚÀÇ ´ÜÀ§´Â MB°¡ µÈ´Ù. ¡®-L¡¯ ´ë½Å ¡®-l¡¯¸¦ ¾µ ¼öµµ Àִµ¥, ¡®-l¡¯ µÚ¿¡´Â LEÀÇ °¹¼ö¸¦ ¾²¸é µÈ´Ù.

    LVÀÇ À̸§À» ¹Ù²Ù´Â °ÍÀº ¾Æ·¡ÀÇ ¸í·Éó·³ °£´ÜÇÏ°í,

    # lvrename /dev/vg00/data /dev/vg00/db

    Áö¿ì´Â °Í ¶ÇÇÑ °£´ÜÇÏ´Ù.

    # lcremove /dev/vg00/db

    5)  LV È®Àå½ÃÅ°±â

    LV¸¦ È®Àå½ÃÅ°´Â ¸í·ÉÀº lvextend Àε¥, ´ÙÀ½Àº ±× ¿¹ÀÌ´Ù.

    # lvextend -L +2g /dev/vg00/db

    À§ÀÇ ¸í·ÉÀº /dev/vg00/dbÀÇ Å©±â¸¦ 2GB ¸¸Å­ ´Ã¸°´Ù. ±âÁ¸ÀÇ Å©±â°¡ 4GB ¿´´Ù¸é, ¿É¼Ç ¡®-L 6g¡¯¸¦ Áá¾îµµ °°Àº °á°ú¸¦ º¸ÀÏ °ÍÀÌ´Ù. ¿ª½Ã ¿©±â¿¡¼­µµ ¿É¼Ç ¡®-l¡¯¸¦ ¾²¸é LE ´ÜÀ§·Î ´Ã¸± ¼ö ÀÖ´Ù.

    LVÀÇ Å©±â°¡ Ä¿Á³¾îµµ ÆÄÀÏ ½Ã½ºÅÛ¿¡´Â ¿µÇâÀ» ÁÖÁö ¾ÊÀ¸¹Ç·Î ÆÄÀÏ ½Ã½ºÅÛ °íÀ¯ÀÇ ÅøÀ» ÀÌ¿ëÇÏ¿© È®Àå ÇØÁÖ¾î¾ß ÇÑ´Ù.
    ÇÑ °¡Áö ÁÖÀÇÇØ¾ß ÇÒ °ÍÀº ÀÌ·¸°Ô Å©±â¸¦ ´Ã¸± ¶§ ¼ø¼­¸¦ µÚ¹Ù²Ù¸é Àý´ë ¾È µÈ´Ù´Â °ÍÀÌ´Ù. LV È®Àå ´ÙÀ½¿¡ ÆÄÀÏ ½Ã½ºÅÛÀÇ È®ÀåÀÌ´Ù.

    ´ÙÀ½Àº ÆÄÀÏ ½Ã½ºÅÛ º° È®Àå ¹æ¹ýÀÌ´Ù.

    * ext2 : ext2 ÆÄÀÏ ½Ã½ºÅÛÀÇ Å©±â¸¦ ¹Ù²Ü ¼ö ÀÖ´Â ¸í·ÉÀ¸·Î´Â resize2fsÀÌ Àִµ¥, e2fsprogs 1.19¹öÀü À̻󿡴 ±âº»ÀûÀ¸·Î Æ÷ÇԵǾî ÀÖ´Ù. ±× ÀÌÇÏÀÇ ¹öÀüÀ» ¾´´Ù¸é ext2resize¶ó´Â ÇÁ·Î±×·¥À» ´ÙÀ½ÀÇ »çÀÌÆ®¿¡¼­ ±¸ÇÒ ¼ö ÀÖ´Ù.

    http;//ext2resize.sourceforge.org

    ´ÙÀ½Àº ÀϹÝÀûÀÎ ext2 ÀÇ È®Àå ÀýÂ÷ÀÌ´Ù.

    # umount /var/lib/mysql
    # lvextend -L +10g /dev/databases/mysql
    # resize2fs /dev/databases/mysql
    # mount /dev/databases/mysql /var/lib/mysql

    LVM tool¿¡ Æ÷ÇԵǾîÀÖ´Â e2fsadmÀ» ¾²¸é LV È®Àå°ú ÆÄÀÏ ½Ã½ºÅÛÀÇ È®ÀåÀ» µ¿½Ã¿¡ ÇÒ ¼ö ÀÖ´Ù. ´ÙÀ½ÀÇ ¸í·ÉÀº,

    # e2fsadm?L +10g /dev/databases/mysql

    ´ÙÀ½ÀÇ µÎ ¸í·É°ú °°´Ù.

    # lvextend -L +10g /dev/databases/mysql
    # resize2fs /dev/databases/mysql

    * reiserfs : reiserfs´Â resize_reiserfs ¶ó´Â ¸í·ÉÀ¸·Î Å©±â¸¦ ¹Ù²Ü ¼ö ÀÖ´Ù.

    ¸¶¿îÆ®µÈ »óÅ¿¡¼­µµ Å©±â¸¦ ´Ã¸± ¼ö Àִµ¥, ±× ¿¹´Â ´ÙÀ½°ú °°´Ù.

    # lvextend -L +5g /dev/devel/cvs
    # resize_reiserfs -f /dev/devel/cvs

    ¾ð¸¶¿îÆ®Çؼ­ ´Ã¸®·Á¸é ´ÙÀ½ °°ÀÌ ÇÑ´Ù.

    # umount /var/cvs
    # lvextend -L +5g /dev/devel/cvs
    # resize_reiserfs -f /dev/devel/cvs
    # mount /dev/devel/cvs /var/cvs

    6)  LV Ãà¼Ò½ÃÅ°±â

    lvreduce´Â LVÀÇ Å©±â¸¦ ÁÙÀ̴µ¥, ´Ã¸± ¶§¿Í ¸¶Âù°¡Áö·Î ÆÄÀÏ ½Ã½ºÅÛ°ú º°°³·Î ÀÌ·ç¾îÁö¹Ç·Î µ¥ÀÌÅ͸¦ ÀÒ¾î¹ö¸± ¼ö ÀÖÀ¸´Ï »ó´çÈ÷ Á¶½ÉÇØ¾ß ÇÑ´Ù.

    ÀÛ¾÷ÀÇ ¼ø¼­´Â È®ÀåÇÒ ¶§¿Í´Â ¹Ý´ë·Î, ÆÄÀÏ ½Ã½ºÅÛÀÇ Ãà¼Ò ´ÙÀ½¿¡ LVÀÇ Ãà¼ÒÀÌ´Ù.

    °¢ ÆÄÀÏ ½Ã½ºÅÛ º° Ãà¼Ò ¹æ¹ýÀÌ´Ù.

    * ext2 : e2fsadm À» ¾²´Â °ÍÀÌ °£´ÜÇÏ´Ù.

    # umount /home
    # e2fsadm -L -2g /dev/vg00/home
    # mount /dev/vg00/home /home

    * reiserfs : Å©±â¸¦ ´Ã¸± ¶§¿Í´Â ´Þ¸® ¸¶¿îÆ® µÈ »óÅ¿¡¼­´Â ÁÙÀÏ ¼ö ¾ø´Ù.

    # umount /usr
    # resize_reiserfs -s -1g /dev/vg00/usr
    # lvreduce -L -1g /dev/vg00/usr
    # mount /dev/vg00/usr /usr

    7)  ¼³Á¤ÀÇ ¹é¾÷°ú º¹±¸  

    LVM ToolµéÀº ±âº»ÀûÀ¸·Î ¸î¸îÀ» Á¦¿ÜÇÏ°í µ¿ÀÛ ÀüÀÇ ¼³Á¤»óŸ¦ ÀÚµ¿À¸·Î ¹é¾÷ÇصдÙ.(Àý´ë µ¥ÀÌÅÍÀÇ ¹é¾÷ÀÌ ¾Æ´Ï´Ù!) ±× ¹é¾÷ÆÄÀϵéÀº /etc/lvmconf ¶ó´Â µð·ºÅ丮¿¡ VolumeGroupName.conf{,.[0-9].old}¶ó´Â À̸§À¸·Î ¸¸µé¾îÁø´Ù. µÚ¿¡ ¹øÈ£°¡ ºÙ¾îÀÖÁö ¾ÊÀº °ÍÀº ÇöÀçÀÇ ¼³Á¤ ³»¿ëÀÌ°í, ±× ¹øÈ£°¡ Ŭ¼ö·Ï ¿À·¡µÈ ³»¿ëÀÌ´Ù. ±×·¯¹Ç·Î ¹Ù·Î ÀüÀÇ ¼³Á¤ ³»¿ëÀ» ´ã°í ÀÖ´Â ÆÄÀÏ¿¡´Â À̸§ µÚ¿¡´Â .1.old°¡ ºÙ¾îÀÖ´Ù.

    ¸ÕÀú ¼³Á¤ ¹é¾÷ ÆÄÀÏÀÇ ³»¿ëÀ» º¸·Á¸é ´ÙÀ½°ú °°ÀÌ ÇÑ´Ù.

    # vgcfgrestore -f /etc/lvmconf/vg00.conf.1.old -ll -n vg00

    ÀÌ ÆÄÀÏÀ» ÀÌ¿ëÇØ ¼³Á¤À» º¹±¸ÇÏ·Á¸é ´ÙÀ½°ú °°ÀÌ ÇÑ´Ù.

    # vgchange -a n vg00
    # vgcfgrestore -f /etc/lvmconf/vg00.conf.1.old -n vg00
    # vgchange -a y vg00

 

5. È°¿ë

    ¸î °¡Áö À¯¿ëÇÑ È°¿ë ¿¹¸¦ º¸ÀÌ°Ú´Ù.

    1)  µÎ°³ÀÇ ide disk¸¦ ÇϳªÀÇ striped mapping LV·Î ¹­±â

    80GB Â¥¸®(½ÇÁ¦´Â ¾à 76.1GB) IDE Çϵåµð½ºÅ© µÎ °³¸¦ striped mapping LV ·Î ¹­´Â °úÁ¤ÀÌ´Ù.

    ¸ÕÀú ºí·Ï µð¹ÙÀ̽º À̸§ÀÌ /dev/hde, /dev/hdf ÀÎ µð½ºÅ©µéÀ» PV·Î ¸¸µç´Ù.

    # pvcreate /dev/hde /dev/hdf

    ±×·¸°Ô ¸¸µç PVµéÀ» ÇÕÃļ­ VG¸¦ ¸¸µç´Ù.

    # vgcreate vg00 /dev/hde /dev/hdf  

    ÀÌÁ¦ VG¿¡ LV¸¦ ¸¸µç´Ù.

    # lvcreate -i 2 -I 4 -L 152g -n striped_lv vg00

    À§ÀÇ ¸í·ÉÀ¸·Î 152GB Â¥¸® striped mapping LV°¡ ¸¸µé¾îÁø °ÍÀÌ´Ù. ¿É¼ÇÀ» ¼³¸íÇÏ¸é ¡®-i 2¡¯´Â µÎ°³ÀÇ PV¸¦ striped Çϴµ¥ ¾²°í, ¡®-I 4¡¯´Â PE¸¦ 4KB·Î ÂÉ°³¼­ PVµé¿¡°Ô ÀúÀåÇÑ´Ù´Â °ÍÀÌ´Ù. ¡®-I¡¯ ¿É¼Ç¿¡´Â 2^n (0 <= n <= 7), Áï 1, 2, 4, 8, 16, 32, 64, 128 ÀÇ ¼ýÀÚ¸¦ ¾µ ¼ö ÀÖ´Ù.
    ÆÄÀÏ ½Ã½ºÅÛÀ» ¸¸µé°í, ¸¶¿îÆ®¸¦ Çؼ­,

    # mkreiserfs /dev/vg00/striped_lv
    # mount /dev/vg00/striped_lv /mnt

    bonnie++ µîÀÇ º¥Ä¡¸¶Å· ÇÁ·Î±×·©À¸·Î ½ÃÇèÇغ» °á°ú, linear mapping LVº¸´Ù ¾à 1.5¹è¿¡¼­ 1.8¹è±îÁö ¼ÓµµÀÇ Â÷ÀÌ°¡ ÀÖ¾ú´Ù. ¹°·Ð ¾ï¼¼½º°¡ ¸¹¾ÆÁö¸é ¾î¶»°Ô µÇ´ÂÁö´Â ÇÊÀÚµµ ½ÃÇèÀ» ¸øÇß´Ù.

    2)  ¼¼·Î¿î µð½ºÅ©·Î PV ±³Ã¼Çϱâ

    Çϵåµð½ºÅ©¸¦ È®ÀåÇϸ鼭 ±âÁ¸¿¡ ÀÖ´Â Çϵåµð½ºÅ©¸¦ Á¦°ÅÇØ¾ß ÇÒ ¶§´Â ´ÙÀ½°ú °°Àº °úÁ¤À» °ÅÄ¡¸é µÈ´Ù.

    ȯ°æÀº /dev/hdd, /dev/sda, /dev/sdb°¡ vg01¿¡ ¼ÓÇØÀִµ¥, ±×Áß¿¡¼­ /dev/hdd¸¦ »©°í /dev/sdc¸¦ ´õÇÏ´Â °úÁ¤ÀÌ´Ù.

    ¸ÕÀú /dev/sdc ¸¦ PV ·Î ¸¸µé°í,

    # pvcreate /dev/sdc

    /dev/sdc¸¦ vg01¿¡ Ãß°¡ÇÑ ÈÄ¿¡,

    # vgextend vg01 /dev/sdc

    /dev/hddÀÇ PE µéÀ» /dev/sdc·Î ¿Å±ä´Ù.

    # pvmove /dev/hdd /dev/sdc

    ¼º°øÀûÀ¸·Î ¿Å°ÜÁ³À¸¸é vg01¿¡¼­ /dev/hdd¸¦ Á¦°ÅÇÑ´Ù.

    # vgreduce vg01 /dev/hdd

    3)  snapshot LV¸¦ ¸¸µé¾î¼­ ¾ÈÀüÇÑ ¹é¾÷Çϱâ

    µ¥ÀÌÅÍÀÇ º¯µ¿ÀÌ ¸¹Àº /varµîÀÇ µð·ºÅ丮´Â ¹é¾÷ µµÁß¿¡ µ¥ÀÌÅÍ°¡ ¾ûÅ°´Â ¼ö°¡ ÀÖ´Ù. ±×°ÍÀ» ¹æÁöÇϱâ À§Çؼ­, snapshot LV¸¦ ¸¸µé¾î µ¥ÀÌÅ͸¦ °íÁ¤½ÃŲ ÈÄ ¹é¾÷À» ÇÏ¸é µÈ´Ù.

    ÀÏ´Ü snapshot LV ¸¦ ¸¸µç´Ù.(ÇÑ ÁÙ·Î)

    # lvcreate -s -L 5g -n mysqlbackup /dev/vg01/mysql

    À§ÀÇ ¸í·ÉÀº /dev/vg01/mysql¿¡ ´ëÇÑ snapshot LVÀÎ /dev/vg01/mysqlbackup¸¦ ¸¸µç´Ù. ¿É¼Ç ¡®-s¡¯´Â ¸¸µé¾îÁú LV°¡ snapshot Çü½ÄÀÓÀ» Á¤ÇØÁÖ°í ÀÖ´Ù. ¿É¼Ç ¡®-L¡¯ ´Â LV ÀÇ ÃÖ´ë Å©±â¸¦ Á¤ÇØÁØ´Ù. ´ë°Ô ¿øº» LV¿Í Å©±â¸¦ °°°Ô ÇÏ´Â °ÍÀÌ ÁÁ´Ù. »ç½Ç snapshot LV´Â ¿øº»ÀÌ °»½ÅµÇ´Â ºÎºÐ¸¸ °íÁ¤½ÃÅ°·Á°í µ¥ÀÌÅ͸¦ °¡Á®¿Í LE¿¡ ÇÒ´çÇϱ⠶§¹®¿¡ ¸¹Àº LE°¡ ÇÊ¿äÇÏÁö ¾Ê´Ù.

    ÀÌÁ¦ ¸¸µç LV ¸¦ ¸¶¿îÆ® ½ÃŲ ÈÄ

    # mount /dev/vg01/mysqlbackup /mnt

    ¹é¾÷À» ÇÏ¸é µÈ´Ù.

    # tar cf /dev/rmt0 /mnt

    ¹é¾÷À» ¸¶ÃÆÀ¸¸é ¾ð¸¶¿îÆ®½ÃŲ ÈÄ¿¡ snapshot LV À» Áö¿î´Ù.

    # mount /mnt# lvremove /dev/vg01/mysqlbackup

    ³¡±îÁö ÀоîÁֽŠµ¶Àڵ鿡°Ô °¨»çµå¸°´Ù. ¾Æ¹«ÂÉ·Ï ÇÊÀÚÀÇ µÎ¼­¾ø´Â ±ÛÀÌ ¸¹Àº µµ¿òÀÌ µÇ¾úÀ¸¸é ÇÑ´Ù. ±âȸ°¡ µÇ¸é Áö¸éÀ» ÅëÇؼ­ ¿©·¯ºÐÀ» ´Ù½Ã ºÉ  ¼ö ÀÖÀ» °ÍÀÌ´Ù.




¡ã top

homeÀ¸·Î...