"Ceph" À̸§ÀÇ À¯·¡
"Ceph"´Â ´ëºÎºÐÀÇ ÆÄÀÏ ½Ã½ºÅÛ¿¡¼ »ç¿ëÇÏ´Â ÀϹÝÀûÀÎ ¾à¾î ÇüÅ°¡ ¾Æ´Ñ µ¶Æ¯ÇÑ ÇüÅÂÀÇ ÆÄÀÏ ½Ã½ºÅÛ À̸§ÀÌ´Ù.
ÀÌ À̸§Àº "Sammy"¶ó°í ÇÏ´Â UCSCÀÇ ¸¶½ºÄÚÆ®¿¡¼ À¯·¡µÇ¾úÀ¸¸ç, ÀÌ ¸¶½ºÄÚÆ®´Â µÎÁ··ù(Cephalopods)¿¡ ¼ÓÇÏ´Â ²®Áú¾ø´Â ¿¬Ã¼
µ¿¹°ÀÎ ¹Ù³ª³ª ½½·¯±×ÀÌ´Ù(CephÀÇ À¯·¡). ¿©·¯ °³ÀÇ Ã˼ö°¡ ÀÖ´Â µÎÁ··ù´Â ºÐ»ê ÆÄÀÏ ½Ã½ºÅÛ¿¡ ¸Å¿ì ÀûÇÕÇÑ »ó¡¼ºÀ» Á¦°øÇÑ´Ù.
½ºÅ丮Áö »ê¾÷ÀÇ ¾ÆÅ°ÅØÆ®·Î¼ ÇÊÀÚ´Â ÆÄÀÏ ½Ã½ºÅÛ¿¡ ´ëÇØ °ü½ÉÀ» °¡Áö°í ÀÖ´Ù.
ÀÌ·¯ÇÑ ½Ã½ºÅÛÀº ½ºÅ丮Áö ½Ã½ºÅÛ¿¡ ´ëÇÑ »ç¿ëÀÚ ÀÎÅÍÆäÀ̽ºÀÌ¸ç ¸ðµç ½Ã½ºÅÛÀÌ ºñ½ÁÇÑ ±â´É ¼¼Æ®¸¦ Á¦°øÇϱâ´Â ÇÏÁö¸¸
È®¿¬È÷ Â÷º°ÈµÈ ±â´ÉÀ» Á¦°øÇϱ⵵ ÇÑ´Ù.
Cephµµ º°¹Ý ´Ù¸£Áö ¾Ê´Ù. ÀÌ ±â»ç¿¡¼´Â ÆÄÀÏ ½Ã½ºÅÛ¿¡¼ ã¾Æº¼ ¼ö ÀÖ´Â °¡Àå Èï¹Ì·Î¿î ±â´É Áß ÀϺθ¦ »ìÆ캻´Ù.
Ceph´Â UCSC(University of California, Santa Cruz)¿¡¼ Sage WeilÀÇ ½ºÅ丮Áö ½Ã½ºÅÛ °ü·Ã ¹Ú»ç°úÁ¤ ¿¬±¸ ÇÁ·ÎÁ§Æ®·Î ½ÃÀ۵Ǿú´Ù.
ÇÏÁö¸¸ 2010³â 3¿ù¸»ºÎÅÍ´Â ÁÖ·ù Linux Ä¿³Î(2.6.34 ÀÌ»ó)¿¡¼ Ceph¸¦ º¼ ¼ö ÀÖ´Ù.
¾ÆÁ÷±îÁö´Â ÇÁ·Î´ö¼Ç ȯ°æ¿¡¼ »ç¿ëÇϱ⿡ ºÎÁ·ÇÑ CephÀÌÁö¸¸ Æò°¡ ¸ñÀûÀ¸·Î´Â À¯¿ëÇÏ´Ù.
ÀÌ ±â»ç¿¡¼´Â Ceph ÆÄÀÏ ½Ã½ºÅÛÀ» »ìÆ캻 ÈÄ ÀÌ ÆÄÀÏ ½Ã½ºÅÛÀ» È®Àå °¡´ÉÇÑ ºÐ»ê ½ºÅ丮ÁöÀÇ ¸Å·ÂÀûÀÎ ´ë¾ÈÀ¸·Î
¸¸µé¾î ÁÖ´Â °íÀ¯ÇÑ ±â´ÉÀ» ¼³¸íÇÑ´Ù.
CephÀÇ ¸ñÇ¥
ºÐ»ê ÆÄÀÏ ½Ã½ºÅÛ °³¹ßÀº º¹ÀâÇÑ ÀÛ¾÷ÀÌÁö¸¸ ¹®Á¦Á¡ÀÌ ¿Ã¹Ù¸£°Ô ÇØ°áµÇ¸é ¸·´ëÇÑ °¡Ä¡¸¦ Á¦°øÇÒ ¼ö ÀÖ´Ù.
CephÀÇ ¸ñÇ¥´Â ´ÙÀ½°ú °°ÀÌ Á¤ÀÇÇÒ ¼ö ÀÖ´Ù.
- ¿ë·®À» Æ䟹ÙÀÌÆ® ¼öÁØÀ¸·Î ¼Õ½±°Ô È®Àå
- °¡º¯ÀûÀÎ ¿öÅ©·Îµå¸¦ È¿°úÀûÀ¸·Î ó¸®ÇÒ ¼ö ÀÖ´Â °í¼º´É(IOPS[input/output operations per second] ¹× ´ë¿ªÆø)
- °·ÂÇÑ ½Å·Ú¼º
¾Æ½±°Ôµµ ÀÌ·¯ÇÑ ¸ñÇ¥´Â ¼·Î °æÀï °ü°è¿¡ ³õÀÏ ¼ö ÀÖ´Ù. (¿¹¸¦ µé¾î, È®À强À» ³ôÀÌ¸é ¼º´ÉÀ̳ª ½Å·Ú¼ºÀÌ ³·¾ÆÁú ¼ö ÀÖ´Ù.)
Ceph¿¡´Â ¸Å¿ì Èï¹Ì·Î¿î ¸î °¡Áö °³³ä(¿¹: µ¿Àû ¸ÞŸµ¥ÀÌÅÍ ÆÄƼ¼Å´×°ú µ¥ÀÌÅÍ ºÐ¹è ¹× º¹Á¦)ÀÌ ÀÖÀ¸¸ç,
ÀÌ ±â»ç¿¡¼´Â ÀÌ·¯ÇÑ °³³ä¿¡ ´ëÇØ °£´ÜÈ÷ »ìÆ캻´Ù.
CephÀÇ ¼³°è¿¡´Â ´ÜÀÏ Àå¾Ö ÁöÁ¡ ¹®Á¦¸¦ ÇØ°áÇϱâ À§ÇÑ ³»°áÇÔ¼º ±â´É°ú Æ䟹ÙÀÌÆ® ¼öÁØÀÇ ´ë±Ô¸ð ½ºÅ丮Áö ¿À·ù°¡
¿¹¿Ü°¡ ¾Æ´Ñ ÀϹÝÀûÀÎ ¿À·ù¶ó´Â °¡Á¤ÀÌ ÅëÇյǾî ÀÖ´Ù.
¸¶Áö¸·À¸·Î ÀÌ ¼³°è¿¡¼´Â ƯÁ¤ ¿öÅ©·Îµå¸¦ °¡Á¤ÇÏÁö ¾Ê´Â´Ù.
´ë½Å º¯ÈÇÏ´Â ºÐ»ê ¿öÅ©·Îµå¿¡ ÀûÀýÈ÷ ´ëÀÀÇÏ¿© ÃÖ»óÀÇ ¼º´ÉÀ» Á¦°øÇÒ ¼ö ÀÖ´Â ±â´ÉÀÌ Æ÷ÇԵǾî ÀÖ´Ù.
ÀÌ ¸ðµç ¸ñÇ¥´Â Ceph¿¡¼ Á¦¾ÈÇÑ Çâ»óµÈ ±â´ÉÀ» ÅëÇØ POSIX ½Ã¸ÇƽÀ» »ç¿ëÇÏ´Â ±âÁ¸ ¾ÖÇø®ÄÉÀ̼ǿ¡ Åõ¸íÇÏ°Ô
¹èÄ¡ÇÒ ¼ö ÀÖµµ·Ï Áö¿øÇÏ´Â POSIX ȣȯ¼º ¸ñÇ¥¿Íµµ °ü°è°¡ ÀÖ´Ù.
¸¶Áö¸·À¸·Î Ceph´Â ¿ÀÇ ¼Ò½º ºÐ»ê ½ºÅ丮ÁöÀ̸ç ÁÖ·ù Linux Ä¿³Î(2.6.34)¿¡ Æ÷ÇԵǾî ÀÖ´Ù.
Ceph ¾ÆÅ°ÅØó
ÀÌÁ¦ Ceph ¾ÆÅ°ÅØó¿Í »óÀ§ ·¹º§ÀÇ ÇÙ½É ¿ä¼Ò¸¦ »ìÆ캸ÀÚ. ±×·± ´ÙÀ½ ÇÏÀ§ ·¹º§·Î ³»·Á°¡¸é¼
CephÀÇ ÀϺΠÁÖ¿ä Ư¼ºÀ» ½Äº°ÇÏ°í ÀÚ¼¼È÷ »ìÆ캸ÀÚ.
Ceph ¿¡ÄڽýºÅÛÀº Å©°Ô ³× °¡Áö ¼¼±×¸ÕÆ®·Î ºÐ·ùÇÒ ¼ö ÀÖ´Ù(±×¸² 1 ÂüÁ¶).
ù ¹ø°´Â µ¥ÀÌÅÍÀÇ »ç¿ëÀÚÀΠŬ¶óÀ̾ðÆ®À̸ç, µÎ ¹ø°´Â ºÐ»ê ¸ÞŸµ¥ÀÌÅ͸¦ ij½Ã ¹× µ¿±âÈÇÏ´Â ¸ÞŸµ¥ÀÌÅÍ ¼¹öÀÌ°í,
¼¼ ¹ø°´Â µ¥ÀÌÅÍ¿Í ¸ÞŸµ¥ÀÌÅ͸¦ ¿ÀºêÁ§Æ®·Î ÀúÀåÇÏ°í ±âŸ ÁÖ¿ä ±â´ÉÀ» ±¸ÇöÇÏ´Â ¿ÀºêÁ§Æ® ½ºÅ丮Áö Ŭ·¯½ºÅÍÀ̸ç
¸¶Áö¸·À¸·Î ¸ð´ÏÅ͸µ ±â´ÉÀ» ±¸ÇöÇϴ Ŭ·¯½ºÅÍ ¸ð´ÏÅÍ°¡ ÀÖ´Ù.
±×¸² 1¿¡¼ º¸µíÀÌ Å¬¶óÀ̾ðÆ®´Â ¸ÞŸµ¥ÀÌÅÍ ¼¹ö¸¦ »ç¿ëÇÏ¿© ¸ÞŸµ¥ÀÌÅÍ ÀÛ¾÷(µ¥ÀÌÅÍ À§Ä¡ ½Äº°)À» ¼öÇàÇÑ´Ù.
¸ÞŸµ¥ÀÌÅÍ ¼¹ö´Â µ¥ÀÌÅÍÀÇ À§Ä¡¿Í »õ µ¥ÀÌÅ͸¦ ÀúÀåÇÒ À§Ä¡¸¦ °ü¸®ÇÑ´Ù.
±×¸®°í ¸ÞŸµ¥ÀÌÅÍ´Â ½ºÅ丮Áö Ŭ·¯½ºÅÍ¿¡ ÀúÀåµÈ´Ù("Metadata I/O"·Î Ç¥½ÃµÊ). ½ÇÁ¦ ÆÄÀÏ I/O´Â Ŭ¶óÀ̾ðÆ®¿Í
¿ÀºêÁ§Æ® ½ºÅ丮Áö Ŭ·¯½ºÅÍ »çÀÌ¿¡¼ ¹ß»ýÇÑ´Ù. ÀÌ·¯ÇÑ ¹æ½ÄÀ¸·Î ¿±â, ´Ý±â ¹× À̸§ ¹Ù²Ù±â¿Í °°Àº
»óÀ§ ·¹º§ POSIX ÇÔ¼ö´Â ¸ÞŸµ¥ÀÌÅÍ ¼¹ö¸¦ ÅëÇØ °ü¸®µÇ´Â ¹Ý¸é ÀÐ±â ¹× ¾²±â¿Í °°Àº POSIX ÇÔ¼ö´Â
¿ÀºêÁ§Æ® ½ºÅ丮Áö Ŭ·¯½ºÅ͸¦ ÅëÇØ Á÷Á¢ °ü¸®µÈ´Ù.
±×¸² 2¿¡¼´Â ´Ù¸¥ °üÁ¡¿¡¼ ¹Ù¶óº» ¾ÆÅ°ÅØó¸¦ º¸¿© ÁØ´Ù. ¼¹ö ¼¼Æ®´Â ¸ÞŸµ¥ÀÌÅÍ ¼¹ö¿Í ¿ÀºêÁ§Æ® ·¹º§ ½ºÅ丮ÁöÀÇ °ü°è¸¦
ÆľÇÇÏ°í Àִ Ŭ¶óÀ̾ðÆ® ÀÎÅÍÆäÀ̽º¸¦ ÅëÇØ Ceph ¿¡ÄڽýºÅÛ¿¡ ¾×¼¼½ºÇÑ´Ù. ºÐ»ê ½ºÅ丮Áö ½Ã½ºÅÛÀº ½ºÅ丮Áö ÀåÄ¡ÀÇ
Çü½Ä(Extent ¹× EBOFS[B-tree-based Object File System] ¶Ç´Â ´ëü Çü½Ä), µ¥ÀÌÅÍ º¹Á¦, Àå¾Ö °¨Áö ¹× º¹±¸¸¦ °ü¸®Çϱâ À§ÇØ ¼³°èµÈ ´ëü °ü¸® °èÃþ ¹× RADOS(Reliable Autonomic Distributed Object Storage)¶ó´Â ÈÄ¼Ó µ¥ÀÌÅÍ ¸¶À̱׷¹À̼ÇÀ» Æ÷ÇÔÇÑ
¸î °³ÀÇ °èÃþÀ¸·Î ºÐ·ùÇÒ ¼ö ÀÖ´Ù. ¸¶Áö¸·À¸·Î ¸ð´ÏÅÍ´Â ±¸¼º ¿ä¼Ò Àå¾Ö¸¦ ½Äº°ÇÏ°í ¾Ë¸®´Â µ¥ »ç¿ëµÈ´Ù.
Ceph ±¸¼º ¿ä¼Ò
Áö±Ý±îÁö CephÀÇ °³³äÀû ¾ÆÅ°ÅØó¸¦ »ìÆ캸¾ÒÀ¸¹Ç·Î ÀÌÁ¦ Ceph ¿¡ÄڽýºÅÛ ³»¿¡ ±¸ÇöµÈ ÁÖ¿ä ±¸¼º ¿ä¼Ò¿¡ ´ëÇØ ÀÚ¼¼È÷ ¾Ë¾Æº¸ÀÚ. Ceph¿Í ±âÁ¸ ÆÄÀÏ ½Ã½ºÅÛ »çÀÌÀÇ ÁÖ¿ä Â÷ÀÌÁ¡ Áß Çϳª´Â ÆÄÀÏ ½Ã½ºÅÛ ÀÚüÀÇ ÀÎÅÚ¸®Àü½º¿¡ ÁßÁ¡À» µÎÁö ¾Ê°í ÀÎÅÚ¸®Àü½º°¡
¿¡ÄڽýºÅÛ Àüü¿¡ ÆÛÁ® ÀÖ´Ù´Â °ÍÀÌ´Ù.
±×¸² 3¿¡¼´Â °£´ÜÇÑ Ceph ¿¡ÄڽýºÅÛÀ» º¸¿© ÁØ´Ù. Ceph Ŭ¶óÀ̾ðÆ®´Â Ceph ÆÄÀÏ ½Ã½ºÅÛÀÇ »ç¿ëÀÚÀÌ´Ù.
Ceph ¸ÞŸµ¥ÀÌÅÍ µð¸ÕÀº ¸ÞŸµ¥ÀÌÅÍ ¼ºñ½º¸¦ Á¦°øÇÏ´Â ¹Ý¸é Ceph ¿ÀºêÁ§Æ® ½ºÅ丮Áö µð¸ÕÀº
½ÇÁ¦ ½ºÅ丮Áö(µ¥ÀÌÅÍ ¹× ¸ÞŸµ¥ÀÌÅÍ¿ë)¸¦ Á¦°øÇÑ´Ù. ¸¶Áö¸·À¸·Î Ceph ¸ð´ÏÅʹ Ŭ·¯½ºÅÍ °ü¸®¸¦ Á¦°øÇÑ´Ù.
´Ù¼öÀÇ Ceph Ŭ¶óÀ̾ðÆ®, ´Ù¼öÀÇ ¿ÀºêÁ§Æ® ½ºÅ丮Áö ¿£µåÆ÷ÀÎÆ®, ¼ö¸¹Àº ¸ÞŸµ¥ÀÌÅÍ ¼¹ö(ÆÄÀÏ ½Ã½ºÅÛÀÇ ¿ë·®¿¡ µû¶ó)°¡
ÀÖÀ» ¼ö ÀÖÀ¸¸ç Àû¾îµµ ÇϳªÀÇ Áߺ¹ ¸ð´ÏÅÍ ½ÖÀÌ ÀÖ¾î¾ß ÇÑ´Ù. ±×·¸´Ù¸é ÀÌ ÆÄÀÏ ½Ã½ºÅÛÀÌ ¾î¶»°Ô ºÐ»êµÇ´Â °ÍÀϱî?
Ceph Ŭ¶óÀ̾ðÆ®
Linux¿¡¼ VFS(Virtual File system Switch)¸¦ ÅëÇØ ÆÄÀÏ ½Ã½ºÅÛ¿¡ ´ëÇÑ °øÅë ÀÎÅÍÆäÀ̽º¸¦ Á¦°øÇϹǷÎ
Ceph¿¡ ´ëÇÑ »ç¿ëÀÚÀÇ ÆÛ½ºÆåƼºê´Â Åõ¸íÇÏ´Ù.
°ü¸®ÀÚÀÇ ÆÛ½ºÆåƼºê´Â ½ºÅ丮Áö ½Ã½ºÅÛ ÁÖÀ§¿¡ ¸¹Àº ¼¹ö°¡ ÀÖÀ» ¼ö Àֱ⠶§¹®¿¡ È®¿¬È÷ ´Ù¸£´Ù
(Ceph Ŭ·¯½ºÅ͸¦ ÀÛ¼ºÇÏ´Â ¹æ¹ý¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ Á¤º¸´Â Âü°íÀÚ·á ¼½¼Ç ÂüÁ¶).
»ç¿ëÀÚÀÇ °üÁ¡¿¡¼ º¸¸é »ç¿ëÀÚ´Â ´ë¿ë·® ½ºÅ丮Áö ½Ã½ºÅÛ¿¡ ¾×¼¼½ºÇÒ ¼ö ÀÖÀ¸¸ç ±âº» ¸ÞŸµ¥ÀÌÅÍ ¼¹ö, ¸ð´ÏÅÍ ¹×
´ë±Ô¸ð ½ºÅ丮Áö Ç®¿¡ ÅëÇÕµÈ °³º° ¿ÀºêÁ§Æ® ½ºÅ丮Áö ÀåÄ¡¸¦ ÀνÄÇÏÁö ¸øÇÑ´Ù.
»ç¿ëÀÚ¿¡°Ô´Â Ç¥ÁØ ÆÄÀÏ I/O¸¦ ¼öÇàÇÒ ¼ö ÀÖ´Â ¸¶¿îÆ® ÁöÁ¡¸¸ Ç¥½ÃµÈ´Ù.
Ceph ÆÄÀÏ ½Ã½ºÅÛ(Àû¾îµµ Ŭ¶óÀ̾ðÆ® ÀÎÅÍÆäÀ̽º)Àº Linux Ä¿³Î¿¡ ±¸ÇöµÈ´Ù.
°ÅÀÇ ´ëºÎºÐÀÇ ÆÄÀÏ ½Ã½ºÅÛ¿¡¼´Â ¸ðµç ÄÁÆ®·Ñ ¹× ÀÎÅÚ¸®Àü½º°¡ Ä¿³ÎÀÇ ÆÄÀÏ ½Ã½ºÅÛ ¼Ò½º ÀÚü ³»¿¡¼ ±¸ÇöµÈ´Ù.
ÇÏÁö¸¸ CephÀÇ °æ¿ì¿¡´Â ÆÄÀÏ ½Ã½ºÅÛÀÇ ÀÎÅÚ¸®Àü½º°¡ ¿©·¯ ³ëµå·Î ºÐ»êµÇ±â ¶§¹®¿¡ Ŭ¶óÀ̾ðÆ® ÀÎÅÍÆäÀ̽º°¡
´Ü¼øÇØÁú »Ó¸¸ ¾Æ´Ï¶ó ´ë±Ô¸ð(¹× µ¿Àû) È®ÀåÀÌ °¡´ÉÇÏ´Ù.
Ceph´Â ÇÒ´ç ¸ñ·Ï(µð½ºÅ©ÀÇ ºí·ÏÀ» ÁöÁ¤µÈ ÆÄÀÏ¿¡ ¸ÊÇÎÇϱâ À§ÇÑ ¸ÞŸµ¥ÀÌÅÍ)¸¦ »ç¿ëÇÏÁö ¾Ê°í Èï¹Ì·Î¿î ´ë¾ÈÀ» »ç¿ëÇÑ´Ù.
Linux ÆÛ½ºÆåƼºêÀÇ ÆÄÀÏ¿¡ ¸ÞŸµ¥ÀÌÅÍ ¼¹öÀÇ inode ¹øÈ£(INO)°¡ ÁöÁ¤µÇ¸ç, ÀÌ ¹øÈ£´Â ÆÄÀÏÀÇ °íÀ¯ IDÀÌ´Ù.
±×·± ´ÙÀ½ ÆÄÀÏÀº ÆÄÀÏ Å©±â¿¡ µû¶ó ¸î °³ÀÇ ¿ÀºêÁ§Æ®·Î ºÐÇҵȴÙ.
INO¿Í ¿ÀºêÁ§Æ® ¹øÈ£(ONO)¸¦ »ç¿ëÇÏ¿© °¢ ¿ÀºêÁ§Æ®¿¡ ¿ÀºêÁ§Æ® ID(OID)°¡ ÁöÁ¤µÈ´Ù.
OID¿¡ ´ëÇÑ °£´ÜÇÑ Çؽø¦ »ç¿ëÇÏ¿© °¢ ¿ÀºêÁ§Æ®°¡ ¹èÄ¡ ±×·ì¿¡ ÁöÁ¤µÈ´Ù.
¹èÄ¡ ±×·ì(PGID·Î ½Äº°µÊ)Àº ¿ÀºêÁ§Æ®¿¡ ´ëÇÑ °³³äÀûÀÎ ÄÁÅ×À̳ÊÀÌ´Ù.
¸¶Áö¸·À¸·Î ¿ÀºêÁ§Æ® ½ºÅ丮Áö ÀåÄ¡¿¡ ´ëÇÑ ¹èÄ¡ ±×·ìÀÇ ¸ÊÇÎÀº CRUSH(Controlled Replication Under Scalable Hashing)¶ó´Â
¾Ë°í¸®ÁòÀ» »ç¿ëÇÏ´Â ÀÇ»ç ³¼ö ¸ÊÇÎÀÌ´Ù.
µû¶ó¼ ½ºÅ丮Áö ÀåÄ¡¿¡ ´ëÇÑ ¹èÄ¡ ±×·ìÀÇ ¸ÊÇÎÀº ¸ÞŸµ¥ÀÌÅÍ ´ë½Å ÀÇ»ç ³¼ö ¸ÊÇÎ ÇÔ¼ö¸¦ »ç¿ëÇÑ´Ù.
ÀÌ µ¿ÀÛÀº ½ºÅ丮ÁöÀÇ ¿À¹öÇìµå¸¦ ÃÖ¼ÒÈÇÏ°í µ¥ÀÌÅÍ ºÐ¹è ¹× Á¶È¸¸¦ ´Ü¼øÈÇϱ⠶§¹®¿¡ ÀÌ»óÀûÀÌ´Ù.
ÇÒ´çÀ» À§ÇÑ ¸¶Áö¸· ±¸¼º ¿ä¼Ò´Â Ŭ·¯½ºÅÍ ¸ÊÀÌ´Ù. Ŭ·¯½ºÅÍ ¸ÊÀº ½ºÅ丮Áö Ŭ·¯½ºÅ͸¦ ³ªÅ¸³»´Â ÀåÄ¡¸¦ È¿À²ÀûÀ¸·Î º¸¿© ÁØ´Ù. PGID¿Í Ŭ·¯½ºÅÍ ¸ÊÀ» »ç¿ëÇÏ¿© ¸ðµç ¿ÀºêÁ§Æ®¸¦ ãÀ» ¼ö ÀÖ´Ù
Ceph ¸ÞŸµ¥ÀÌÅÍ ¼¹ö
¸ÞŸµ¥ÀÌÅÍ ¼¹ö(cmds)ÀÇ ¿ªÇÒÀº ÆÄÀÏ ½Ã½ºÅÛÀÇ ³×ÀÓ½ºÆäÀ̽º¸¦ °ü¸®ÇÏ´Â °ÍÀÌ´Ù.
¸ÞŸµ¥ÀÌÅÍ¿Í µ¥ÀÌÅÍ´Â µÑ ´Ù ¿ÀºêÁ§Æ® ½ºÅ丮Áö Ŭ·¯½ºÅÍ¿¡ ÀúÀåµÇ±â´Â ÇÏÁö¸¸ È®À强À» Áö¿øÇϱâ À§ÇØ º°µµ·Î °ü¸®µÈ´Ù.
½ÇÁ¦·Î ¸ÞŸµ¥ÀÌÅÍ´Â ³×ÀÓ½ºÆäÀ̽º¸¦ ÀûÀýÈ÷ º¹Á¦ ¹× ºÐ¹èÇÏ¿© ÇÖ½ºÆÌÀ» ¹æÁöÇÒ ¼ö ÀÖµµ·Ï ¸ÞŸµ¥ÀÌÅÍ ¼¹ö Ŭ·¯½ºÅÍ¿¡ ºÐ»êµÈ´Ù. ±×¸² 4¿¡¼ º¸µíÀÌ ¸ÞŸµ¥ÀÌÅÍ ¼¹ö´Â ³×ÀÓ½ºÆäÀ̽ºÀÇ ÀϺθ¦ °ü¸®Çϸç Áߺ¹¼º ¹× ¼º´ÉÀ» À§ÇØ °ü¸® ¿µ¿ªÀÌ ¼·Î °ãÄ¥ ¼ö ÀÖ´Ù.
³×ÀÓ½ºÆäÀ̽º¿¡ ´ëÇÑ ¸ÞŸµ¥ÀÌÅÍ ¼¹öÀÇ ¸ÊÇÎÀº Ceph¿¡¼ µ¿Àû ¼ºêÆ®¸® ÆÄƼ¼Å´×À» »ç¿ëÇÏ¿© ¼öÇàµÈ´Ù.
ÀÌ ¹æ¹ýÀ» ÅëÇØ Ceph´Â º¯°æµÇ´Â ¿öÅ©·Îµå(¸ÞŸµ¥ÀÌÅÍ ¼¹ö °£ÀÇ ³×ÀÓ½ºÆäÀ̽º ¸¶À̱׷¹À̼Ç)¿¡ ÀûÀýÈ÷ ´ëÀÀÇϸ鼵µ
¼º´ÉÀ» À§ÇØ Áö¿ª¼ºÀ» À¯ÁöÇÒ ¼ö ÀÖ´Ù.
ÇÏÁö¸¸ °¢ ¸ÞŸµ¥ÀÌÅÍ ¼¹ö´Â ´Ü¼øÈ÷ Ŭ¶óÀ̾ðÆ® Áý´Ü¿¡ ´ëÇÑ ³×ÀÓ½ºÆäÀ̽º¸¦ °ü¸®ÇϹǷΠ±âº» ¾ÖÇø®ÄÉÀ̼ÇÀº
ÀÎÅÚ¸®ÀüÆ® ¸ÞŸµ¥ÀÌÅÍ Ä³½ÃÀÌ´Ù. (½ÇÁ¦ ¸ÞŸµ¥ÀÌÅÍ´Â °á±¹ ¿ÀºêÁ§Æ® ½ºÅ丮Áö Ŭ·¯½ºÅÍ ³»¿¡ ÀúÀåµÇ±â ¶§¹®ÀÌ´Ù.)
ÀÛ¼ºÇÒ ¸ÞŸµ¥ÀÌÅÍ´Â ´Ü±â Àú³Î¿¡ ij½ÃµÈ ÈÄ ÃÖÁ¾ÀûÀ¸·Î ½ÇÁ¦ ½ºÅ丮Áö¿¡ ÀúÀåµÈ´Ù.
ÀÌ µ¿ÀÛÀ» ÅëÇØ ¸ÞŸµ¥ÀÌÅÍ ¼¹ö´Â ÃÖ±Ù ¸ÞŸµ¥ÀÌÅ͸¦ Ŭ¶óÀ̾ðÆ®¿¡°Ô µÇµ¹·Á º¸³¾ ¼ö ÀÖ´Ù(ÀϹÝÀûÀÎ ¸ÞŸµ¥ÀÌÅÍ ÀÛ¾÷).
¶ÇÇÑ Àú³ÎÀº Àå¾Ö º¹±¸¿¡ À¯¿ëÇÏ´Ù. ¸ÞŸµ¥ÀÌÅÍ ¼¹ö°¡ ½ÇÆÐÇÒ °æ¿ì ÇØ´ç Àú³ÎÀ» Àç½ÇÇàÇÏ¿© ¸ÞŸµ¥ÀÌÅ͸¦
µð½ºÅ©¿¡ ¾ÈÀüÇÏ°Ô ÀúÀåÇÒ ¼ö ÀÖ´Ù.
¸ÞŸµ¥ÀÌÅÍ ¼¹ö´Â inode °ø°£À» °ü¸®ÇÏ¸é¼ ÆÄÀÏ À̸§À» ¸ÞŸµ¥ÀÌÅÍ·Î º¯È¯ÇÑ´Ù.
¸ÞŸµ¥ÀÌÅÍ ¼¹ö´Â ÆÄÀÏ À̸§À» Ceph Ŭ¶óÀ̾ðÆ®°¡ ÆÄÀÏ I/O¸¦ À§ÇØ »ç¿ëÇÏ´Â inode, ÆÄÀÏ Å©±â ¹×
½ºÆ®¶óÀÌÇÁ µ¥ÀÌÅÍ(·¹À̾ƿô)·Î º¯È¯ÇÑ´Ù.
Ceph ¸ð´ÏÅÍ
Ceph¿¡´Â Ŭ·¯½ºÅÍ ¸ÊÀÇ °ü¸®¸¦ ±¸ÇöÇÑ ¸ð´ÏÅÍ°¡ ÀÖÁö¸¸ ÀϺΠ¿À·ù °ü¸® ¿ä¼Ò´Â ¿ÀºêÁ§Æ® ÀúÀå¼Ò ÀÚü¿¡ ±¸ÇöµÇ¾î ÀÖ´Ù.
¿ÀºêÁ§Æ® ½ºÅ丮Áö ÀåÄ¡°¡ ½ÇÆÐÇϰųª »õ ÀåÄ¡°¡ Ãß°¡µÇ¸é ¸ð´ÏÅÍ°¡ À̸¦ °¨ÁöÇÏ°í ¿Ã¹Ù¸¥ Ŭ·¯½ºÅÍ ¸ÊÀ» °ü¸®ÇÑ´Ù.
ÀÌ ±â´ÉÀº ¸Ê ¾÷µ¥ÀÌÆ®°¡ ±âÁ¸ Æ®·¡ÇÈ°ú Åë½ÅÇÏ´Â ºÐ»ê Çü½ÄÀ¸·Î ¼öÇàµÈ´Ù. Ceph´Â ºÐ»ê ȯ°æ¿¡¼ÀÇ ÇÕÀǸ¦ À§ÇÑ
¾Ë°í¸®ÁòÀÇ ¸ðÀ½ÀÎ Paxos¸¦ »ç¿ëÇÑ´Ù.
Ceph ¿ÀºêÁ§Æ® ½ºÅ丮Áö
ÀϹÝÀûÀÎ ¿ÀºêÁ§Æ® ½ºÅ丮Áö¿Í ¸¶Âù°¡Áö·Î Ceph ½ºÅ丮Áö ³ëµå¿¡´Â ½ºÅ丮Áö»Ó¸¸ ¾Æ´Ï¶ó ÀÎÅÚ¸®Àü½ºµµ µé¾î ÀÖ´Ù.
ÀϹÝÀûÀÎ µå¶óÀ̺ê´Â ½ÇÇàÀÚÀÇ ¸í·É¿¡ ÀÀ´ä¸¸ ÇÏ´Â ´Ü¼øÇÑ ´ë»óÀÌ´Ù. ÇÏÁö¸¸ ¿ÀºêÁ§Æ® ½ºÅ丮Áö ÀåÄ¡´Â
´Ù¸¥ ¿ÀºêÁ§Æ® ½ºÅ丮Áö ÀåÄ¡¿Í Åë½Å ¹× Çù¾÷ÇÒ ¼ö ÀÖµµ·Ï ´ë»ó ¹× ½ÇÇàÀÚ ¿ªÇÒÀ» µÑ ´Ù ¼öÇàÇÏ´Â ÀÎÅÚ¸®ÀüÆ® ÀåÄ¡ÀÌ´Ù.
½ºÅ丮Áö ÆÛ½ºÆåƼºê¿¡¼ Ceph ¿ÀºêÁ§Æ® ½ºÅ丮Áö ÀåÄ¡´Â ¿ÀºêÁ§Æ®¸¦ ºí·Ï¿¡ ¸ÊÇÎÇÑ´Ù(ÀϹÝÀûÀ¸·Î Ŭ¶óÀ̾ðÆ®ÀÇ
ÆÄÀÏ ½Ã½ºÅÛ °èÃþ¿¡¼ ¼öÇàµÇ´Â ÀÛ¾÷). ÀÌ µ¿ÀÛÀ» ÅëÇØ ·ÎÄà ¿£Æ¼Æ¼´Â ¿ÀºêÁ§Æ®¸¦ ÀúÀåÇÒ ¼ö ÀÖ´Â ÃÖ¼±ÀÇ ¹æ¹ýÀ» °áÁ¤ÇÒ ¼ö ÀÖ´Ù. Ãʱ⠹öÀüÀÇ Ceph¿¡¼´Â EBOFS¶ó´Â ·ÎÄà ½ºÅ丮Áö¿¡ »ç¿ëÀÚ Á¤ÀÇ ÇÏÀ§ ·¹º§ ÆÄÀÏ ½Ã½ºÅÛÀ» ±¸ÇöÇß´Ù.
ÀÌ ½Ã½ºÅÛÀº ¿ÀºêÁ§Æ® ½Ã¸Çƽ ¹× ±âŸ ±â´É(¿¹¸¦ µé¾î, µð½ºÅ©¿¡ ´ëÇÑ Ä¿¹ÌÆ®¸¦ ºñµ¿±âÀûÀ¸·Î ¾Ë¸®´Â ±â´É)¿¡ ¸Â°Ô Á¶Á¤µÈ
±âº» ½ºÅ丮Áö¿¡ ´ëÇÑ ºñÇ¥ÁØ ÀÎÅÍÆäÀ̽º¸¦ ±¸ÇöÇß´Ù.
¿À´Ã³¯¿¡´Â ÀϺΠÇʼö ±â´É(¿¹: ÀÓº£µðµå ¹«°á¼º)À» ÀÌ¹Ì ±¸ÇöÇØ ³õÀº BTRFS(B-Tree File System)¸¦ ½ºÅ丮Áö ³ëµå¿¡¼
»ç¿ëÇÒ ¼ö ÀÖ´Ù.
Ceph Ŭ¶óÀ̾ðÆ®´Â CRUSH¸¦ ±¸ÇöÇÏ°í µð½ºÅ©¿¡ ÀÖ´Â ÆÄÀÏÀÇ ºí·Ï ¸ÊÇÎÀ» ¸ð¸£±â ¶§¹®¿¡ ±âº» ½ºÅ丮Áö ÀåÄ¡¿¡¼ ºí·Ï¿¡ ´ëÇÑ
¿ÀºêÁ§Æ®ÀÇ ¸ÊÇÎÀ» ¾ÈÀüÇÏ°Ô °ü¸®ÇÒ ¼ö ÀÖ´Ù. À̸¦ ÅëÇØ ½ºÅ丮Áö ³ëµå¿¡¼ µ¥ÀÌÅ͸¦ º¹Á¦ÇÒ ¼ö ÀÖ´Ù(ÀåÄ¡°¡ ½ÇÆÐÇßÀ» °æ¿ì).
Àå¾Ö °¨Áö ¹× º¹±¸°¡ ¿¡ÄڽýºÅÛ Àüü¿¡ ºÐ¹èµÇ±â ¶§¹®¿¡ Àå¾Ö º¹±¸¸¦ ºÐ¹èÇÏ¿© ½ºÅ丮Áö ½Ã½ºÅÛÀ» È®ÀåÇÒ ¼ö ÀÖ´Ù.
Ceph¿¡¼´Â À̸¦ RADOS¶ó°í ÇÑ´Ù(±×¸² 3 ÂüÁ¶).
±âŸ Èï¹Ì·Î¿î ±â´É
¸¶Ä¡ ÆÄÀÏ ½Ã½ºÅÛÀÇ µ¿Àû Ư¼º°ú ÀûÀÀ¼ºÀÌ ÃæºÐÇÏÁö ¾ÊÀº °Íó·³ Ceph¿¡´Â »ç¿ëÀÚ¿¡°Ô Ç¥½ÃµÇ´Â ÀϺΠÈï¹Ì·Î¿î ±â´ÉÀÌ
±¸ÇöµÇ¾î ÀÖ´Ù.
¿¹¸¦ µé¾î, »ç¿ëÀÚ´Â CephÀÇ ¸ðµç ¼ºêµð·ºÅ丮(¸ðµç ³»¿ë Æ÷ÇÔ)¿¡¼ ½º³À¼¦À» ÀÛ¼ºÇÒ ¼ö ÀÖ´Ù.
¶ÇÇÑ ¼ºêµð·ºÅ丮 ·¹º§¿¡¼ ÁöÁ¤µÈ ¼ºêµð·ºÅ丮(¹× ¸ðµç Áßø ³»¿ë)¿¡ ´ëÇÑ ½ºÅ丮Áö Å©±â ¹× ÆÄÀÏ ¼ö¸¦ º¸°íÇÏ´Â
ÆÄÀÏ ¹× ¿ë·® °è»êÀ» ¼öÇàÇÒ ¼ö ÀÖ´Ù.
CephÀÇ ÇöÀç¿Í ¹Ì·¡
ÀÌÁ¦ Ceph°¡ ÁÖ·ù Linux Ä¿³Î¿¡ ÅëÇյDZâ´Â ÇßÁö¸¸ ¾ÆÁ÷±îÁö´Â ½ÇÇè¿ëÀ̶ó´Â Ç¥ÇöÀÌ ÀûÇÕÇÑ »óÅÂÀÌ´Ù.
ÀÌ »óÅÂÀÇ ÆÄÀÏ ½Ã½ºÅÛÀº Æò°¡Çϱ⿡´Â À¯¿ëÇÏÁö¸¸ ÇÁ·Î´ö¼Ç ȯ°æ¿¡ »ç¿ëÇϱ⿡´Â ¹ÌÁøÇÑ Á¡ÀÌ ³²¾Æ ÀÖ´Ù.
ÇÏÁö¸¸ Ceph°¡ Linux Ä¿³Î¿¡ äÅõǾú°í Ceph¸¦ °³¹ßÇÑ °³¹ßÀÚ°¡ Áö¼ÓÀûÀ¸·Î °³¹ßÇÏ·Á´Â ¿ÀǸ¦ °¡Áö°í Àֱ⠶§¹®¿¡
¸ÓÁö ¾Ê¾Æ ´ë¿ë·® ½ºÅ丮Áö ¿ä±¸¸¦ ÃæÁ·ÇÏ´Â Ceph¸¦ º¼ ¼ö ÀÖÀ» °ÍÀÌ´Ù.
±âŸ ºÐ»ê ÆÄÀÏ ½Ã½ºÅÛ
Ceph´Â ºÐ»ê ÆÄÀÏ ½Ã½ºÅÛ ºÐ¾ß¿¡¼´Â °íÀ¯ÇÏÁö ¾ÊÁö¸¸ ´ë¿ë·® ½ºÅ丮Áö ¿¡ÄڽýºÅÛÀ» °ü¸®ÇÏ´Â ¹æ¹ý ¸é¿¡¼´Â °íÀ¯ÇÏ´Ù.
ºÐ»ê ÆÄÀÏ ½Ã½ºÅÛÀÇ ¸î °¡Áö ¿¹¸¦ µéÀÚ¸é GFS(Google File System), GPFS(General Parallel File System) ¹× Lustre°¡ ÀÖ´Ù.
Ceph¸¦ ÅëÇØ ¿ì¸®´Â ºÐ»ê ÆÄÀÏ ½Ã½ºÅÛÀÇ Èï¹Ì·Î¿î ¹Ì·¡¸¦ ÁüÀÛÇÒ ¼ö ÀÖ´Ù.
±×°ÍÀº ¹Ù·Î ±Ô¸ð°¡ Ä¿Áö¸é¼ ´ë±Ô¸ð ½ºÅ丮Áö ¹®Á¦Á¡À» ±Øº¹ÇØ¾ß ÇÏ´Â °íÀ¯ÇÑ °úÁ¦°¡ ´« ¾Õ¿¡ ´Ù°¡¿Ô´Ù´Â °ÍÀÌ´Ù.
À̱ÛÀº IBM¿¡ M.Tim Jones ¶ó´Â ÀúÀÚ°¡ ±â°íÇÑ ±ÛÀÔ´Ï´Ù.
¿ø¹®Àº ¿µ¹®À̸ç ÇÑ±Û ¹ø¿ªÀº ¾Æ·¡ÀÇ Ãâó¸¦ ¹àÈü´Ï´Ù.
http://www.ibm.com/developerworks/kr/library/l-ceph/