9.6. LVS Ŭ·¯½ºÅÍ — °³³ä µµÇ¥

LVS ¶ó¿ìÅÍ´Â ¿©·¯ °³ÀÇ ÇÁ·Î±×·¥À» »ç¿ëÇÏ¿© Ŭ·¯½ºÅÍ ±¸¼º ¼­¹ö¿Í Ŭ·¯½ºÅÍ ¼­ºñ½º¸¦ ¸ð´ÏÅÍÇÕ´Ï´Ù. ±×¸² 9-4¿¡¼­ Ȱ¼º LVS ¶ó¿ìÅÍ¿Í ¹é¾÷ LVS ¶ó¿ìÅÍ »ó¿¡¼­ Ŭ·¯½ºÅ͸¦ °ü¸®ÇÏ´Â ´Ù¾çÇÑ ÇÁ·Î±×·¥µéÀÇ ÀÛµ¿ ¹æ¹ýÀ» »ìÆìº¼ ¼ö ÀÖ½À´Ï´Ù.

±×¸² 9-4. ½ÇÇà ÁßÀÎ LVS Ŭ·¯½ºÅÍ ±¸¼º ¿ä¼Ò

pulse µ¥¸óÀº Ȱ¼º LVS ¶ó¿ìÅÍ¿Í ¹é¾÷ LVS ¶ó¿ìÅÍ ¸ðµÎ¿¡¼­ ½ÇÇàµË´Ï´Ù. ¹é¾÷ ¶ó¿ìÅÍ »ó¿¡¼­ pulse µ¥¸óÀº Ȱ¼º ¶ó¿ìÅÍÀÇ °ø°ø ÀÎÅÍÆäÀ̽º·Î heartbeatÀ» º¸³»¾î Ȱ¼º ¶ó¿ìÅͰ¡ ¿©ÀüÈ÷ Á¦´ë·Î ÀÛµ¿ ÁßÀÎÁö¸¦ È®ÀÎÇÕ´Ï´Ù. Ȱ¼º ¶ó¿ìÅÍ »ó¿¡¼­ pulse µ¥¸óÀº lvs µ¥¸óÀ» ½ÇÇà½ÃŰ°í ¹é¾÷ LVS ¶ó¿ìÅͷκÎÅÍ ¹ÞÀº heartbeat ÁúÀÇ¿¡ ´ë´äÇÕ´Ï´Ù.

lvs µ¥¸óÀÌ ½ÃÀ۵Ǹé, ipvsadm ¼­ºñ½º¸¦ È£ÃâÇÏ¿© Ä¿³Î¿¡¼­ IPVS ¶ó¿ìÆÃ Å×À̺íÀ» ¼³Á¤ ÈÄ °ü¸®ÇÏ¸ç °³º° ½ÇÁ¦ ¼­¹ö »ó¿¡ ¼³Á¤µÈ °¢ °¡»ó ¼­¹ö¿¡ ´ëÇÑ nanny ÇÁ·Î¼¼½º¸¦ ½ÃÀÛÇÕ´Ï´Ù. °¢ nanny ÇÁ·Î¼¼½º´Â °¢ ½ÇÁ¦ ¼­¹ö »ó¿¡¼­ ¼³Á¤µÈ ¼­ºñ½ºÀÇ »óŸ¦ È®ÀÎ ÈÄ ¸¸ÀÏ ÇØ´ç ¼­¹ö »ó¿¡¼­ ¼­ºñ½º°¡ Á¦´ë·Î ÀÛµ¿ÇÏÁö ¾ÊÀ» °æ¿ì¿¡´Â lvs µ¥¸ó¿¡°Ô ¾Ë·ÁÁÝ´Ï´Ù. ¼­ºñ½º°¡ Á¦´ë·Î ÀÛµ¿ÇÏÁö ¾Ê´Â °ÍÀÌ °¨ÁöµÇ¸é, lvs µ¥¸óÀº ipvsadm·Î ÇÏ¿©±Ý Ä¿³ÎÀÇ IPVS ¶ó¿ìÆÃ Å×ÀÌºí¿¡¼­ Á¦´ë·Î ÀÛµ¿ÇÏÁö ¾Ê´Â ½ÇÁ¦ ¼­¹ö¸¦ Á¦°ÅÇϵµ·Ï Áö½ÃÇÕ´Ï´Ù.

¸¸ÀÏ ¹é¾÷ ¶ó¿ìÅͰ¡ Ȱ¼º ¶ó¿ìÅͷκÎÅÍ ¾î¶°ÇÑ ÀÀ´äµµ ¹ÞÁö ¸øÇÑ °æ¿ì, ¹é¾÷ ¶ó¿ìÅÍ´Â ¸ðµç °¡»ó IP ÁÖ¼Ò¸¦ ¹é¾÷ ³ëµåÀÇ NIC Çϵå¿þ¾î ÁÖ¼Ò (MAC ÁÖ¼Ò)·Î º¯°æÇϱâ À§ÇØ send_arp ¸í·ÉÀ» È£ÃâÇÏ¿© ÆäÀÏ¿À¹ö¸¦ ½ÃÀÛÇϸç, °ø°ø ³×Æ®¿öÅ© ÀÎÅÍÆäÀ̽º¿Í »ç¼³ ³×Æ®¿öÅ© ÀÎÅÍÆäÀ̽º ¸ðµÎ¸¦ ÅëÇÏ¿© Ȱ¼º ¶ó¿ìÅÍ¿¡°Ô lvs µ¥¸óÀÇ È°µ¿À» ÁßÁöÇϵµ·Ï ¸í·ÉÀ» º¸³À´Ï´Ù. ±× ÈÄ ¹é¾÷ ³ëµå »ó¿¡¼­ lvs µ¥¸óÀ» ½ÃÀÛÇÏ¿© ¼³Á¤µÈ °¡»ó ¼­¹ö·Î µé¾î¿À´Â ¿äûÀ» ¼ö¿ëÇÕ´Ï´Ù.

9.6.1. LVS Ŭ·¯½ºÅÍ ±¸¼º ¿ä¼Ò

9.6.1.1 ÀýÀº LVS ¶ó¿ìÅÍ¿¡¼­ »ç¿ëµÇ´Â °¢ ¼ÒÇÁÆ®¿þ¾î ±¸¼º ¿ä¼Ò¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ ¸ñ·ÏÀ» º¸¿©ÁÝ´Ï´Ù.

9.6.1.1. pulse

LVS ¶ó¿ìÅÍ¿Í °ü·ÃµÈ ´Ù¸¥ ¸ðµç µ¥¸óÀ» ½ÃÀÛÇÏ´Â Á¦¾î ÇÁ·Î¼¼½º. ½Ã½ºÅÛ ºÎÆÃ½Ã /etc/rc.d/init.d/pulse ½ºÅ©¸³Æ®¿¡ ÀÇÇØ µ¥¸óÀÌ ½ÃÀÛµÈ ÈÄ /etc/sysconfig/ha/lvs.cf ¼³Á¤ ÆÄÀÏÀ» ÀнÀ´Ï´Ù. pulse µ¥¸óÀº Ȱ¼º ¶ó¿ìÅÍ¿¡¼­ LVS µ¥¸óÀ» ½ÃÀÛÇϸç, ¹é¾÷ ¶ó¿ìÅÍ¿¡¼­ pulse µ¥¸óÀº »ç¿ëÀÚ ¼³Á¤ °¡´ÉÇÑ ½Ã°£ °£°Ý ¸¶´Ù ´Ü¼øÇÑ heartbeatÀ» ½ÇÇàÇÏ¿© Ȱ¼º ¶ó¿ìÅÍÀÇ »óŸ¦ È®ÀÎÇÕ´Ï´Ù. »ç¿ëÀÚ°¡ ¼³Á¤ÇÑ ½Ã°£ ³»¿¡ Ȱ¼º ¶ó¿ìÅͰ¡ ÀÀ´äÇÏÁö ¾Ê´Â´Ù¸é, ¹é¾÷ ¶ó¿ìÅÍ´Â ÆäÀÏ¿À¹ö¸¦ ½ÃÀÛÇÕ´Ï´Ù. ÆäÀÏ¿À¹ö °úÁ¤¿¡¼­ ¹é¾÷ ¶ó¿ìÅÍ »óÀÇ pulse µ¥¸óÀº Ȱ¼º ¶ó¿ìÅÍÀÇ pulse µ¥¸ó¿¡°Ô ¸ðµç LVS ¼­ºñ½º¸¦ ÁßÁöÇϵµ·Ï Áö½ÃÇÑ ÈÄ, send_arp ÇÁ·Î±×·¥À» ½ÃÀÛÇÏ¿© À¯µ¿ IP ÁÖ¼Ò¸¦ ¹é¾÷ ¶ó¿ìÅÍÀÇ MAC ÁÖ¼Ò·Î Àç¼³Á¤Çϰí lvs µ¥¸óÀ» ½ÃÀÛÇÕ´Ï´Ù.

9.6.1.2. lvs

lvs µ¥¸óÀº pulse µ¥¸óÀÌ È°¼º LVS ¶ó¿ìÅ͸¦ È£Ãâ ÈÄ ½ÇÇàµË´Ï´Ù. ÀÌ µ¥¸óÀº /etc/sysconfig/ha/lvs.cf ¼³Á¤ ÆÄÀÏÀ» ÀоîµéÀÎ ÈÄ ipvsadm ¼­ºñ½º¸¦ È£ÃâÇÏ¿© Ä¿³Î¿¡¼­ IPVS ¶ó¿ìÆÃ Å×À̺íÀ» ¼³Á¤ ÈÄ °ü¸®ÇÏ¸ç °³º° ½ÇÁ¦ ¼­¹ö »ó¿¡ ¼³Á¤µÈ °¢ °¡»ó ¼­¹ö¿¡ ´ëÇÑ nanny ÇÁ·Î¼¼½º¸¦ ½ÃÀÛÇÕ´Ï´Ù. °¢ nanny ÇÁ·Î¼¼½º´Â °¢ ½ÇÁ¦ ¼­¹ö »ó¿¡¼­ ¼³Á¤µÈ ¼­ºñ½ºÀÇ »óŸ¦ È®ÀÎ ÈÄ ¸¸ÀÏ ÇØ´ç ¼­¹ö »ó¿¡¼­ ¼­ºñ½º°¡ Á¦´ë·Î ÀÛµ¿ÇÏÁö ¾ÊÀ» °æ¿ì¿¡´Â lvs µ¥¸ó¿¡°Ô ¾Ë·ÁÁÝ´Ï´Ù. ¼­ºñ½º°¡ Á¦´ë·Î ÀÛµ¿ÇÏÁö ¾Ê´Â °ÍÀÌ °¨ÁöµÇ¸é, lvs µ¥¸óÀº ipvsadm·Î ÇÏ¿©±Ý Ä¿³ÎÀÇ IPVS ¶ó¿ìÆÃ Å×ÀÌºí¿¡¼­ Á¦´ë·Î ÀÛµ¿ÇÏÁö ¾Ê´Â ½ÇÁ¦ ¼­¹ö¸¦ Á¦°ÅÇϵµ·Ï Áö½ÃÇÕ´Ï´Ù.

9.6.1.3. ipvsadm

Ä¿³Î¿¡¼­ IPVS ¶ó¿ìÆÃ Å×À̺íÀ» ¾÷µ¥ÀÌÆ®ÇÏ´Â ¼­ºñ½º. lvs µ¥¸óÀº IPVS ¶ó¿ìÆÃ Å×ÀÌºí¿¡ Ç׸ñÀ» Ãß°¡, º¯°æÇϰųª »èÁ¦Çϱâ À§ÇØ ipvsadm ¸í·ÉÀ» È£ÃâÇÏ¿© LVS Ŭ·¯½ºÅ͸¦ ¼³Á¤ÇÏ°í °ü¸®ÇÕ´Ï´Ù.

9.6.1.4. nanny

nanny ¸ð´ÏÅ͸µ µ¥¸óÀº Ȱ¼º LVS ¶ó¿ìÅÍ »ó¿¡¼­ ½ÇÇàµË´Ï´Ù. ÀÌ µ¥¸óÀ» ÅëÇÏ¿© Ȱ¼º ¶ó¿ìÅÍ´Â °³º° ½ÇÁ¦ ¼­¹öÀÇ »óŸ¦ ºñ·ÔÇÏ¿© ¼­¹öÀÇ ÀÛ¾÷ ºÎÇϵµ ¸ð´ÏÅÍ °¡´ÉÇÕ´Ï´Ù. °¢°¢ÀÇ ½ÇÁ¦ ¼­¹ö »ó¿¡ Á¤ÀÇµÈ °³º° ¼­ºñ½º¿¡ ´ëÇØ¼­´Â º°°³ÀÇ ÇÁ·Î¼¼½º°¡ ½ÇÇàµË´Ï´Ù.

9.6.1.5. /etc/sysconfig/ha/lvs.cf

LVS Ŭ·¯½ºÅÍ ¼³Á¤ ÆÄÀÏ. ¸ðµç µ¥¸óÀº Á÷Á¢ÀûÀ¸·Î ¶Ç´Â °£Á¢ÀûÀ¸·Î ÀÌ ÆÄÀÏ¿¡¼­ ÀÚ½ÅÀÇ ¼³Á¤ Á¤º¸¸¦ °¡Á®¿É´Ï´Ù.

9.6.1.6. Piranha ¼³Á¤ µµ±¸

LVS Ŭ·¯½ºÅ͸¦ °¨½Ã, ¼³Á¤ÇÏ°í °ü¸®ÇÏ´Â À¥-±â¹Ý µµ±¸. ÀϹÝÀûÀ¸·Î /etc/sysconfig/ha/lvs.cf LVS Ŭ·¯½ºÅÍ ¼³Á¤ ÆÄÀÏÀ» °ü¸®Çϴµ¥ »ç¿ëµÇ´Â ±âº» µµ±¸ÀÔ´Ï´Ù.

9.6.1.7. send_arp

ÆäÀÏ¿À¹ö °úÁ¤¿¡¼­ À¯µ¿ IP ÁÖ¼Ò°¡ ½ÇÆÐÇÑ ³ëµå¿¡¼­ ´Ù¸¥ ³ëµå·Î º¯°æµÉ ¶§ ARP¸¦ ºê·Îµåij½ºÆ® ÇÕ´Ï´Ù.

10 Àå¿¡¼­´Â Red Hat Enterprise Linux¸¦ LVS ¶ó¿ìÅÍ·Î ¼³Á¤Çϱ⿡ ¾Õ¼­ ¿©·¯ºÐÀÌ µû¸£¼Å¾ßÇÒ Áß¿äÇÑ ¼³Ä¡ÈÄ ¼³Á¤ ´Ü°è¿¡ ´ëÇÏ¿© ¼³¸íÇÕ´Ï´Ù.