»óǰ ¾È³» ¹× ȯºÒ, ±³È¯, ¹è¼Û¹®ÀÇ | |
- °¡°Ô ÀüȹøÈ£ : | 1544-1900 |
- Àüȹ®ÀÇ ½Ã°£ : |
¿ÀÀü 9½ÃºÎÅÍ ¿ÀÈÄ 6½Ã±îÁö (¸ÅÁÖ ¿ù¿äÀÏ, È¿äÀÏ, ¼ö¿äÀÏ, ¸ñ¿äÀÏ, ±Ý¿äÀÏ, °øÈÞÀÏ Á¦¿Ü) |
- °¡°Ô À̸ÞÀÏ : | ink@kyobobook.co.kr |
- ÀÌ¿ë Åùèȸ»ç : | CJ´ëÇÑÅë¿î |
ÆÇ¸Å°¡°ÔÁ¤º¸ |
|
- »ç¾÷ÀÚ¸í : | (ÁÖ)±³º¸¹®°í |
- »ç¾÷ÀÚµî·Ï¹øÈ£ : | 102-81-11670 |
- Åë½ÅÆÇ¸Å¾÷½Å°í : | 01-0653 |
- Çö±Ý¿µ¼öÁõ : ¹ß±Þ°¡´É |
|
ÀüÈÁÖ¹® ¹× °áÁ¦¹®ÀÇ |
|
- ²ÉÇÇ´Â ¾ÆÄ§¸¶À» : | 1644-8422 |
°¡°Ô¿Í Á÷°Å·¡¸¦ ÇÏ½Ã¸é ²É¼ÛÀÌ Àû¸³ ¹× °¢Á¾ ÇýÅÿ¡¼ Á¦¿ÜµÇ°í, ¸¸ÀÏÀÇ ¹®Á¦°¡ ¹ß»ýÇÏ´Â °æ¿ì¿¡µµ ²É¸¶ÀÇ µµ¿òÀ» ¹ÞÀ¸½Ç ¼ö ¾ø½À´Ï´Ù. °¡°ÔÀÇ ºÎ´çÇÑ ¿ä±¸, ºÒ°øÁ¤ ÇàÀ§ µî¿¡ ´ëÇØ¼µµ ²É¸¶·Î Á÷Á¢ ÀüÈÁÖ¼¼¿ä. |
»ó¼¼Á¤º¸ | ±¸¸ÅÈıâ (0) | »óǰ Q&A (0) | ¹è¼Û/±³È¯/ȯºÒ ¾È³» |
Ã¥¼Ò°³2024³â 02¿ù 29ÀÏ Ãâ°£ | ISBN : 1161758283 | 284ÂÊ
ÀúÀÚ¼Ò°³ÀúÀÚ : ¸®ºñ¿ì ÄÚ½ºÅ×¾Æ
¸®ºñ¿ì ÄÚ½ºÅ×¾Æ(Liviu Costea)
2000³â ÃÊ °³¹ßÀÚ·Î ½ÃÀÛÇØ °³¹ßÀÚ¿¡¼ ÄÚµù ¼³°èÀÚ·Î, ±×¸®°í ÆÀÀåºÎÅÍ CTO±îÁö ´Ù¾çÇÑ ¿ªÇÒÀ» ¼öÇàÇß´Ù. 2012³â ÀÛÀº ȸ»çÀÇ µ¥ºê¿É½º(DevOps) Á÷±ºÀ¸·Î ÀüȯÇßÀ¸¸ç, ±âÁ¸ÀÇ ÀüÅëÀûÀÎ ¹æ½ÄÀ¸·Î´Â È®ÀåÀÇ ÇѰ踦 ´À²¸ ÆÄÀÌÇÁ¶óÀΰú ÀÚµ¿È ÀÛ¾÷À» ´ã´çÇß´Ù.
2018³â¿¡´Â Ç÷§Æû ÆÀÀ» ½ÃÀÛÀ¸·Î Mambu ¸±¸®½º ÆÀÀÇ ±â¼ú Ã¥ÀÓÀÚ°¡ µÅ ±ê¿É½º ¹æ½ÄÀ» äÅÃÇØ ´ëºÎºÐÀÇ Áö¼ÓÀûÀÎ ÅëÇÕ/Áö¼ÓÀûÀÎ ¹èÆ÷(CI/CD, Continuous Integration/Continuous Deployment) ÆÄÀÌÇÁ¶óÀÎÀ» ¼³°èÇß´Ù. 2019³âºÎÅÍ Argo CD¸¦ µµÀÔÇß´Ù. ÃÖ±Ù¿¡´Â ±ê¿É½º äÅÃÀ» °èȹÇϰí ÀÖ´Â À¯¸ÁÇÑ ½ºÅ¸Æ®¾÷ÀÎ ÁÖ´Ï(Juni)¿¡ ÇÕ·ùÇß´Ù. Argo CD¸¦ Æ÷ÇÔÇÑ OSS ÇÁ·ÎÁ§Æ®¿¡ ±â¿©ÇÑ °ø·Î·Î 2020³â 8¿ù¿¡ CNCF ¾Ú¹ö¼´õ(ambassador)·Î ÀÓ¸íµÆ´Ù.
ÀúÀÚ : ½ºÇǷνº ÀÌÄڳ븶Ű½º
½ºÇǷνº ÀÌÄڳ븶Ű½º(Spiros Economakis)
2010³â¿¡ ¼ÒÇÁÆ®¿þ¾î ¿£Áö´Ï¾î·Î ½ÃÀÛÇØ ¼ÒÇÁÆ®¿þ¾î ¼³°èÀÚ¸¦ °ÅÃÄ Å¬¶ó¿ìµå Ã¥ÀÓÀÚ¿¡ À̸£±â±îÁö ´Ù¾çÇÑ Á÷±º°ú ¿ªÇÒÀ» ´ã´çÇß´Ù. 2013³â¿¡´Â ÀÚ½ÅÀÇ È¸»ç¸¦ ¼³¸³ÇÏ¸é¼ µ¥ºê¿É½º ¹®È¸¦ óÀ½ Á¢Çß´Ù. ¼Ò±Ô¸ð ÆÀ°ú ÇÔ²² ¸¶ÀÌÅ©·Î¼ºñ½º ¾ÆÅ°ÅØÃ³ ¹× ¸ð¹ÙÀÏ ¾ÖÇø®ÄÉÀÌ¼Ç ¹èÆ÷¸¦ À§ÇÑ 2°³ÀÇ CI/CD ÆÄÀÌÇÁ¶óÀÎÀ» ±¸ÃàÇß´Ù. ±× ÈÄ ÀÚ½ÅÀÌ Âü¿©ÇÑ ´ëºÎºÐÀÇ È¸»çÀÇ µ¥ºê¿É½º ¹®È ¹× ÀÚµ¿È¿¡ ¿µÇâÀ» ¹ÌÃÆ´Ù.
¿ªÀÚ : ÀÌÀåÈÆ
°Ç±¹´ëÇб³ ¿µ¾î¿µ¹®Çаú¸¦ Á¹¾÷ÇßÁö¸¸, IT°¡ ÁÁ¾Æ¼ 4³âÂ÷ Ŭ¶ó¿ìµå ¿£Áö´Ï¾î·Î ÀÏÇϰí ÀÖ´Ù. Áö±ÝÀº Ŭ¶ó¿ìµå ³×ÀÌÆ¼ºê¿Í Äí¹ö³×Ƽ½º¿¡ ¸¹Àº °ü½ÉÀ» °®°í ÀÖ´Ù. µ¥ºê¿É½º(DevOps), Çɿɽº(FinOps), ¼½¿É½º(SecOps) ´É·ÂÀ» °®Ãß·Á°í Ç×»ó ³ë·ÂÇϰí ÀÖ´Ù.
¸ñÂ÷1ºÎ. ±ê¿É½º¿Í Argo CDÀÇ ±âÃÊ
1Àå. ±ê¿É½º¿Í Äí¹ö³×Ƽ½º
__±â¼ú ¿ä±¸ »çÇ×
__±ê¿É½º¶õ ¹«¾ùÀΰ¡?
__Äí¹ö³×Ƽ½º¿Í ±ê¿É½º
____¾ÆÅ°ÅØÃ³
____HTTP REST API ¼¹ö
____ÄÁÆ®·Ñ·¯ ¸Å´ÏÀú
__¸í·ÉÇü API¿Í ¼±¾ðÇü API
____¸í·ÉÇü ¹æ½Ä - Á÷Á¢ ¸í·É
____¸í·ÉÇü ¹æ½Ä - ±¸¼º ÆÄÀÏ »ç¿ë
____¼±¾ðÇü ¹æ½Ä - ±¸¼º ÆÄÀÏ »ç¿ë
____¼±¾ðÇü ¹æ½Ä - ±¸¼º Æú´õ¿Í ÇÔ²²
__°£´ÜÇÑ ±ê¿É½º ¿ÀÆÛ·¹ÀÌÅÍ ±¸Ãà
__IaC¿Í ±ê¿É½º
__¿ä¾à
__´õ ¾Ë¾Æº¸±â
2Àå. Argo CD ½ÃÀÛÇϱâ
__±â¼ú ¿ä±¸ »çÇ×
__Argo CD¶õ ¹«¾ùÀΰ¡?
____Argo CD¿Í Ä£ÇØÁö±â
__ÇÙ½É °³³ä°ú ¿ë¾î Á¤¸®
____Argo CD Á¶Á¤
____¿ë¾î
__¾ÆÅ°ÅØÃ³ ¼³¸í
____¾ÆÅ°ÅØÃ³ °³¿ä
____Argo CDÀÇ ÇÙ½É ±¸¼º ¿ä¼Ò
____Argo CDÀÇ ÇÙ½É ¿ÀºêÁ§Æ®¿Í ¸®¼Ò½º
____Ç︧À¸·Î Argo CD ½ÇÇàÇϱâ
____Argo CD ù ¾ÖÇø®ÄÉÀÌ¼Ç ½ÇÇàÇϱâ
____Argo CD ¿ÀÅäÆÄÀÏ·µÀ» ÅëÇØ Argo CD ¿î¿µÇϱâ
__µ¿±âÈ ¿ø¸®
____¸®¼Ò½º ÈÅ
____µ¿±âÈ ¿þÀ̺ê
__¿ä¾à
__´õ ¾Ë¾Æº¸±â
2ºÎ. SRE¿Í Argo CD
3Àå. Argo CD ¿î¿µ
__±â¼ú ¿ä±¸ »çÇ×
__¼±¾ðÀû ±¸¼º
____Kustomize¸¦ Ȱ¿ëÇÑ °í°¡¿ë¼º ¼³Ä¡
____Argo CD ÀÚü °ü¸®
____¼³Á¤ º¯°æ
__°í°¡¿ë¼º ¼³Ä¡
____API ¼¹ö
____¸®Æ÷ÁöÅ͸® ¼¹ö
____¾ÖÇø®ÄÉÀÌ¼Ç ÄÁÆ®·Ñ·¯
____·¹µð½º ij½Ã
____Dex ¼¹ö
__ÀçÇØ º¹±¸ °èȹ
____CLI ¼³Ä¡Çϱâ
____¹é¾÷ »ý¼ºÇϱâ
____´Ù¸¥ Ŭ·¯½ºÅÍ¿¡¼ º¹¿øÇϱâ
__°üÂû °¡´É¼º Ȱ¼ºÈ
____ÇÁ·Î¸ÞÅ׿콺·Î ¸ð´ÏÅ͸µÇϱâ
____¿î¿µÆÀÀÌ È®ÀÎÇÒ ¸ÞÆ®¸¯
____¸¶ÀÌÅ©·Î¼ºñ½º ÆÀÀ» À§ÇÑ ¸ÞÆ®¸¯
__»ç¿ëÀÚ¿¡°Ô ÅëÁö
____Argo CD Notifications ¼³Ä¡
____ÆÄÀÌÇÁ¶óÀÎ ½ÃÀÛÇϱâ
__¿ä¾à
__´õ ¾Ë¾Æº¸±â
4Àå. Á¢±Ù Á¦¾î
__±â¼ú ¿ä±¸ »çÇ×
__¼±¾ðÀû »ç¿ëÀÚ
____°ü¸®ÀÚ¿Í ·ÎÄà »ç¿ëÀÚ
__¼ºñ½º ¾îÄ«¿îÆ®
____·ÎÄà ¼ºñ½º ¾îÄ«¿îÆ®
____ÇÁ·ÎÁ§Æ® ¿ªÇÒ°ú ÅäÅ«
__SSO
____Dex¸¦ ÅëÇØ SSO ÀÌ¿ëÇϱâ
____Argo CD¿¡¼ Á÷Á¢ SSO Ȱ¿ëÇϱâ
__¿ä¾à
__´õ ¾Ë¾Æº¸±â
3ºÎ. ¿î¿µ ȯ°æ¿¡¼ Argo
5Àå. Argo CD·Î Äí¹ö³×Ƽ½º Ŭ·¯½ºÅÍ ºÎÆ®½ºÆ®·¦
__±â¼ú ¿ä±¸ »çÇ×
__Å×¶óÆûÀ» ÅëÇÑ ¾Æ¸¶Á¸ EKS Ŭ·¯½ºÅÍ »ý¼º
____¾Æ¸¶Á¸ EKS¿Í Ä£ÇØÁö±â
____EKS ÀÎÇÁ¶ó ¼³°èÇϱâ
____Å×¶óÆûÀ¸·Î EKS ÇÁ·ÎºñÀú´×
__Argo CD·Î EKS ºÎÆ®½ºÆ®·¦Çϱâ
____Å×¶óÆûÀ¸·Î Argo CD ÁغñÇϱâ
____Å×¶óÆûÀ¸·Î Argo CD Àû¿ëÇϱâ
__app of apps ÆÐÅÏ È°¿ë
____¿Ö app of apps ÆÐÅÏÀΰ¡?
____À¯Æ¿¸®Æ¼ ºÎÆ®½ºÆ®·¦Çϱâ
__ºÎÆ®½ºÆ®·¦ ¿¬½À
____ÀÎÇÁ¶ó »èÁ¦
____ÀÎÇÁ¶ó Àç»ý¼º
____app of apps ÆÐÅÏÀÇ ´ÜÁ¡
____ApplicationSetÀº ¹«¾ùÀΰ¡?
____Á¦³Ê·¹ÀÌÅÍ
__¿ä¾à
__´õ ¾Ë¾Æº¸±â
6Àå. Argo CD ¹èÆ÷ ÆÄÀÌÇÁ¶óÀÎ ¼³°è
__±â¼ú ¿ä±¸ »çÇ×
__µµÀÔ ¹è°æ
____Äí¹ö³×Ƽ½º¿¡¼ °£´ÜÇÑ ºí·ç-±×¸° ¹èÆ÷
__¹èÆ÷ Àü·«
____Argo RolloutÀº ¹«¾ùÀΰ¡?
____¿Ö Argo RolloutÀΰ¡?
____Argo Rollout ¾ÆÅ°ÅØÃ³
____ºí·ç-±×¸° ¹èÆ÷ Àü·«
____Ä«³ª¸® ¹èÆ÷ Àü·«
__½ÇÁ¦ CI/CD ÆÄÀÌÇÁ¶óÀÎ
____Argo Rollout ¼¼ÆÃÇϱâ
____±êÇãºê ¾×¼ÇÀ» Ȱ¿ëÇØ ÀÚµ¿À¸·Î ºí·ç-±×¸° ½Â°ÝÇϱâ
____µ¿±âÈ ´Ü°è¸¦ ÅëÇÑ ÀÚµ¿ ·Ñ¾Æ¿ô
__¾ÈÀüÇÏ°Ô ½ÃÅ©¸´ º¸°üÇϱâ
____½ÃÅ©¸´¿¡ ¾ÈÀüÇÏ°Ô ÀúÀåÇϱâ
____Argo CD¿Í ¿ÜºÎ ½ÃÅ©¸´ ¿ÀÆÛ·¹ÀÌÅÍ
__¸¶ÀÌÅ©·Î¼ºñ½º CI/CD
__´ÜÀÏ ¸®Æ÷ÁöÅ͸® ¸¶ÀÌÅ©·Î¼ºñ½º
__¿ä¾à
__´õ ¾Ë¾Æº¸±â
7Àå. Argo CD ¹®Á¦ ÇØ°á
__±â¼ú ¿ä±¸ »çÇ×
__Ãʱ⠼³Ä¡
__¿î¿µ Áß ¹®Á¦ ÇØ°á
____±¸¼º ¿ä¼Ò Àç½ÃÀÛ
____ƯÁ¤ ¹öÀüÀÇ Ç︧ »ç¿ëÇϱâ
__¼º´É Çâ»ó
____¾ÖÇø®ÄÉÀÌ¼Ç ÄÁÆ®·Ñ·¯
____¸®Æ÷ÁöÅ͸® ¼¹ö
__¿ä¾à
__´õ ¾Ë¾Æº¸±â
8Àå. YAML°ú Äí¹ö³×Ƽ½º ¸Å´ÏÆä½ºÆ®
__±â¼ú ¿ä±¸ »çÇ×
__ÅÛÇø´ ¿É¼Ç Ȱ¿ë
____Ç︧
____Kustomize
__À¯È¿¼º °Ë»ç À¯Çü ޱ¸
__Äí¹ö³×Ƽ½º ½ºÅ°¸¶ °ËÁõ
__¸Å´ÏÆä½ºÆ® °È ¸ð¹ü »ç·Ê
__conftest·Î È®À强 ÀÖ´Â °Ë»ç ¼öÇà
__¿ä¾à
__´õ ¾Ë¾Æº¸±â
9Àå. ¹Ì·¡¿Í °á·Ð
__±â¼ú ¿ä±¸ »çÇ×
__±ê¿É½º ´ëÁßÈ
__±ê¿É½º ¿£ÁøÀº ¹«¾ùÀΰ¡?
____±ê¿É½º ¿¡ÀÌÀüÆ®
__kubernetes-sigs/cli-utils´Â ¹«¾ùÀΰ¡?
____kapply »ç¿ë¹ý
__¸¶¹«¸®
__¿ä¾à
__´õ ¾Ë¾Æº¸±â
ÃâÆÇ»ç ¼Æò¢Â ÀÌ Ã¥¿¡¼ ´Ù·ç´Â ³»¿ë ¢Â
¡ß ±ê¿É½º ¿øÄ¢À» ÀÌÇØÇϰí IaC¿Í °ü·Ã¼º ÆÄ¾Ç
¡ß Argo CD°¡ Git »óÅÂ¿Í Å¬·¯½ºÅÍ »óŸ¦ Á¶Á¤ÇÏ´Â ¿ø¸® ޱ¸ ÀÌÇØ
¡ß ÇÁ·Î´ö¼Ç ȯ°æ¿¡¼ ½Å·Ú¼º°ú ¹®Á¦ ÇØ°á¿¡ ÃÊÁ¡À» µÎ°í Argo CD ¿î¿µ
¡ß Çʼö À¯Æ¿¸®Æ¼¸¦ »ç¿ëÇØ ±ê¿É½º ¹æ½ÄÀ¸·Î Äí¹ö³×Ƽ½º Ŭ·¯½ºÅÍ ºÎÆ®½ºÆ®·¦
¡ß CD ÆÄÀÌÇÁ¶óÀÎ ±¸Ãà°ú ¹èÆ÷ ½ÇÆÐ ÃÖ¼ÒÈ
¡ß Äí¹ö³×Ƽ½º ÀÛ¾÷ ½Ã ÇÔ²² »ç¿ëÇÏ´Â YAMLÀ» °ËÁõÇϰí È®ÀÎÇÏ´Â ¹æ¹ý ޱ¸
¡ß ±ê¿É½º ´ëÁßÈ¿¡ ´ëÇÑ ÀÌÇØ¿Í ±ê¿É½º ¿£ÁøÀÇ ÀåÁ¡ ¼Ò°³
¢Â ÀÌ Ã¥ÀÇ ´ë»ó µ¶ÀÚ ¢Â
ÀÌ Ã¥Àº ¼ÒÇÁÆ®¿þ¾î ¿£Áö´Ï¾î, µ¥ºê¿É½º ¿£Áö´Ï¾î, SRE¿Í °°ÀÌ Äí¹ö³×Ƽ½º¸¦ ¿î¿µÇÏ¸é¼ CD ÆÄÀÌÇÁ¶óÀÎ ±¸ÃàÀ» ´ã´çÇÏ´Â »ç¶÷, º»ÀÎÀÇ Ä¿¸®¾î¸¦ Çâ»ó½ÃŰ°í ½ÍÀº »ç¶÷À» ´ë»óÀ¸·Î ÇÑ´Ù. Äí¹ö³×Ƽ½º(Kubernetes), Ç︧(Helm), Ä¿½ºÅ͸¶ÀÌÁî(Kustomize), CD ÆÄÀÌÇÁ¶óÀο¡ ´ëÇÑ ±âº»ÀûÀÎ Áö½ÄÀÌ ÀÖ´Ù¸é ÀÌ Ã¥À» ´õ Àß È°¿ëÇÒ ¼ö ÀÖ´Ù.
¢Â ÀÌ Ã¥ÀÇ ±¸¼º ¢Â
1Àå, ¡®±ê¿É½º¿Í Äí¹ö³×Ƽ½º¡¯¿¡¼´Â Äí¹ö³×Ƽ½º°¡ ¾î¶»°Ô ±ê¿É½º °³³äÀ» µµÀÔÇÒ ¼ö ÀÖ¾ú´ÂÁö ¾Ë¾Æº»´Ù. ¼±¾ðÀû API¸¦ ¾Ë¾Æº¸°í, ÆÄÀÏ, Æú´õ, ±ê ¸®Æ÷ÁöÅ͸®¿¡¼ ¸®¼Ò½º¸¦ ¾î¶»°Ô Àû¿ëÇÒ ¼ö ÀÖ´ÂÁö »ìÆìº»´Ù.
2Àå, ¡®Argo CD ½ÃÀÛÇϱ⡯¿¡¼´Â Argo CDÀÇ ÇÙ½É °³³ä°ú ¾ÆÅ°ÅØÃ³ °³¿ä¸¦ ¼Ò°³Çϰí ÀÚ¼¼È÷ ÀÌÇØÇϱâ À§ÇØ ¾Ë¾Æ¾ß ÇÒ Çʼö ¿ë¾î¸¦ »ìÆìº»´Ù.
3Àå, ¡®Argo CD ¿î¿µ¡¯¿¡¼´Â °í°¡¿ë¼º ¸Å´ÏÆä½ºÆ®(manifest)¸¦ »ç¿ëÇØ Argo CD¸¦ ¼³Ä¡Çغ¸°í, °¡Àå ÃÖÀûÀÇ ±¸¼º ¿É¼ÇÀÌ ¹«¾ùÀÎÁö ¾Ë¾Æº»´Ù. ÀçÇØ º¹±¸¸¦ ´ëºñÇϰí, ¸¹Àº ¸ÞÆ®¸¯ Áß ²À ÇÊ¿äÇÑ °ÍÀº ¹«¾ùÀÎÁö »ìÆìº»´Ù.
4Àå, ¡®Á¢±Ù Á¦¾î¡¯¿¡¼´Â »ç¿ëÀÚ Á¢±Ù ±ÇÇÑÀ» ¼³Á¤ÇÏ´Â ¹æ¹ý°ú CLI, À¥ UI ¶Ç´Â CI/CD ÆÄÀÌÇÁ¶óÀÎÀ» ÅëÇÑ ¿¬°á ¿É¼ÇÀ» ¾Ë¾Æº»´Ù. ¿ªÇÒ ±â¹Ý Á¢±Ù Á¦¾î(RBAC, Role-based Access Control)¿Í SSO¿¡ ´ëÇØ ¾Ë¾Æº¸°í À̸¦ ±¸¼ºÇÏ´Â ´Ù¾çÇÑ ¿É¼Ç¿¡ ´ëÇØ ÀÚ¼¼È÷ ¼³¸íÇÑ´Ù.
5Àå, ¡®Argo CD·Î Äí¹ö³×Ƽ½º Ŭ·¯½ºÅÍ ºÎÆ®½ºÆ®·¦¡¯¿¡¼´Â IaC(Infrastructure as code) µµ±¸¸¦ »ç¿ëÇØ Äí¹ö³×Ƽ½º Ŭ·¯½ºÅ͸¦ »ý¼ºÇÏ´Â ¹æ¹ý°ú ArgoCD·Î ÇÊ¿äÇÑ ¾ÖÇø®ÄÉÀ̼ÇÀ» ¼³Á¤ÇÏ°í ¾ÖÇø®ÄÉÀ̼ÇÀ» ¹èÆ÷ÇÒ ¶§ Á÷¸éÇÏ°Ô µÉ º¸¾È ¹®Á¦¸¦ È®ÀÎÇÏ´Â ¹æ¹ýÀ» ¾Ë¾Æº»´Ù.
6Àå, ¡®Argo CD ¹èÆ÷ ÆÄÀÌÇÁ¶óÀÎ ¼³°è¡¯¿¡¼´Â 5Àå¿¡¼ ¼³Ä¡ÇÑ ÀÎÇÁ¶ó¸¦ ±â¹ÝÀ¸·Î ½ÇÁ¦ ¹èÆ÷ Àü·«À» ¾Ë¾Æº¸°í ½ÃÅ©¸´°ú ¾Æ¸£°í ·Ñ¾Æ¿ô(Argo Rollouts)¿¡ Àͼ÷ÇØÁø´Ù.
7Àå, ¡®Argo CD ¹®Á¦ ÇØ°á¡¯¿¡¼´Â ¼³Ä¡ÇÒ ¶§ ȤÀº Æò¼Ò ÀÛ¾÷ °£ ÀÚÁÖ ¹ß»ýÇÒ ¼ö ÀÖ´Â ¹®Á¦¿¡ ´ëÇØ¼ ´Ù·ç°í Argo CD ¼º´ÉÀ» °³¼±ÇÏ´Â ¹æ¹ýÀ» »ìÆìº»´Ù.
8Àå, ¡®YAML ¹× Äí¹ö³×Ƽ½º ¸Å´ÏÆä½ºÆ®(ÆÄ½Ì ¹× °ËÁõ)¡¯¿¡¼´Â ÀÛ¼ºÇÑ YAML ¸Å´ÏÆä½ºÆ® À¯È¿¼ºÀ» °Ë»çÇϰí, ¸ð¹ü »ç·Ê¸¦ ÅëÇØ À̸¦ °ËÁõÇØº¸°í, Äí¹ö³×Ƽ½º ½ºÅ°¸¶¸¦ È®ÀÎÇϰųª ·¹°í(Rego)·Î ÀÛ¼ºµÈ ÀÚü È®Àå À¯È¿¼º °Ë»ç¸¦ ¼öÇàÇÏ´Â µ¥ »ç¿ëÇÒ ¼ö ÀÖ´Â µµ±¸¸¦ ¾Ë¾Æº»´Ù.
9Àå, ¡®¹Ì·¡¿Í °á·Ð¡¯¿¡¼´Â ±ê¿É½º ¿£Áø°ú kubernetes-sigs/cli-utils°¡ Argo CD³ª Äí¹ö³×Ƽ½º Ä¿¹Â´ÏƼ·ÎºÎÅÍ ºÐ¸®µÅ °³¹ßµÈ °úÁ¤, ±×¸®°í À̵éÀ» »ç¿ëÇØ ´Þ¼ºÇÏ·Á´Â ¸ñÇ¥¿¡ ´ëÇØ ¼³¸íÇÑ´Ù.
¢Â ÁöÀºÀÌÀÇ ¸» ¢Â
±ê¿É½º´Â ÀÌÇØÇϱ⠾î·Á¿î ÁÖÁ¦´Â ¾Æ´Ï´Ù. º»ÀÎÀÌ ¿øÇϴ ȯ°æÀ» ¼±¾ðÀûÀ¸·Î Á¤ÀÇÇϱâ À§ÇØ ±ê ¸®Æ÷ÁöÅ͸®(Git repository)¸¦ »ç¿ëÇÑ´Ù. ¹öÀü °ü¸®¿Í º´ÇÕ ¿äûÀ» ÅëÇØ º¯°æÇÏ´Â ¹æ½ÄÀ¸·Î Àüü ½Ã½ºÅÛÀ» °¨½ÃÇÑ´Ù.
ÀÏ´Ü ±ê¿É½º¸¦ µµÀÔÇÏ°Ô µÇ¸é Argo CD °°Àº ÅøÀ» »ç¿ëÇÏ¸é¼ Á¡Á¡ º¹ÀâÇØÁö±â ½ÃÀÛÇÑ´Ù. ù ¹øÂ°·Î °üÂû°¡´É¼º(observability)À̳ª °í°¡¿ë¼º(high availability)°ú °°Àº ³»¿ëÀ» ¿°µÎÇØ µÎ¸é¼ Argo CD¸¦ ¿Ã¹Ù¸£°Ô ¼³Á¤ÇØ¾ß ÇÑ´Ù. ±×¸®°í CI/CD ÆÄÀÌÇÁ¶óÀο¡ ´ëÇØ¼µµ °í¹ÎÇØº¸¸é¼ »õ·Î¿î ±ê¿É½º ¸®Æ÷ÁöÅ丮¸¦ ¿©±â¿¡ Àß À¶ÇÕÇÒÁöµµ °í¹ÎÇØ¾ß ÇÑ´Ù. ±×¸®°í Á¶Á÷ÀûÀ¸·Î ¿î¿µÇÏ¸é¼ ´Ù¾çÇÑ ¹®Á¦°¡ ¹ß»ýÇϱ⵵ ÇÑ´Ù. ¾î¶»°Ô °¢ ÆÀÀ» »õ·Î¿î ¼³Á¤¿¡ ¸Â°Ô ÅëÇÕÇÒ °ÍÀÎÁö °í¹ÎÇØ¾ß ÇÒ ¼öµµ ÀÖ´Ù. ¶ÇÇÑ ´ëºÎºÐ ¹èÆ÷ÇÏ´Â ³×ÀÓ½ºÆäÀ̽ºº°·Î Äí¹ö³×Ƽ½º Á¢±Ù ±ÇÇÑÀÌ ³ª´²Á® ÀÖÀ» ¼ö Àֱ⠶§¹®¿¡ RBAC(Role-Based ACcess, ¿ªÇÒ ±â¹Ý Á¢±Ù ÅëÁ¦)¸¦ ÀûÀýÇÏ°Ô ±¸¼ºÇÏ´Â µ¥ ½Ã°£ÀÌ ¼Ò¿äµÇ±âµµ Çϰí, ±âÁ¸ ÆÀÀÇ ¾×¼¼½º¸¦ ¾î¶»°Ô »õ·Î¿î ±ê¿É½º ¿£ÁøÀ¸·Î ÀÌÀüÇÒ °ÍÀÎÁöµµ °í·ÁÇØ¾ß ÇÑ´Ù.
ªÀº ±Û, ºñµð¿À, °ÀÇ µî ´Ù¾çÇÑ ÀÚ·á°¡ Á¸ÀçÇÏÁö¸¸ ´ÜÆíÀûÀÎ ÁÖÁ¦¸¦ ´Ù·ç°í Àֱ⠶§¹®¿¡ ÇнÀ ¹æÇâÀ» ¼³Á¤ÇÏ±â ¾î·Æ°í, ±×·¸°Ô ³»¿ëÀÌ ±íÁöµµ ¸øÇÏ´Ù.
±×·¡¼ Argo CD¸¦ µµÀÔÇÏ´Â °ÍÀÌ ¾î¶² º¯È¸¦ ¸¸µé°í, ¾î¶»°Ô »ç¿ëÇÏ´Â °ÍÀÎÁö ÆÄ¾ÇÇϱⰡ ½±Áö ¾Ê´Ù.
µ¶ÀÚµéÀÌ Argo CD¸¦ óÀ½ ½ÃÀÛÇÒ ¶§ ±âº»ÀûÀ¸·Î ÇÊ¿äÇÑ ³»¿ëÀÎ ¼³Ä¡ºÎÅÍ ¿Ã¹Ù¸¥ Á¢±Ù Á¦¾î¸¦ ¼³Á¤ÇÏ´Â °Í±îÁö Àü¹ÝÀûÀÎ ³»¿ëÀ» °¡À̵åÇϰí, ½ÉÈ ½Ã³ª¸®¿À¿Í Æ®·¯ºí½´ÆÃ °úÁ¤À» Æ÷ÇÔÇØ ÇÁ·Î´ö¼Ç ȯ°æ¿¡¼ Á÷¸éÇÒ ¼ö ÀÖ´Â ¹®Á¦µéÀ» ´Ù·ç±â À§Çؼ ÀÌ Ã¥À» ÁýÇÊÇß´Ù.
¿ì¸®´Â ȸ»ç¿¡¼ Ãʱ⿡ ±ê¿É½º¸¦ µµÀÔÇßÀ¸¸ç ±ê¿É½º¸¦ ¿À·§µ¿¾È Á÷Á¢ÀûÀ¸·Î »ç¿ëÇß´Ù. Ãʱ⿡´Â ÀÚü ±ê¿É½º ¿ÀÆÛ·¹ÀÌÅ͸¦ ±¸ÃàÇÏ·Á°í Çß´Ù. ±Ý¹æ ¸¸µé ¼ö ÀÖÀ» ÁÙ ¾Ë¾ÒÁö¸¸ 2~3ÁÖ µ¿¾È ÇÊ¿äÇÑ °ÍÀÌ ¹«¾ùÀÎÁö ºÐ¼®ÇÏ´Ù°¡ Æ÷±âÇß´Ù. ¿ì¸®´Â ¿î¿µÇÏ¸é¼ ¸¹Àº ¹®Á¦¸¦ °Þ¾ú´Âµ¥ ÀϺδ Àß Ã³¸®Çß°í ÀÏºÎ´Â ÇØ°áÇÏ´Â µ¥ ¸¹Àº ½Ã°£ÀÌ °É·È´Ù. ÇÏÁö¸¸ ±×·¯¸é¼ Á¤¸» ¸¹Àº °ÍÀ» ¹è¿ü±â¿¡ À̰ÍÀ» µ¶ÀÚµé°ú °øÀ¯ÇϰíÀÚ ÇÑ´Ù. È®½ÇÇÑ °ÍÀº ÀÌ Ã¥À» ÅëÇØ Argo CD¿Í ±ê¿É½º¸¦ Àû¿ëÇÏ´Â µ¥ Å« µµ¿òÀ» ¹ÞÀ» ¼ö ÀÖÀ» °ÍÀÌ´Ù.
¢Â ¿Å±äÀÌÀÇ ¸» ¢Â
Argo ÇÁ·ÎÁ§Æ®´Â Argo WorkFlow, Argo CD, Argo Rollout, Argo Event ÀÌ·¸°Ô ÃÑ 4°³ÀÇ ÇÁ·ÎÁ§Æ®·Î ±¸¼ºµÅ ÀÖÀ¸¸ç ¿öÅ©Ç÷θ¦ ½ÇÇàÇϰí, Ŭ·¯½ºÅ͸¦ °ü¸®Çϰí, GitOps¸¦ ¿Ã¹Ù¸£°Ô ¼öÇàÇϱâ À§ÇÑ Äí¹ö³×Ƽ½º ¿ÀÇ ¼Ò½ºÀÔ´Ï´Ù. 2020³â 3¿ù 26ÀÏ¿¡ ÀÎÅ¥º£ÀÌÆÃ ¼öÁØ¿¡¼ CNCF(Cloud Native Computing Foundation)¿¡ ½ÂÀÎµÈ ÈÄ 2022³â 12¿ù 6ÀÏ Á¹¾÷(Graduate)Çß½À´Ï´Ù. ±×¸¸Å ¿Ï¼ºµµ°¡ ³ô°í °ËÁõµÈ ÇÁ·ÎÁ§Æ®°¡ ¾Æ´Ò±î ÇÕ´Ï´Ù. ƯÈ÷³ª ÃÖ±Ù Äí¹ö³×Ƽ½º¸¦ ¸¹ÀÌ È°¿ëÇÏ¸é¼ ÀÌ¹Ì ¸¹Àº ȸ»ç°¡ Argo CD¸¦ µµÀÔÇØ »ç¿ëÇϰí ÀÖ´Â °ÍÀ¸·Î ¾Ë°í ÀÖ½À´Ï´Ù.
ÇÏÁö¸¸ ÀÌ·¸°Ô ¸¹¾ÆÁö´Â Àα⠼ӿ¡ ¾ÆÁ÷±îÁö Argo CD ¸¸À» ´Ù·é Ã¥Àº ¸¹ÀÌ ¾ø´Â °ÍÀ¸·Î ¾Ë°í ÀÖ½À´Ï´Ù. À̸¦ ±âÁ¡À¸·Î ±¹³»¼ÀûÀ̳ª ¹ø¿ª¼°¡ ¸¹ÀÌ Ãâ½ÃµÆÀ¸¸é ÁÁ°Ú½À´Ï´Ù. |
±³È¯ ¹× ȯºÒ °¡´É |
»óǰ¿¡ ¹®Á¦°¡ ÀÖÀ» °æ¿ì |
1) »óǰÀÌ Ç¥½Ã/±¤°íµÈ ³»¿ë°ú ´Ù¸£°Å³ª ºÒ·®(ºÎÆÐ, º¯Áú, ÆÄ¼Õ, Ç¥±â¿À·ù, À̹°È¥ÀÔ, Áß·®¹Ì´Þ)ÀÌ ¹ß»ýÇÑ °æ¿ì - ½Å¼±½Äǰ, ³ÃÀå½Äǰ, ³Ãµ¿½Äǰ : ¼ö·ÉÀÏ ´ÙÀ½³¯±îÁö ½Åû - ±âŸ »óǰ : ¼ö·ÉÀϷκÎÅÍ 30ÀÏ À̳», ±× »ç½ÇÀ» ¾È ³¯ ¶Ç´Â ¾Ë ¼ö ÀÖ¾ú´ø ³¯·ÎºÎÅÍ 30ÀÏ À̳» ½Åû 2) ±³È¯ ¹× ȯºÒ½Åû ½Ã ÆÇ¸ÅÀÚ´Â »óǰÀÇ »óŸ¦ È®ÀÎÇÒ ¼ö ÀÖ´Â »çÁøÀ» ¿äûÇÒ ¼ö ÀÖÀ¸¸ç »óǰÀÇ ¹®Á¦ Á¤µµ¿¡ µû¶ó Àç¹è¼Û, ÀϺÎȯºÒ, ÀüüȯºÒÀÌ ÁøÇàµË´Ï´Ù. ¹Ýǰ¿¡ µû¸¥ ºñ¿ëÀº ÆÇ¸ÅÀÚ ºÎ´ãÀ̸ç ȯºÒÀº ¹ÝǰµµÂøÀϷκÎÅÍ ¿µ¾÷ÀÏ ±âÁØ 3ÀÏ À̳»¿¡ ¿Ï·áµË´Ï´Ù. |
´Ü¼øº¯½É ¹× ÁÖ¹®Âø¿ÀÀÇ °æ¿ì |
1) ½Å¼±½Äǰ, ³ÃÀå½Äǰ, ³Ãµ¿½Äǰ ÀçÆÇ¸Å°¡ ¾î·Á¿î »óǰÀÇ Æ¯¼º»ó, ±³È¯ ¹× ȯºÒÀÌ ¾î·Æ½À´Ï´Ù. 2) ÈÀåǰ ÇǺΠƮ·¯ºí ¹ß»ý ½Ã Àü¹®ÀÇ Áø´Ü¼ ¹× ¼Ò°ß¼¸¦ Á¦ÃâÇϽøé ȯºÒ °¡´ÉÇÕ´Ï´Ù. ÀÌ °æ¿ì Á¦¹Ýºñ¿ëÀº ¼ÒºñÀÚ ºÎ´ãÀ̸ç, ¹è¼Ûºñ´Â ÆÇ¸ÅÀÚ°¡ ºÎ´ãÇÕ´Ï´Ù. ÇØ´ç ÈÀåǰ°ú ÇǺΠƮ·¯ºí°úÀÇ »ó´çÇÑ Àΰú°ü°è°¡ ÀÎÁ¤µÇ´Â °æ¿ì ¶Ç´Â Áúȯġ·á ¸ñÀûÀÇ °æ¿ì¿¡´Â Áø´Ü¼ ¹ß±Þºñ¿ëÀ» ÆÇ¸ÅÀÚ°¡ ºÎ´ãÇÕ´Ï´Ù. 3) ±âŸ »óǰ ¼ö·ÉÀϷκÎÅÍ 7ÀÏ À̳» ½Åû, ¿Õº¹¹è¼Ûºñ´Â ¼ÒºñÀÚ ºÎ´ã 4) ¸ð´ÏÅÍ ÇØ»óµµÀÇ Â÷ÀÌ·Î »ö»óÀ̳ª À̹ÌÁö°¡ ´Ù¸¥ °æ¿ì ´Ü¼øº¯½É¿¡ ÀÇÇÑ ±³È¯ ¹× ȯºÒÀÌ Á¦ÇÑµÉ ¼ö ÀÖ½À´Ï´Ù. |
|
±³È¯ ¹× ȯºÒ ºÒ°¡ |
1) ½Åû±âÇÑÀÌ Áö³ °æ¿ì 2) ¼ÒºñÀÚÀÇ °ú½Ç·Î ÀÎÇØ »óǰ ¹× ±¸¼ºÇ°ÀÇ Àüü ¶Ç´Â ÀϺΰ¡ ¾ø¾îÁö°Å³ª ÈѼÕ, ¿À¿°µÇ¾úÀ» °æ¿ì 3) °³ºÀÇÏ¿© ÀÌ¹Ì ¼·ÃëÇÏ¿´°Å³ª »ç¿ë(Âø¿ë ¹× ¼³Ä¡ Æ÷ÇÔ)ÇØ »óǰ ¹× ±¸¼ºÇ°ÀÇ °¡Ä¡°¡ ¼Õ»óµÈ °æ¿ì 4) ½Ã°£ÀÌ °æ°úÇÏ¿© »óǰÀÇ °¡Ä¡°¡ ÇöÀúÈ÷ °¨¼ÒÇÑ °æ¿ì 5) »ó¼¼Á¤º¸ ¶Ç´Â »ç¿ë¼³¸í¼¿¡ ¾È³»µÈ ÁÖÀÇ»çÇ× ¹× º¸°ü¹æ¹ýÀ» ÁöŰÁö ¾ÊÀº °æ¿ì 6) »çÀü¿¹¾à ¶Ç´Â ÁÖ¹®Á¦ÀÛÀ¸·Î ÅëÇØ ¼ÒºñÀÚÀÇ ÁÖ¹®¿¡ µû¶ó °³º°ÀûÀ¸·Î »ý»êµÇ´Â »óǰÀÌ ÀÌ¹Ì Á¦ÀÛÁøÇàµÈ °æ¿ì 7) º¹Á¦°¡ °¡´ÉÇÑ »óǰ µîÀÇ Æ÷ÀåÀ» ÈѼÕÇÑ °æ¿ì 8) ¸À, Çâ, »ö µî ´Ü¼ø ±âÈ£Â÷ÀÌ¿¡ ÀÇÇÑ °æ¿ì |