Veritas Volume Manager Á¤¸®(VxVM, 3.2 ±âÁØ)
ÀÛ¼ºÀÚ °ü¸®ÀÚ ÀÛ¼º½Ã°£ 2007-08-06 15:31:36
 

VxVMÀÇ Physica disk´Â µÎ ºÎºÐÀ¸·Î ±¸¼ºµÊ
- private : VxVMÀÇ È¯°æ°ú °ü¸® Á¤º¸ ÀúÀå, default·Î 3¹ø slice°¡ »ç¿ëµÊ
- public : µ¥ÀÌÅÍ ÀúÀå, default·Î 4¹ø slice°¡ »ç¿ëµÊ

- private region
# private regionÀ» ±¸¼ºÇϴµ¥´Â ÇϳªÀÇ cylinder°¡ ÇÊ¿äÇÔ.
# VTOC(Volume Table Of Contents)¸¦ Á¶È¸ÇÏ¿© È®ÀÎ °¡´ÉÇÏ´Ù.(ex. # prtvtoc /dev/dsk/c0t0d0s2)

-- private region ÀÇ ÀÌ¿ë
# disk header : ÇϳªÀÇ µð½ºÅ©¿¡¼­ private regionÀÇ Á¤º¸¸¦ ÀúÀåÇÏ´Â ÇϳªÀÇ block.
- µð½ºÅ©ÀÇ ÇöÀç ¼ÒÀ¯ÀÚ : ÁöÁ¤µÈ È£½ºÆ®¿¡¼­ »ç¿ëÁßÀÎ µð½ºÅ©°¡ µð½ºÅ© ±×·ìÀÇ ÀϺÎÀÏ ¶§ ±× µð½ºÅ©´Â »ç¿ë ÁßÀÎ host id°¡ ÀúÀå.
¸¸¾à ´Ù¸¥ VxVMÀÌ ÀÌ µð½ºÅ©¿¡ accessÇϸé host id°¡ ÀÏÄ¡ÇÏÁö ¾ÊÀ¸¹Ç·Î »ç¿ë ÁßÀÎ ½Ã½ºÅÛ¿¡¼­ host id¸¦ ÇØÁ¦Çϱâ Àü±îÁö´Â access ºÒ°¡´ÉÇÏ´Ù.
- disk identifier : 64byte·Î ±¸¼ºµÈ µð½ºÅ©ÀÇ °íÀ¯ÇÑ ½Äº°ÀÚ
# configuration database(configdb)´Â µð½ºÅ© ±×·ìÀÇ È¯°æ Á¤º¸ ÀúÀå. default·Î VxVMÀº µð½ºÅ© ±×·ì´ç 4°³ÀÇ º¹»çº»À» ÀúÀåÇÔ.
- dgname : disk group name, °ü¸®ÀÚ°¡ ÁöÁ¤
- dgid : 64byteÀÇ ½Äº°ÀÚ·Î µð½ºÅ© ±×·ìÀÌ »ý¼ºµÉ ¶§ VxVMÀÌ »ý¼ºÇÔ.
- Records : µð½ºÅ© ±×·ìÀ» À§ÇÑ VxVM Virtual structure information.
# Kernel Log
- transaction commit, plex detaches, dirty-region og failure, first write to a volume, volume close information µîÀÌ ÀúÀå.
- ½Ã½ºÅÛÀÌ reboot µÇ°Å³ª crash³¯ °æ¿ì disk groupÀÇ »óŸ¦ º¹±¸¿¡ »ç¿ë.

- VxVM ÃʱâÈ­
# ÃÖ¼Ò ¿ä±¸»çÇ× : ÃÖ¼ÒÇÑ ÇϳªÀÇ µð½ºÅ©¸¦ Æ÷ÇÔÇÏ´Â rootdg¶ó´Â µð½ºÅ© ±×·ìÀÌ Á¸Àç ÇؾßÇÔ.
¡¤ system boot disk¸¦ encapsulation
¡¤ µð½ºÅ©¸¦ ÃʱâÈ­ ÇÏ°í rootdg µð½ºÅ© ±×·ì¿¡ ³ÖÀ½.
# ÃʱâÈ­ °úÁ¤
¡¤ VxVM¿¡ ÀÇÇØ µð½ºÅ©°¡ ÃʱâÈ­ µÉ ¶§ µð½ºÅ©´Â Ç¥ÁØ VxVM ȯ°æ ¼³Á¤À¸·Î ´Ù½Ã ÆÄƼ¼Å´×µÊ.
¡¤ ÃʱâÈ­µÈ µð½ºÅ©´Â 3¹ø°ú 4¹ø slice·Î¸¸ ±¸¼º
¡¤ 3¹ø sliceÀÇ Å©±â´Â ¸Å¿ì ÀÛ°í VxVMȯ°æÀÌ ÀúÀåµÊ.
¡¤ 4¹ø slice´Â µ¥ÀÌÅÍ°¡ ÀúÀåµÊ.
¡Ø vxinstall : µð½ºÅ©ÀÇ encapsulationÀ̳ª ÃʱâÈ­ÇÏ´Â À¯Æ¿¸®Æ¼

- ƯÁ¤ ÀåÄ¡¸¦ VxVMÀÌ »ç¿ëÇÏÁö ¾Ê°Ô ¼³Á¤
# Limited Exclusion
¡¤ /etc/vxvm¿¡ ´ÙÀ½ ÆÄÀÏÀ» ¼³Á¤Çϸé vxinstall, vxdiskadmÀ¯Æ¿¸®Æ¼¿¡¼­ ÃʱâÈ­ ½ÃÅ°´Â°ÍÀ» Á¦¿ÜÇÒ ¼ö ÀÖ´Ù.
¡¤ enclr.exclude : enclosure¸¦ Á¦¿Ü(ex. sena1)
¡¤ cntrls.exclude : controller¸¦ Á¦¿Ü(ex. c2)
¡¤ disk.exclude : ƯÁ¤ µð½ºÅ©¸¦ Á¦¿Ü(ex. c0t3d5)
# Global Exclusion
¡¤ /etc/vx/vxvm.exclude, /etc/vx/vxdmp.exclude // Á÷Á¢ ÆíÁýÇÏ¸é ¾ÈµÈ´Ù.
¡¤ vxinstallÀ̳ª vxdiskadm¸í·É¾î·Î ÆíÁýµÊ

- boot µð½ºÅ©¸¦ encapsulationÇϱâ À§ÇÑ ÇÊ¿ä»çÇ×
# boot µð½ºÅ©´Â ÃÖ¼ÒÇÑ »ç¿ëÇÏÁö ¾ÊÀº 2°³ÀÇ slice¸¦ Æ÷ÇÔÇØ¾ß ÇÑ´Ù.
# boot µð½ºÅ©´Â slice 2¿Í root, swap, var, opt, usr¸¦ Á¦¿ÜÇÑ ´Ù¸¥ slice¸¦ °¡Á®¼­´Â ¾ÈµÈ´Ù.
# boot µð½ºÅ©ÀÇ ½ÃÀÛÀ̳ª ³¡¿¡ ¾î¶² ÆÄƼ¼Ç¿¡µµ ¼ÓÇÏÁö ¾ÊÀº ÃÖ¼ÒÇÑ 2048 ¼½ÅÍÀÇ °ø°£ ÇÊ¿ä

1. ¼³Ä¡
- ÆÐÅ°Áö ±¸¼º
1. VRTSfsdoc : VxFS ¹®¼­
2. VRTSlic : Veritas ¶óÀ̼¾½º À¯Æ¿¸®Æ¼
3. VRTSvmdev : VxVM Çì´õ¿Í ¶óÀ̺귯¸® ÆÄÀÏ
4. VRTSvmdoc : VxVM »ç¿ë ¹®¼­
5. VRTSvmman : VxVM ¸ÇÆäÀÌÁö
6. VRTSvmsa : VxSA ÇÁ·Î±×·¥
7. VRTSvxfs : VxFS ÇÁ·Î±×·¥
8. VRTSvxvm : VxVM ÇÁ·Î±×·¥

- ÆÐÅ°Áö ¼³Ä¡
# pkginfo -d .
# pkgadd -d .
¡Ø ÆÐÅ°Áö ¼³Ä¡ ¼ø¼­ : 2 8 6 3 4 5

- License µî·Ï
# vxlicense -c // license µî·Ï
# vxlicense -p // µî·ÏµÈ license È®ÀÎ

# /opt/VRTSvlic/bin/vxlicinst // license µî·Ï
# /opt/VRTSvlic/bin/vxlicrep // µî·ÏµÈ license È®ÀÎ(3.5 ÀÌÈĺÎÅÍ)
# vxlicrep -g | -s | -e // -g´Â ÀϹÝÀû, -s´Â ª°Ô, -e´Â ÀÚ¼¼È÷


- vxinstall À¯Æ¿¸®Æ¼
# ½Ã½ºÅÛÀ» È®ÀÎÇÏ°í ¸ðµç µð½ºÅ© controller¸¦ È®ÀÎ.
# default·Î root µð½ºÅ©¸¦ Æ÷ÇÔÇÑ ¸ðµç µð½ºÅ©¸¦ encapsulationÇϱ⠶§¹®¿¡ Quick InstallationÀº ±ÇÀåµÇÁö ¾Ê´Â´Ù.
# boot diskÀÇ encapsulation
¡¤ VxVM ÃʱâÈ­ °úÁ¤¿¡¼­ boot µð½ºÅ©´Â encapsulationµÇ°í rootdg µð½ºÅ© ±×·ì¿¡ Æ÷ÇԵȴÙ.
¡¤ Áغñ»çÇ×
- boot ´Â root¿Í swap¸¸ Æ÷ÇÔÇØ¾ß ÇÑ´Ù.
- boot µð½ºÅ©¿¡ 10800°³ÀÇ ºó blockÀÌ ÀÖ¾î¾ß ÇÑ´Ù.
- primary boot µð½ºÅ©¸¦ Á¦¿ÜÇÑ ¸ðµç µð½ºÅ©´Â /etc/vx/vxvm.exclude, /etc/vx/vxdmp.exclude¿¡¼­ Á¦¿Ü½ÃÄÑ¾ß ÇÑ´Ù.
¡¤ encapsulationÀ» À§ÇÑ ÀÀ´äÀÌ ³¡³ª¸é 2¹ø ÀçºÎÆõÊ.

- VxVM ȯ°æ
# VxVMÀÌ ¼³Ä¡ µÇ¸é /etc/system ÆÄÀÏ¿¡ ¾Æ·¡¿Í ºñ½ÁÇÑ È¯°æÀÌ Ãß°¡µÈ´Ù. ÇÊ¿äÇÏÁö ¾Ê°Å³ª Á¸ÀçÇÏÁö ¾Ê´Â µå¶óÀ̹ö´Â ¿¡·¯°¡ ¹ß»ýÇϹǷΠ*¸¦ ºÙ¿© ÁÖ¼® ó¸®ÇÒ°Í.
* vxvm_START (do not remove)
forceload: drv/vxdmp
forceload: drv/vxio
forceload: drv/vxspec
forceload: drv/sd
forceload: drv/scsi
forceload: drv/pci
forceload: drv/ssd
rootdev:/pseudo/vxio@0:0
set vxio:vol_rootdev_is_volume=1
* vxvm_END (do not remove)

# /etc/rc.*¿¡ VxVM µî·Ï
¡¤ /etc/rcS.d/S25vxvm-sysboot // ºÎÆà ´Ü°è¿¡¼­ /¿Í /usr¸¦ ±¸¼º, ȯ°æ±¸¼º °¡´ÉÇÑ µð¹ö±ë parameterµµ Æ÷ÇԵȴÙ.(vxconfigd daemon)
¡¤ /etc/rcS.d/S35vxvm-startup1 // /¿Í /usrÀÌ °¡´ÉÇÑ »óÅ¿¡¼­ ´Ù¸¥ volumeµéÀÌ °¡´ÉÇϵµ·Ï ÇÑ´Ù.(vxrecover)
¡¤ /etc/rcS.d/S85vxvm-startup2 // I/O µ¥¸ó ½ÇÇà, /dev/vx/dks¿Í /dev/vx/rdsk¸¦ Àç»ý¼º. ¸ðµç µð½ºÅ© ±×·ìÀ» import, ¾Õ¿¡¼­ ½ÃÀÛµÇÁö ¾ÊÀº ¸ðµç volumeÀ» ½ÃÀÛÇÑ´Ù.(vxrecover)
¡¤ /etc/rcS.d/S86vxvm-reconfig // root ÆÄƼ¼Ç¿¡ fsck À¯Æ¿¸®Æ¼ ½ÇÇà
¡¤ /etc/rc2.d/S94vxnm-host_infod // VERITAS Volume Replicator(VVR)ÀÌ ¼³Ä¡µÇ°í ¶óÀ̼¾½ºµÈ »óÅ¿¡¼­ host_infod ÇÁ·Î±×·¥À» ½ÇÇàÇÔ.
¡¤ /etc/rc2.d/S94vxnm-vxnetd // VVR S/W optionÀÌ ¼³Ä¡µÇ°í ¶óÀ̼¾½ºµÈ »óÅ¿¡¼­ vxnetd ½ÇÇà.
¡¤ /etc/rc2.d/S95vxvm-recover // plexes¸¦ ºÙÀÌ°í VxVM watch daemonÀ» ½ÃÀÛ.(vxrecover, vxrelocd, vxsparecheck,, vxnotify)
¡¤ /etc/rc2.d/S96vmsa-server // remote client s/w¿¡ ÀÀ´äÇÏ´Â VxVM command server½ÃÀÛ.(/opt/VRTSvmsa/bin/vmsa_serverÆÄÀÏ ½ÇÇà, 2 jre and 1 cmdserver ½ÃÀÛ)
¡¤ /etc/rc0.d/K10vmsa-server or /etc/rc1.d/K10vmsa-server VMSA ¼­¹ö Á¾·á
¡¤ /etc/rc0.d/K99vxvm-shutdown // vxconfigd µ¥¸óÀ» Á¾·áÇÏ°í, vxspec, vxio, vxdmp µå¶óÀ̹ö ³»¸².

# ½ºÅ©¸³Æ®¿Í ÆÄÀϵéÀÇ À§Ä¡
¡¤ /opt/VRTS // VxVM man ÆäÀÌÁö
¡¤ /opt/VRTSlic // VxVM license installation and verification
¡¤ /opt/VRTSvxvm // VxVM technical documents and library files
¡¤ /opt/VRTSvmsa // VMSA server and client S/W.
¡¤ /usr/sbin/vx*
¡¤ /etc/vx/bin


- VxVM Object
# VxVM disk drive
¡¤ VxVMÀÌ µð½ºÅ©¸¦ °ü¸®ÇÏ°Ô µÇ¸é Á¸ÀçÇÏ´Â µð½ºÅ© ±×·ì¿¡ µð½ºÅ©¸¦ Ãß°¡, »õ·Î¿î µð½ºÅ© ±×·ì¿¡ µð½ºÅ©¸¦ Ãß°¡, free-disk pool¿¡ µð½ºÅ©¸¦ Ãß°¡ ÇÒ ¼ö ÀÖ´Ù.
¡¤ free-disk pool¿¡ µð½ºÅ©¸¦ Ãß°¡ÇÏ´Â ¹æ¹ýÀÌ Á¦ÀÏ ½±´Ù. vxdisksetup´Â VxVM formatÀ¸·Î µð½ºÅ©¸¦ º¯°æÇÑ ´ÙÀ½ ÇϳªÀÇ blank header¿¡ Á¤º¸ ±â·ÏÇÑ´Ù.
# VxVM disk group
¡¤ °øÅëµÈ ȯ°æÀ» °øÀ¯ÇÏ´Â VxVMµð½ºÅ©µéÀÇ ¸ðÀ½.
¡¤ °¢°¢ÀÇ µð½ºÅ© ±×·ìÀº ÇϳªÀÇ È£½ºÆ®¿¡ Á¾¼ÓµÈ´Ù. ÇöÀçÀÇ ¼ÒÀ¯±ÇÀº ¸ðµç configuration records¿¡ ±â·ÏµÇ°í, µð½ºÅ© ±×·ì ³»ÀÇ ¸ðµç µð½ºÅ©µéÀº configuration recordsÀÇ º¹»çº»À» ÀúÀåÇÑ´Ù.
¡¤ µð½ºÅ© ±×·ìÀº ÇϳªÀÇ È£½ºÆ®¿¡¼­ ´Ù¸¥ È£½ºÆ®·Î ¿Å°Ü°¥ ¼ö ÀÖ´Ù. ÇÏÁö¸¸ µÎ¹ø° È£½ºÆ®°¡ °°Àº array¿¡ ¿¬°áµÇ¾î ÀÖ´õ¶ó°í ÇöÀç ¼ÒÀ¯±ÇÀ» °¡Áø È£½ºÆ®¸¸ÀÌ access°¡ °¡´ÉÇÏ´Ù. µð½ºÅ© ±×·ìÀ» deportÇÑ ÈÄ¿¡ ´Ù¸¥ È£½ºÆ®¿¡¼­ importÇÏ¿© »ç¿ë.
¡¤ Shared disk group : µÎ °³ ÀÌ»óÀÇ È£½ºÆ®µéÀÌ °°Àº µð½ºÅ© ±×·ì¿¡ µ¿½Ã¿¡ access °¡´ÉÇÏ´Ù. È£½ºÆ®´Â node¶ó°í ºÒ¸². shared disk groupÀº ¿¬°áµÈ ¾î¶² node¿¡¼­µµ import°¡ °¡´ÉÇÏ°í cluster_naemeÀÌ µð½ºÅ©ÀÇ configuration record¿¡ ±â·ÏµÇ¸é ¸ðµç ¿¬°áµÈ node¿¡¼­ disk groupÀ» accessÇÒ ¼ö ÀÖ´Ù.
# Subdisks
¡¤ ¿¬¼ÓµÈ µð½ºÅ© ºí·ÏÀÇ ÁýÇÕ. ÇÑ °³ÀÇ µð½ºÅ© ³»¿¡¼­ ÇϳªÀÇ subdisk´Â µð½ºÅ© Àüü¸¦ ÀǹÌÇÑ´Ù.
¡¤ µð½ºÅ© ±×·ì ³»ÀÇ µð½ºÅ©¿¡¼­ public regionÀº Çϳª ÀÌ»óÀÇ ¼­ºêµð½ºÅ©·Î ³ª´©¾îÁú ¼ö ÀÖ´Ù.
¡¤ ¼­ºêµð½ºÅ©´Â public region¿¡¼­ °°Àº ±¸È¹¿¡ ÁßøµÇ°Å³ª °øÀ¯µÉ ¼ö ¾ø´Ù.
¡¤ °¡Àå ÀÛÀº ¼­ºêµð½ºÅ©ÀÇ Å©±â´Â 1 sector(512byte)ÀÌ°í °¡Àå Å« Å©±â´Â VxVMÀÇ public retionÀüü°¡ µÉ ¼ö ÀÖ´Ù.
# Plexes
¡¤ ¿©·¯ °³ÀÇ ¼­ºêµð½ºÅ©¸¦ ¹­¾î Plex¸¦ ±¸¼ºÇÒ ¼ö ÀÖ´Ù.
¡¤ Plex´Â Çϳª ÀÌ»óÀÇ ¹°¸® µð½ºÅ© ¿¡¼­ Çϳª ÀÌ»óÀÇ ¼­ºêµð½ºÅ©·Î ±¸¼ºµÈ´Ù.
¡¤ mirroring¿¡´Â plex°¡ ±¸º°µÇÁö¸¸ ±âŸ ´Ù¸¥ RAID level¿¡¼­´Â plex°¡ volumÀ» ÀǹÌÇÑ´Ù.
¡¤ ÇϳªÀÇ Plex´Â ÃÊ´ë 4096°³ÀÇ ¼­ºêµð½ºÅ©¸¦ Æ÷ÇÔÇÒ ¼ö ÀÖ´Ù.
¡¤ ÇϳªÀÇ Plex¿¡¼­ ¼­ºêµð½ºÅ©µéÀº Concatenation, Striping, Striping with parity ¹æ½ÄÀ¸·Î µ¥ÀÌÅ͸¦ ÀúÀå °¡´ÉÇÏ´Ù.
# Volumes
¡¤ VolumesÀº Çϳª ÀÌ»óÀÇ plex·Î ±¸¼ºµÈ´Ù.
¡¤ µÎ°³ÀÇ plex¸¦ °¡Áø ÇϳªÀÇ volumeÀº mirrorµÈ °ÍÀÓ.
¡¤ volumeÀº µÎ°³ ÀÌ»óÀÇ mirror¸¦ °¡Áú ¼ö ÀÖ´Ù.
¡¤ RAID-5 volumeÀº mirroringµÉ ¼ö ¾ø´Ù.
¡¤ µ¥ÀÌÅÍ ÀúÀå¿¡ »ç¿ëÇÏÁö ¾Ê´Â plex´Â logging structureµÉ ¼ö ÀÖ´Ù.


- »óÅ Á¤º¸¸¦ È®ÀÎÇÏ´Â ±âº» ¸í·É
# vxprint // »óÅÂ¿Í ±¸¼º Á¤º¸ Ãâ·Â.
# vxprint -ht // ÀÚ¼¼È÷ Ãâ·Â
¡¤ TY : Component type
¡¤ NAME : Component name
¡¤ ASSOC : Hierarchy association
¡¤ KSTATE : component state in kernel records
¡¤ LENGTH : component length in disk drive blocks
¡¤ PLOFFS : component offset within a plex
¡¤ STATE : component operationa state
¡¤ TUTIL0/PUTIL0 : Temporary and persistent control bits
# vxprint -spv // -p : plex Á¤º¸, -s : subdisk¿Í sub volume Á¤º¸, -v : volume Á¤º¸
# vxdisk list // ½Ã½ºÅÛ¿¡ ºÎÂøµÈ ¸ðµç µð½ºÅ©ÀÇ »óÅÂ¿Í ¼ÒÀ¯±ÇÀÇ ¿ä¾à Á¤º¸ Ãâ·Â.
# vxdisk list c1t3d0s7 // ÁöÁ¤ÇÑ µð½ºÅ©¿¡ °üÇÑ Á¤º¸ Ãâ·Â
¡¤ online : VxVM ¿ëÀ¸·Î µî·ÏµÈ disk, error : solaris¿ë disk
# vxdisk -s list // ÀÚ¼¼ÇÑ Á¤º¸ Ç¥½Ã
# vxdg list // ¸ðµç µð½ºÅ© ±×·ìÀÇ ÀÏ¹Ý Á¤º¸¿Í unique identfier Ãâ·Â.

# vxdg free // µð½ºÅ©ÀÇ ¿©À¯ °ø°£ Á¤º¸
# vxdg -g DGa free // µð½ºÅ© ±×·ì ³»ÀÇ °¢°¢ÀÇ µð½ºÅ©ÀÇ ¿©À¯ °ø°£ÀÇ ¾çÀ» Ãâ·Â.
# vxdg list rootdg // rootdg µð½ºÅ© ±×·ì ÀÇ ÀÚ¼¼ÇÑ Á¤º¸ Ãâ·Â

- VMSA
# VRTSvmsa : VMSA°ü·Ã ÆÐÅ°Áö.
# Server¿Í Client·Î ±¸¼º. VMSA server´Â VxVM ¼­¹ö´Ü¿¡ ¼³Ä¡. client´Â Çϳª ÀÌ»óÀÇ °ü¸® ½Ã½ºÅÛ¿¡ ¼³Ä¡
# VxVMÀÇ GUIȯ°æÀÇ °ü¸® ¼ÒÇÁÆ®¿þ¾î.
¡Ø ¿ø°ÝÁö¿¡¼­ VMSA °ü¸® GUI »ç¿ë ¹æ¹ý : setenv DISPLAY 192.168.10.10:0.0
# VMSA ¼­¹öÀÇ ½ÃÀÛ°ú Á¾·á
¡¤ /etc/rc2.d/S96vmsa-server // VMSA¼­¹öÀÇ ½ÃÀÛ ½ºÅ©¸³Æ®, vmsa_sercer¿Í cmdserverÀÇ ½ÃÀÛ ½ºÅ©¸³Æ®ÀÌ´Ù.
¡¤ /etc/init.d/vmsa_server start | stop // ¼öµ¿À¸·Î ½ÃÀÛ°ú Á¾·á
¡¤ /opt/VRTSvmsa/bin/vmsa_server // ¿É¼Ç ¼³Á¤ °¡´É.
-V : VMSA¼­¹öÀÇ ¹öÀü Ç¥½Ã
-q : ¼­¹ö°¡ ½ÇÇà ÁßÀÎ °æ¿ì üũ¸¦ À§ÇÑ Äõ¸®
-k : ¼­¹ö ÇÁ·Î¼¼½º Á¾·á
-r : read-only ¸ðµå·Î ½ÃÀÛ
-u : ¼­¹ö¿¡ ¿¬°áµÈ Ŭ¶óÀ̾ðÆ® »ç¿ëÀÚ Ç©
-h : µµ¿ò¸» Ç¥½Ã
# VMSA ClientÀÇ ½ÃÀÛ
¡¤ /opt/VRTSvmsa/bin/vmsa server_name &

- vxdiskadm
# VxVMÀÇ °ü¸®¿Í ¿À·ù º¹±¸ µîÀ» Áö¿øÇÏ´Â Bourne shell script.

- vxdiskunsetup
# µð½ºÅ©¿¡¼­ ÀÌÀüÀÇ VxVM ȯ°æÀ» Á¦°Å
# /etc/vx/bin/vxdiskunsetup -C c2t3d0 // ÁöÁ¤ÇÑ µð½ºÅ©¸¦ VxVMÃʱâÈ­ ÀÌÀüÀÇ »óÅ·ΠµÇµ¹¸². -C´Â °­Á¦·Î Á¦°ÅÇÏ´Â ¿É¼Ç.

- vxdisksetup
# VxVMÀÌ »ç¿ëÇÒ ¼ö ÀÖµµ·Ï µð½ºÅ©¸¦ ÃʱâÈ­, ±×·¯³ª µð½ºÅ© ±×·ì¿¡´Â Æ÷ÇÔ½ÃÅ°Áö ¾Ê´Â´Ù.
# µð½ºÅ©´Â free pool¿¡ ³²¾ÆÀִ´Ù.
# vxdisksetup c2t0d0 // µð½ºÅ©¸¦ VxVMÇü½ÄÀÇ ÆÄƼ¼ÇÀ¸·Î repartition¸¸ ¼öÇà
# vxdisksetup -i c2t0d0 // -i : VxVMÀÇ È¯°æÀÌ private region¿¡ ±â·ÏµÈ´Ù.
# vxdisksetup -i c2t0d0 privlen=10080 // private¿µ¿ªÀ» 10080 ¼½ÅÍÅ©±â·Î ÁöÁ¤, ±âº»°ªÀº 1024ÀÓ.

- vxdg
# µð½ºÅ© ±×·ìÀ» »ý¼ºÇÏ°í µð½ºÅ© ±×·ì¿¡ µð½ºÅ©¸¦ Ãß°¡ /Á¦°Å
# vxdg¸¦ ÅëÇØ µð½ºÅ©¸¦ Ãß°¡Çϰųª µð½ºÅ© ±×·ìÀ» »ý¼ºÇϱâ Àü¿¡ µð½ºÅ©´Â ÃʱâÈ­µÇ¾î ÀÖ¾î¾ßÇÑ´Ù.
# vxdg init // µð½ºÅ© ±×·ìÀ» »ý¼º
# vxdg destory // µð½ºÅ© ±×·ìÀ» »èÁ¦
# vxdg adddisk // Á¸ÀçÇÏ´Â µð½ºÅ© ±×·ì¿¡ µð½ºÅ©¸¦ Ãß°¡
# vxdg rmdisk // µð½ºÅ© ±×·ì¿¡¼­ µð½ºÅ©¸¦ Á¦°Å
# vxdg import // µð½ºÅ© ±×·ìÀÇ ¼³Á¤À» °¡Á®¿È
# vxdg deport // µð½ºÅ© ±×·ìÀÇ ¼³Á¤À» ³»º¸³¿.

- µð½ºÅ© ±×·ìÀÇ »ý¼º
# vxdisk list // µð½ºÅ©ÀÇ »óÅÂ¿Í ¼ÒÀ¯±ÇÀÇ ¿ä¾à Á¤º¸ Ãâ·Â
# vxdisksetup -i c2t1d0
# vxdisksetup -i c2t2d0 // µð½ºÅ©¸¦ ÃʱâÈ­ÇÏ°í ȯ°æÀ» private region¿¡ ±â·Ï(-oi)
# vxdg init newDG ndg-01=c2t1d0 ndg-02=c2t2d0 // µð½ºÅ© ±×·ìÀ» »ý¼ºÇÏ°í ±×·ì¿¡ µð½ºÅ©¸¦ Ãß°¡
# vxdisk -g newDG list // newDG±×·ìÀÇ »óÅÂ¿Í ¼ÒÀ¯±ÇÀÇ ¿ä¾à Á¤º¸ Ãâ·Â.
# vxdg list // ¸ðµç µð½ºÅ© ±×·ìÀÇ ÀÏ¹Ý Á¤º¸¿Í unique identfier Ãâ·Â.

- µð½ºÅ©¸¦ Ãß°¡Çϰųª Á¦°Å
# vxdisksetup -i c2t5d0
# vxdisksetup -i c2t16d0 // µð½ºÅ©¸¦ ÃʱâÈ­
# vxdg -g newDG adddisk ndg-03=c2t5d0 ndg-04=c2t16d0 // newDGµð½ºÅ© ±×·ì¿¡ µð½ºÅ©¸¦ Ãß°¡
# vxdisk list
# vxdg -g newDG rmdisk ndg-04 // newDGµð½ºÅ© ±×·ì¿¡¼­ ndg-04 µð½ºÅ©¸¦ Á¦°Å. free »óÅ·Î.
# vxdisk rm c2t16d0 // c2t16d0¸¦ VxVM¿¡¼­ Á¦°Å.

- µð½ºÅ© online/offline
# vxdisk online c1t2d0s2
# vxdisk offline c1t2d0s2

- µð½ºÅ© ±×·ìÀÇ import / deport
# Çϳª ÀÌ»óÀÇ È£½ºÆ®¿¡¼­ arrary¸¦ °øÀ¯Çؼ­ »ç¿ëÇÏ´Â °æ¿ì¿¡ À¯¿ë.
# ÇϳªÀÇ È£½ºÆ®¿¡¼­ Àå¾Ö°¡ ¹ß»ýÇÏ¸é ´Ù¸¥ È£½ºÆ®¿¡¼­ importÇÏ¿© °è¼Ó ¼­ºñ½º¸¦ Á¦°øÇÒ ¼ö ÀÖ´Ù.
# vxdg list
# vxdg deport newDG // newDG µð½ºÅ© ±×·ìÀ» deport.
# vxdg list // deportµÈ newDGµð½ºÅ© ±×·ìÀº º¸ÀÌÁö ¾Ê´Â´Ù.
¡¤ µð½ºÅ© ±×·ìÀÌ deportµÇ¸é µð½ºÅ© ±×·ì ³»ÀÇ ¸ðµç µð½ºÅ©¿¡ ÀúÀåµÈ È£½ºÆ® ID´Â ¾ø¾îÁø´Ù. ±×·¯¹Ç·Î ½Ã½ºÅÛÀÌ ÀçºÎÆà µÇ´õ¶óµµ ÀÚµ¿À¸·Î ´Ù½Ã importµÇÁö ¾Ê´Â´Ù.
¡¤ µð½ºÅ© ±×·ìÀº È£½ºÆ® ID°¡ Áö¿öÁöÁö ¾Ê°í deportµÇ°Å³ª ´Ù¸¥ È£½ºÆ®¿¡¼­ importµÇµµ·Ï ´ë»ó È£½ºÆ® ID¸¦ ÁöÁ¤ÇÒ ¼ö ÀÖ´Ù.
¡¤ ¸¸¾à deportµÈ µð½ºÅ© ±×·ìÀÇ À̸§À» Àؾî¹ö·È´Ù¸é vxdiskadm À¯Æ¿¸®Æ¼¿Í vxdisk -o alldgs list¸¦ ÅëÇØ ¾Ë ¼ö ÀÖ´Ù.
# vxdg import newDG // newDGµð½ºÅ© ±×·ìÀ» import

- µð½ºÅ© ±×·ìÀÇ Á¦°Å
# vxdg list
# vxdg destory newDG // newDG µð½ºÅ© ±×·ìÀ» Á¦°Å, »èÁ¦µÈ µð½ºÅ© ±×·ì ³»ÀÇ µð½ºÅ©µéÀº ´Ù¸¥ ±×·ì¿¡ µî·ÏµÇ¾î »ç¿ë °¡´É.
# vxdg list

- µð½ºÅ© ±×·ìÀÇ À̸§ º¯°æ
# vxdg list
# vxdg deport newDG // À̸§À» º¯°æÇ× µð½ºÅ© ±×·ìÀ» deport
# vxdg -n new oldDG import newDG // oldDG¶ó´Â µð½ºÅ© ±×·ìÀ» »ý¼ºÇÏ°í newDG¸¦ import
or
# vxdg list
# vxdg -n nwdg deport dg01 // dg01À» nwdg·Î À̸§À» º¯°æÇÏ°í deport
# vxdisk -s list

- µð½ºÅ© ±×·ì ³»¿¡ ÀÖ´Â µð½ºÅ© À̸§ÀÇ º¯°æ
# vxedit -g newDG rename c2t4d0 disk04 // c2t4d0¸¦ disk04·Î º¯°æ

- µð½ºÅ©ÀÇ À̸§ º¯°æ
# vxedit rename dga01 dbdisk01 // µð½ºÅ© ±×·ì ³»ÀÇ µð½ºÅ© À̸§ º¯°æ

- Hot spare ÁöÁ¤°ú ÇØÁ¦
¡¤ spare disk´Â mirror³ª raid5¿¡¼­ »ç¿ë.
¡¤ spare¸¦ ÁöÁ¤ÇÏÁö ¾ÊÀº °æ¿ì ¿©À¯ µð½ºÅ©¸¦ ã¾Æ ÀÚµ¿À¸·Î ÇÒ´ç
# vxedit -g newDG set spare=on disk07 // ÁöÁ¤
# vxedit -g newDG set spare=off disk07 // ÇØÁ¦

- µð½ºÅ© ±×·ìÀÇ ½ÃÀÛ°ú Á¾·á
# vxvol start vol01
# vxvol -g newDG startall // ±×·ì ³»ÀÇ ¸ðµç volume ½ÃÀÛ

# vxvol stop vol01 // ÁöÁ¤ÇÑ volume Á¾·á
# vxvol -g newDG stopall

- subdisk »ý¼º
# vxdg -g newDG free // µð½ºÅ©ÀÇ ¿©À¯ °ø°£°ú offset È®ÀÎ
# vxmake -g newDG1 sd disk1-01 len=100m dmname=disk1 dmoffset=0 // 100MB ¿ë·®ÀÇ subdisk»ý¼º
# vxprint -s // ÇöÀç »ý¼ºµÈ subdisk È®ÀÎ
# vxdg -g newDG free // ¼³Á¤ ³»¿ë È®ÀÎ

- subdiskÄÉ ÄÚ¸àÆ® ¼³Á¤
# vxedit set comment="Sales Dept" disk1-01

- subdisk Å©±â º¯°æ
# vxedit set len="20481" disk1-01
# vxprint -l disk1-01

- subdiskÀÇ ºÐÇÒ
# vxprint -s
# vxsd -s 50m split disk2-01 disk2-02 disk2-03 // disk2-01À» disk2-02, disk2-02À¸·Î ºÐÇÒ

- subdiskÀÇ º´ÇÕ
# vxprint -s
# vxsd -g newDG join disk2-02 disk2-03 disk2-01 // disk02-01·Î disk2-02¿Í disk02-03À» º´ÇÕ.

- subdisk Á¦°Å
# vxedit rm disk1-01 // subdisk disk1-01À» Á¦°Å


-- Volume Operation
- Disk group
# µð½ºÅ© ±×·ìÀº VxVMÀÌ °ü¸®ÇÏ´Â µð½ºÅ©µéÀÇ ÁýÇÕÀÌ´Ù.
# default µð½ºÅ© ±×·ìÀº rootdgÀÓ.
# volumeÀº µð½ºÅ© ±×·ì³»¿¡¼­ »ý¼ºµÈ´Ù.
# µð½ºÅ© ±×·ìÀÇ ÁÖ¿ä ±â´É
¡¤ ½¬¿î °ü¸® : µð½ºÅ©µéÀ» °ü¸®»ó ÆíÀǸ¦ À§ÇÑ ³í¸®ÀûÀÎ ÁýÇÕÀ¸·Î º¯°æ.
¡¤ µ¥ÀÌÅÍÀÇ °¡¿ë¼º Áõ°¡ : ÇϳªÀÇ È£½ºÆ®¿¡¼­ ´Ù¸¥ È£½ºÆ®·Î µð½ºÅ© ±×·ìÀ» À̵¿ °¡´É.
- ÇϳªÀÇ È£½ºÆ®¿¡¼­ Àå¾Ö°¡ ¹ß»ýÇßÀ» °æ¿ì ´Ù¸¥ È£½ºÆ®¿¡¼­ µð½ºÅ© ±×·ìÀ» importÇÏ¿© µð½ºÅ© ±×·ìÀÇ data¸¦ °è¼Ó access°¡´ÉÇϵµ·Ï ÇÑ´Ù.
¡Ø µð½ºÅ© ±×·ìÀÇ volumeÀÌ openµÇ¾î ÀÖÀ» °æ¿ì(status°¡ ENABLED or ACTIVEÀÎ °æ¿ì)¿¡ µð½ºÅ© ±×·ìÀº deportÇÒ ¼ö ¾ø´Ù. deport Àü¿¡ ¹Ýµå½Ã stopµÇ¾î¾ß ÇÑ´Ù.
# umount /vol01
# vxvol stop vol01
# vxdg deport newDG
# vxdisk import newDG // ´Ù¸¥ È£½ºÆ®¿¡¼­
# vxrecover -g datadg -sb (s:start disable volume, -b: background operation)

- Disk groupÀÇ ¿ä±¸»çÇ×
# µð½ºÅ© ±×·ìÀ» ÃʱâÈ­ Çϱâ Àü °í·ÁÇØ¾ß ÇÒ »çÇ×µé.
¡¤ ¸ðµç ½Ã½ºÅÛ¿¡¼­ ¸ðµç µð½ºÅ© ±×·ìÀº À¯ÀÏÇÑ À̸§À» °¡Á®¾ß ÇÑ´Ù.
¡¤ ÇϳªÀÇ È£½ºÆ® ³»¿¡ À§Ä¡ÇÑ ¸ðµç µð½ºÅ© ±×·ìÀº À¯ÀÏÇÑ À̸§À» °¡Á®¾ß ÇÑ´Ù.
¡¤ °¢°¢ÀÇ È£½ºÆ®´Â rootdg µð½ºÅ© ±×·ìÀ» Æ÷ÇÔÇØ¾ß ÇÑ´Ù.
¡¤ ÀϹÝÀûÀ¸·Î rootdg µð½ºÅ© ±×·ìÀº ÀÛ°Ô À¯ÁöµÇ¾î¾ß ÇÑ´Ù.
¡¤ ¸ðµç µð½ºÅ© ±×·ìÀº ÃÖ¼ÒÇÑ ÇϳªÀÇ µð½ºÅ©¸¦ Æ÷ÇÔÇÏ°í ÀÖ¾î¾ß ÇÑ´Ù.(redundancy¸¦ À§Çؼ­´Â µÎ°³ ÀÌ»ó)

- volume »ý¼º
# vxassist -g diskgroup_name make volume_name length laylout=stripe,nolog alloc=¡°disk_name disk_name¡±
¡¤ layoutÀÇ Á¾·ù : stripe, mirror, raid5, concatenateµî. default´Â concatenate
¡¤ nolog : log disk¸¦ ¸¸µéÁö ¾ÊÀ½, default´Â log disk »ý¼º.
¡¤ alloc : volumeÀ» ¸¸µé disk¸¦ ÁöÁ¤
# vxassist -g datadg make vol01 100m disk01 // concatenate volume »ý¼º
# vxassist -b -t test -g datadg make vol01 100m disk01 // -b : background·Î ½ÇÇà vxtask list·Î ÁøÇà »çÇ× È®ÀÎ °¡´É, -t test : task id¸¦ ¼³Á¤.
# vxassist -g datadg make vol01 100m layout=stripe disk01 disk02 disk03 //stripe volume »ý¼º
# vxassist -g datadg make vol01 100m layout=raid5,nolog disk01 disk02 disk03 //RAID 5 volume »ý¼º
# vxassist -g datadg make vol01 100m layout=mirror disk01 disk02 //mirror volume »ý¼º(RAID 1)
# vxassist -g datadg make vol01 100m layout=stripe-mirror //1+0 volume »ý¼º(stripe-pro volume) 0+1ÀÏ ¶§´Â mirror-stripe
# vxprint -vl vo01 // »ý¼ºÇÑ volumeÀÇ ÀÚ¼¼ÇÑ Á¤º¸ È®ÀÎ

- volume »èÁ¦
# umount /data // mount µÇ¾î ÀÖ´Â volumeÀ» umount
# vxprint -v // ÇöÀç volume »óŸ¦ È®ÀÎ
# vxvol stop vol01 -> volumeÀÌ »ç¿ëÁßÀ̶ó¸é ÁßÁö½ÃŲ´Ù.
# vxedit -g datadg -rf rm vol01 -> datadg disk group¿¡¼­ vol01À̶ó´Â volumeÀ» Áö¿î´Ù.

- °ü¸® ¸ðµå ¶Ç´Â ¼Õ»óµÈ volumeÀÇ º¹±¸
# vxrecover -g newDG -s vol01
# vxvol start vol01

- volume³»ÀÇ plex Á¤Áö/½ÃÀÛ
# vxprint -p
# vxmend off vo1-01 // plex Á¤Áö
# vxprint -p
# vxmend on vol1-01 // plex ½ÃÀÛ
# vxprint -p
# vxrecover -g newDG -s vol01 // volume º¹±¸
# vxprint -v

- volume³»ÀÇ plex detach/attach
# vxplex -g newDG det vol1-01 // plex vol1-01À» Á¤Áö
# vxprint -p vol1-01
# vxplex -g newDG att vol1 vol1-01 // plex vol1-01À» vol1 volume¿¡ attach


- volumeÀÇ ±ÇÇÑ, ¼ÒÀ¯±Ç ¼³Á¤
# vxedit -g newDG set user=oracle group=dba mode=660 vol01

- Hot space °ø°£À» È®ÀÎ
# vxdg -g newDG spare

- Hot spare ±¸¼º°ú ÇØÁ¦
# vxedit -g datadg set spare=on disk07 // datadg µð½ºÅ© ±×·ì¿¡ disk07 µð½ºÅ©¸¦ hotspare·Î ÁöÁ¤
# vxedit -g datadg set spare=off disk07 // ÇØÁ¦.

- volume À̸§ º¯°æ
# vxedit rename vol02 vol01 -> vol02¸¦ vol01·Î º¯°æ

- Performance Monitoring
# vxstat -g newDG // ÁöÁ¤ÇÑ µð½ºÅ© ±×·ìÀÇ »óÅÂ
# vxstat -g newDG vol01 // µð½ºÅ© ±×·ì ³»ÀÇ º¼·ý »óÅÂ
# vxstat -g newDG -d disk01 // µð½ºÅ© ±×·ì ³»ÀÇ µð½ºÅ© »óÅÂ

# vxtrace -o disk // ¸ðµç µð½ºÅ©ÀÇ I/O³ª ¿¡·¯ »óÅÂ
# vxtrace -o c3t2d0 // ÁöÁ¤ÇÑ µð½ºÅ©ÀÇ I/O³ª ¿¡·¯ »óÅÂ
# vxtrace vol01 // vol01 volume°¡ °ü·ÃµÈ ¸ðµç °¡»ó ÀåÄ¡ÀÇ I/O³ª ¿¡·¯ »óÅÂ

- controller È®ÀÎ
# /etc/vx/bin/vxcntrllist
# vxdmpadm listctlr all
# ls /dev/dsk |awk '{print substr($0,0,2)}' |uniq

- A5000 ÀåÄ¡ Á¤º¸ º¸±â
# luxadm probe
# luxadm display /dev/es/ses0

- disk üũÇϱâ
# vxdisk check c0t1d0s4



Ãâó : Tong - quddbs81´ÔÀÇ SolSolSolÅë


¸ñ·Ï | ÀÔ·Â | ¼öÁ¤ | ´äº¯ | »èÁ¦