Äí¹ö³×Ƽ½ºÀÇ È®À强À» È°¿ëÇÏ¿© Çö´ëÀûÀÎ ¾ÆÅ°ÅØó ÆÐÅÏÀ» µµÀÔÇÏ°íÇÁ·Î´ö¼Ç ¹®Á¦¸¦ È¿°úÀûÀ¸·Î ó¸®ÇÏ´Â ¹æ¹ýÀ» ¹è¿î´Ù!Äí¹ö³×Ƽ½º´Â Çö´ëÀûÀΠŬ¶ó¿ìµå ³×ÀÌƼºê ÄÁÅ×ÀÌ³Ê ¿ÀÄɽºÆ®·¹ÀÌ¼Ç µµ±¸À̸ç, Àü ¼¼°èÀûÀ¸·Î °¡Àå Àαâ ÀÖ´Â ¿ÀǼҽº ÇÁ·ÎÁ§Æ® Áß ÇϳªÀÔ´Ï´Ù. Äí¹ö³×Ƽ½º´Â °·ÂÇÏ°í ¸Å¿ì À¯¿¬ÇÑ ±â¼úÀ̸ç Äí¹ö³×Ƽ½º ¿£Áö´Ï¾î´Â ¾÷°è Àü¹Ý¿¡¼ ¼ö¿ä°¡ ¸¹½À´Ï´Ù. ÀÌ Ã¥Àº Äí¹ö³×Ƽ½º¿¡¼ ÃֽŠŬ¶ó¿ìµå ³×ÀÌƼºê ¾ÖÇø®ÄÉÀ̼ÇÀ» ¹èÆ÷, º¸È£, ¿î¿µÇϱâ À§ÇÑ Æ÷°ýÀûÀÎ ¾È³»¼ÀÔ´Ï´Ù. ±âÃÊÀûÀÎ ³»¿ëºÎÅÍ Äí¹ö³×Ƽ½º ¸ð¹ü »ç·Ê¿¡ À̸£±â±îÁö ÀÌ Ã¥Àº ¾ÖÇø®ÄÉÀÌ¼Ç ±¸¼ºÀ» À§ÇÑ ÇʼöÀûÀÎ ¿ä¼Ò¸¦ ´Ù·ì´Ï´Ù. ÇÁ·Î´ö¼Ç ȯ°æ¿¡¼ Ŭ·¯½ºÅ͸¦ ½ÇÇàÇϱâ À§ÇÑ Çö½ÇÀûÀÎ ±â¼ú, Ŭ·¯½ºÅÍ ¸®¼Ò½º¿¡ ´ëÇÑ °üÂû °¡´É¼ºÀ» ¼³Á¤Çϱâ À§ÇÑ ÆÁ ¹× Áß¿ä ¹®Á¦ ÇØ°áÀ» À§ÇÑ ±â¹ýµµ ÇÔ²² »ìÆ캾´Ï´Ù. ¸¶Áö¸·À¸·Î Äí¹ö³×Ƽ½º¸¦ È®ÀåÇÏ°í Ä¿½ºÅ͸¶ÀÌÁîÇÏ´Â ¹æ¹ý°ú ¼ºñ½º ¸Þ½Ã, ¼¹ö¸®½º µµ±¸ µîÀ» Ŭ·¯½ºÅÍ¿¡ ¹èÆ÷Çϱâ À§ÇÑ ÆÁÀ» ¼³¸íÇÕ´Ï´Ù. ÀÌ Ã¥À» ³¡±îÁö °øºÎÇϸé Äí¹ö³×Ƽ½º¿¡¼ ÃֽŠ¾ÖÇø®ÄÉÀ̼ÇÀ» ÀڽŠÀÖ°Ô ½ÇÇàÇÏ°í È®ÀåÇϱâ À§ÇÑ µµ±¸¸¦ °®Ãß°Ô µÉ °ÍÀÔ´Ï´Ù.
¾Ë·º»ê´õ ¶ó¿ïÀº ·¡Å©³Ê(Rackner)ÀÇ CEOÀÔ´Ï´Ù. ·¡Å©³Ê´Â ¸¹Àº ÅõÀÚ¸¦ ¹ÞÀº ½ºÅ¸Æ®¾÷ºÎÅÍ Æ÷Ãá ¹× ±Û·Î¹ú 500 ¼±Á¤ ±â¾÷¿¡ À̸£±â±îÁö ´Ù¾çÇÑ °í°´À» ´ë»óÀ¸·Î Äí¹ö³×Ƽ½º¿Í Ŭ¶ó¿ìµå¸¦ ±¸ÃàÇÏ°í ¿î¿µ ¹× º¸¾È °ü¸®ÇØÁÖ´Â Çõ½ÅÀûÀÎ ÄÁ¼³Æà ȸ»çÀÔ´Ï´Ù. ·¡Å©³Ê¿¡¼ ÀúÀÚ´Â ´ëÇü Äí¹ö³×Ƽ½º ±â¹Ý Ç÷§ÆûÀ» ±¸ÃàÇÏ°í °ü¸®ÇßÀ¸¸ç, ±Ô¸ð°¡ Å« Á¶Á÷À» ´ë»óÀ¸·Î ¿£µå Åõ ¿£µå DevSecOps¸¦ ±¸ÇöÇß½À´Ï´Ù. ±â¼úÀûÀÎ ¹è°æ°ú ÇзÂ(¸Þ¸±·£µå ´ëÇÐÀÇ Ç×°ø¿ìÁÖÇÐ Çлç)»Ó¸¸ ¾Æ´Ï¶ó Ŭ¶ó¿ìµå¿Í Äí¹ö³×Ƽ½º¿¡ ´ëÇÑ ºñÁî´Ï½º¿Í Àü·« ³íÀÇ´Â ¹°·Ð, °ü·Ã ±â¼ú µµÀÔ¿¡ °üÇÑ ¹®Á¦¿¡µµ Á¤ÅëÇÕ´Ï´Ù. ¾Ë·º»ê´õ´Â ¿ö½ÌÅÏ D.C.¿¡ »ì°í ÀÖÀ¸¸ç °í°´°ú ÀÏÇÏÁö ¾Ê´Â ½Ã°£¿¡´Â µî»êÀ̳ª ½ºÅ°, ´Þ¸®±â¸¦ Áñ°ÜÇÕ´Ï´Ù.
[1ºÎ] Äí¹ö³×Ƽ½º ¼³Ä¡Çϱ⠤ý 01Àå: Äí¹ö³×Ƽ½º¿Í Åë½ÅÇϱ⠱â¼ú ¿ä±¸»çÇ× ÄÁÅ×ÀÌ³Ê ¿ÀÄɽºÆ®·¹ÀÌ¼Ç ¼Ò°³ __ÄÁÅ×ÀÌ³Ê ¿ÀÄɽºÆ®·¹À̼ÇÀ̶õ? __ÄÁÅ×ÀÌ³Ê ¿ÀÄɽºÆ®·¹À̼ÇÀÇ ÀåÁ¡ __ÀϹÝÀûÀÎ ¿ÀÄɽºÆ®·¹ÀÌ¼Ç µµ±¸ Äí¹ö³×Ƽ½ºÀÇ ¾ÆÅ°ÅØó __Äí¹ö³×Ƽ½º ³ëµå À¯Çü __Äí¹ö³×Ƽ½º ÄÁÆ®·Ñ Ç÷¹ÀÎ __Äí¹ö³×Ƽ½º API ¼¹ö __Äí¹ö³×Ƽ½º ½ºÄÉÁÙ·¯ __Äí¹ö³×Ƽ½º ÄÁÆ®·Ñ·¯ ¸Å´ÏÀú __etcd __Äí¹ö³×Ƽ½º ¿öÄ¿ ³ëµå __kubelet __kube-proxy __ÄÁÅ×ÀÌ³Ê ·±Å¸ÀÓ __¾Öµå¿Â Äí¹ö³×Ƽ½º ÀÎÁõ ¹× ±ÇÇÑ __³×ÀÓ½ºÆäÀ̽º __»ç¿ëÀÚ __ÀÎÁõ ¹æ¹ý __TLS¿Í º¸¾ÈÀ» À§ÇÑ Äí¹ö³×Ƽ½ºÀÇ ÀÎÁõ¼ ÀÎÇÁ¶ó __±ÇÇÑ ºÎ¿© ¿É¼Ç __RBAC __ABAC kubectl°ú YAML »ç¿ëÇϱâ __kubectl°ú kubeconfig ¼³Á¤ __¸í·ÉÇüimperative Ä¿¸Çµå¿Í ¼±¾ðÇüdeclarative Ä¿¸Çµå __kubectl ±âº» Ä¿¸Çµå ¼Ò°³ __YAML ÆÄÀÏ¿¡ Äí¹ö³×Ƽ½º ¸®¼Ò½º ÀÛ¼ºÇϱ⠿ä¾à Áú¹® ´õ ÀÐÀ» °Å¸® ¤ý 02Àå: Äí¹ö³×Ƽ½º Ŭ·¯½ºÅÍ ¼³Á¤Çϱ⠱â¼ú ¿ä±¸»çÇ× ½Å±Ô Ŭ·¯½ºÅÍ »ý¼º ¿É¼Ç minikube·Î Ŭ·¯½ºÅÍ ½±°Ô ½ÃÀÛÇϱâ __minikube ¼³Ä¡Çϱâ __minikube¿¡¼ Ŭ·¯½ºÅÍ »ý¼ºÇϱ⠰ü¸®Çü Äí¹ö³×Ƽ½º ¼ºñ½º __°ü¸®Çü Äí¹ö³×Ƽ½º ¼ºñ½ºÀÇ ÀåÁ¡ __°ü¸®Çü Äí¹ö³×Ƽ½º ¼ºñ½ºÀÇ ´ÜÁ¡ AWSÀÇ EKS(Elastic Kubernetes Service) __½ÃÀÛÇϱ⠱¸±Û Ŭ¶ó¿ìµåÀÇ GKE(Google Kubernetes Engine) __½ÃÀÛÇϱ⠸¶ÀÌÅ©·Î¼ÒÇÁÆ® ¾ÖÀúÀÇ AKS(Azure Kubernetes Service) __½ÃÀÛÇϱâ ÇÁ·Î±×·¥ ¹æ½ÄÀÇ Å¬·¯½ºÅÍ »ý¼º µµ±¸ __Kubeadm __Kops __Kubespray KubeadmÀ¸·Î Ŭ·¯½ºÅÍ »ý¼ºÇϱâ __Kubeadm ¼³Ä¡Çϱâ __¸¶½ºÅÍ ³ëµå ½ÃÀÛÇϱâ __¿öÄ¿ ³ëµå ½ÃÀÛÇϱâ __kubectl ¼³Á¤Çϱâ Kops¸¦ »ç¿ëÇÏ¿© Ŭ·¯½ºÅÍ »ý¼ºÇϱâ __macOS¿¡ ¼³Ä¡Çϱâ __¸®´ª½º¿¡ ¼³Ä¡Çϱâ __À©µµ¿ì¿¡ ¼³Ä¡Çϱâ __Kops¿¡ ´ëÇÑ ÀÚ°Ý Áõ¸í ¼³Á¤Çϱâ __»óÅ ÀúÀå¼Ò ¼³Á¤Çϱâ __Ŭ·¯½ºÅÍ »ý¼ºÇϱ⠿ÏÀüÈ÷ óÀ½ºÎÅÍ Å¬·¯½ºÅÍ »ý¼ºÇϱâ __³ëµå ÇÁ·ÎºñÀú´× __TLS¸¦ À§ÇÑ Äí¹ö³×Ƽ½º ÀÎÁõ »ý¼ºÇϱâ __¼³Á¤ ÆÄÀÏ »ý¼ºÇϱâ __etcd Ŭ·¯½ºÅÍ »ý¼º°ú ¾ÏÈ£È ±¸¼ºÇϱâ __ÄÁÆ®·Ñ Ç÷¹ÀÎ ÄÄÆ÷³ÍÆ® ºÎÆ®½ºÆ®·¦Çϱâ __¿öÄ¿ ³ëµå ºÎÆ®½ºÆ®·¦Çϱ⠿ä¾à Áú¹® ´õ ÀÐÀ» °Å¸® ¤ý 03Àå: Äí¹ö³×Ƽ½º¿¡¼ ¾ÖÇø®ÄÉÀÌ¼Ç ÄÁÅ×ÀÌ³Ê ½ÇÇàÇϱ⠱â¼ú ¿ä±¸»çÇ× Æĵå¶õ? ÆÄµå ±¸ÇöÇϱâ __Æĵå Æз¯´ÙÀÓ __ÆÄµå ³×Æ®¿öÅ© __ÆÄµå ½ºÅ丮Áö __³×ÀÓ½ºÆäÀ̽º __ÆĵåÀÇ ¶óÀÌÇÁ»çÀÌŬ __ÆÄµå ¸®¼Ò½º ½ºÆå ÀÌÇØÇϱ⠿ä¾à Áú¹® ´õ ÀÐÀ» °Å¸® [2ºÎ] Äí¹ö³×Ƽ½º ¾ÖÇø®ÄÉÀÌ¼Ç ±¸¼º ¹× ¹èÆ÷ ¤ý 04Àå: ¾ÖÇø®ÄÉÀÌ¼Ç ½ºÄÉÀϸµ ¹× ¹èÆ÷Çϱ⠱â¼ú ¿ä±¸ »çÇ× ÆĵåÀÇ ¹®Á¦Á¡°ú ÇØ°áÃ¥ ÀÌÇØÇϱâ __Æĵå ÄÁÆ®·Ñ·¯ ·¹Çø®Ä«¼Â »ç¿ëÇϱâ __·¹Çø®Ä« __¼¿·ºÅÍ __ÅÛÇø´ __·¹Çø®Ä«¼Â Å×½ºÆ® ¹èÆ÷ Á¦¾îÇϱâ __¸í·ÉÇü Ä¿¸Çµå·Î ¹èÆ÷ Á¦¾î ¼öÆòÇü ÆÄµå ¿ÀÅ佺ÄÉÀÏ·¯ÀÇ È°¿ëÇϱ⠵¥¸ó¼Â ±¸ÇöÇϱ⠽ºÅ×ÀÌƮǮ¼Â ÀÌÇØÇϱâ Àâ »ç¿ëÇϱâ __Å©·ÐÀâ Á¾ÇÕ Á¤¸® ¿ä¾à Áú¹® ´õ ÀÐÀ» °Å¸® ¤ý 05Àå: ¼ºñ½º ¹× Àα׷¹½º - ¿ÜºÎ ½Ã½ºÅÛ°ú Åë½ÅÇϱ⠱â¼ú ¿ä±¸ »çÇ× ¼ºñ½º¿Í Ŭ·¯½ºÅÍ DNS ÀÌÇØÇϱâ __Ŭ·¯½ºÅÍ DNS __¼ºñ½º ÇÁ¶ô½Ã Á¾·ù ClusterIP ±¸Çö __ÇÁ·ÎÅäÄÝ NodePort »ç¿ëÇϱ⠷εå¹ë·±¼ ¼ºñ½º ¼³Á¤Çϱâ ExternalName ¼ºñ½º »ý¼ºÇϱâ Àα׷¹½º ±¸¼ºÇϱâ __Àα׷¹½º ÄÁÆ®·Ñ·¯ ¿ä¾à Áú¹® ´õ ÀÐÀ» °Å¸® ¤ý 06Àå: Äí¹ö³×Ƽ½º ¾ÖÇø®ÄÉÀÌ¼Ç ±¸¼ºÇϱ⠱â¼ú ¿ä±¸ »çÇ× ¸ð¹ü »ç·Ê¸¦ È°¿ëÇÑ ÄÁÅ×À̳ÊÈµÈ ¾ÖÇø®ÄÉÀÌ¼Ç ±¸¼º __ÄÁÇÇ±×¸Ê ÀÌÇØÇϱâ __½ÃÅ©¸´ ÀÌÇØÇϱâ ÄÁÇÇ±×¸Ê ±¸ÇöÇϱâ __ÅؽºÆ® °ª¿¡¼ ÄÁÇÇ±×¸Ê »ý¼ºÇϱâ __ÆÄÀÏ¿¡¼ ÄÁÇÇ±×¸Ê »ý¼ºÇϱâ __º¼·ýÀ¸·Î ÄÁÇÇ±×¸Ê ¸¶¿îÆ®Çϱâ __ȯ°æ º¯¼ö·Î ÄÁÇÇ±×¸Ê ¸¶¿îÆ®Çϱ⠽ÃÅ©¸´ »ç¿ëÇϱâ __ÆÄÀÏ¿¡¼ ½ÃÅ©¸´ »ý¼ºÇϱ⠼öµ¿ ¼±¾ðÀûÀ¸·Î ½ÃÅ©¸´ »ý¼ºÇϱâ __º¼·ýÀ¸·Î ½ÃÅ©¸´ ¸¶¿îÆ®Çϱâ __½ÃÅ©¸´À» ȯ°æ º¯¼ö·Î ¸¶¿îÆ®Çϱâ __¾ÏÈ£ÈµÈ ½ÃÅ©¸´ ±¸ÇöÇϱâ __½ÃÅ©¸´ÀÇ ¾ÏÈ£È ¿©ºÎ È®ÀÎÇϱâ __Ŭ·¯½ºÅÍ ¾ÏÈ£È ºñÈ°¼ºÈÇϱ⠿ä¾à Áú¹® ´õ ÀÐÀ» °Å¸® ¤ý 07Àå: Äí¹ö³×Ƽ½ºÀÇ ½ºÅ丮Áö ±â¼ú ¿ä±¸ »çÇ× º¼·ý°ú Æ۽ýºÅÏÆ® º¼·ýÀÇ Â÷ÀÌÁ¡ ÀÌÇØ º¼·ý Æ۽ýºÅÏÆ® º¼·ý __Æ۽ýºÅÏÆ® º¼·ý Ŭ·¹ÀÓ __Æĵ忡 Æ۽ýºÅÏÆ® º¼·ý Ŭ·¹ÀÓ(PVC) ¿¬°áÇϱâ Ŭ¶ó¿ìµå ½ºÅ丮Áö°¡ ¾ø´Â Æ۽ýºÅÏÆ® º¼·ý __Rook ¼³Ä¡Çϱâ __rook-ceph-block ½ºÅ丮Áö Ŭ·¡½º __Rook Ceph ÆÄÀÏ ½Ã½ºÅÛ ¿ä¾à Áú¹® ´õ ÀÐÀ» °Å¸® ¤ý 08Àå: Æĵå ÇÒ´ç Á¦¾îÇϱ⠱â¼ú ¿ä±¸ »çÇ× Æĵå ÇÒ´ç¿¡ ´ëÇÑ »ç¿ë »ç·Ê È®ÀÎÇϱâ __Äí¹ö³×Ƽ½º ³ëµå »óÅ ÇÒ´ç Á¦¾îÇϱâ __´Ù¾çÇÑ ³ëµå À¯ÇüÀÌ ÇÊ¿äÇÑ ¾ÖÇø®ÄÉÀÌ¼Ç __ƯÁ¤ µ¥ÀÌÅÍ ±ÔÁ¤ Áؼö°¡ ÇÊ¿äÇÑ ¾ÖÇø®ÄÉÀÌ¼Ç __´ÙÁß Àå¾Ö µµ¸ÞÀÎ ³ëµå ¼¿·ºÅÍ¿Í ³ëµå ³×ÀÓ »ç¿ëÇϱâ Å×ÀÎÆ®¿Í Åç·¯·¹ÀÌ¼Ç ±¸ÇöÇϱ⠴ÙÁß Å×ÀÎÆ®¿Í Åç·¯·¹ÀÌ¼Ç ³ëµå ¾îÇÇ´ÏƼ·Î Æĵå Á¦¾îÇϱâ __requiredDuringSchedulingIgnoredDuringExecution ³ëµå ¾îÇÇ´ÏƼ »ç¿ëÇϱâ __preferredDuringSchedulingIgnoredDuringExecution ³ëµå ¾îÇÇ´ÏƼ »ç¿ëÇϱâ __´ÙÁß ³ëµå ¾îÇÇ´ÏƼ ÀÎÅÍ-ÆÄµå ¾îÇÇ´ÏƼ¿Í ¾ÈƼ-¾îÇÇ´ÏƼ »ç¿ëÇϱâ __ÆÄµå ¾îÇÇ´ÏƼ __ÆÄµå ¾ÈƼ-¾îÇÇ´ÏƼ __°áÇÕµÈ ¾îÇÇ´ÏƼ¿Í ¾ÈƼ-¾îÇÇ´ÏƼ __ÆÄµå ¾îÇÇ´ÏƼ¿Í ¾ÈƼ-¾îÇÇ´ÏƼ Á¦ÇÑ »çÇ× __ÆÄµå ¾îÇÇ´ÏƼ¿Í ¾ÈƼ-¾îÇÇ´ÏƼ ³×ÀÓ½ºÆäÀ̽º ¿ä¾à Áú¹® ´õ ÀÐÀ» °Å¸® [3ºÎ] ÇÁ·Î´ö¼Ç ȯ°æ¿¡¼ Äí¹ö³×Ƽ½º ½ÇÇàÇϱ⠤ý 09Àå: Äí¹ö³×Ƽ½ºÀÇ °üÂû °¡´É¼º ±â¼ú ¿ä±¸ »çÇ× Äí¹ö³×Ƽ½º °üÂû °¡´É¼º ÀÌÇØÇϱâ __Äí¹ö³×Ƽ½º Ŭ·¯½ºÅÍ ¹× ¾ÖÇø®ÄÉÀÌ¼Ç »óÅ¿¡ ´ëÇÑ Áß¿ä »çÇ× ÀÌÇØÇϱ⠱⺻ °üÂû µµ±¸ »ç¿ëÇϱâ __Äí¹ö³×Ƽ½ºÀÇ ÁöÇ¥ __Äí¹ö³×Ƽ½ºÀÇ ·Î±ë __Äí¹ö³×Ƽ½º ´ë½Ãº¸µå ¼³Ä¡Çϱâ __Äí¹ö³×Ƽ½ºÀÇ °æ°í¿Í ÃßÀû ÃÖ»óÀÇ ¿¡ÄڽýºÅÛÀ» È°¿ëÇÏ¿© Äí¹ö³×Ƽ½º °üÂû °¡´É¼º Çâ»ó½ÃÅ°±â __ÇÁ·Î¸ÞÅ׿콺¿Í ±×¶óÆijª ¼Ò°³ __Äí¹ö³×Ƽ½º¿¡¼ EFK ½ºÅà ±¸ÇöÇϱâ __¿¹°Å¸¦ »ç¿ëÇÏ¿© ºÐ»ê ÃßÀû ±¸ÇöÇϱâ __Ÿ»ç µµ±¸ ¿ä¾à Áú¹® ´õ ÀÐÀ» °Å¸® ¤ý 10Àå: Äí¹ö³×Ƽ½º ¹®Á¦ ÇØ°áÇϱ⠱â¼ú ¿ä±¸ »çÇ× ºÐ»ê ¾ÖÇø®ÄÉÀ̼ÇÀÇ Àå¾Ö ¸ðµå ÀÌÇØÇϱ⠳×Æ®¿öÅ©°¡ ¾ÈÁ¤ÀûÀÔ´Ï´Ù __Áö¿¬ ½Ã°£ÀÌ 0ÀÔ´Ï´Ù __´ë¿ªÆøÀÌ ¹«ÇÑÇÕ´Ï´Ù __³×Æ®¿öÅ©°¡ ¾ÈÀüÇÕ´Ï´Ù __ÅäÆú·ÎÁö°¡ º¯°æµÇÁö ¾Ê½À´Ï´Ù __°ü¸®ÀÚ°¡ ÇÑ ¸í»ÓÀÔ´Ï´Ù __Àü¼Ûºñ°¡ 0ÀÔ´Ï´Ù __³×Æ®¿öÅ©°¡ µ¿Á¾ÀÔ´Ï´Ù Äí¹ö³×Ƽ½º Ŭ·¯½ºÅÍ ¹®Á¦ ÇØ°áÇϱâ __»ç·Ê ¿¬±¸ - Äí¹ö³×Ƽ½º ÆÄµå ¹èÄ¡ ½ÇÆÐ Äí¹ö³×Ƽ½º¿¡¼ ¾ÖÇø®ÄÉÀÌ¼Ç ¹®Á¦ ÇØ°áÇϱâ __»ç·Ê ¿¬±¸ 1 - ¼ºñ½º°¡ ÀÀ´äÇÏÁö ¾ÊÀ½ __»ç·Ê ¿¬±¸ 2 - À߸øµÈ ÆÄµå ½ÃÀÛ Ä¿¸Çµå __»ç·Ê ¿¬±¸ 3 - ·Î±×°¡ ÀÖ´Â ÆÄµå ¾ÖÇø®ÄÉÀÌ¼Ç ¿ÀÀÛµ¿ ¿ä¾à Áú¹® ´õ ÀÐÀ» °Å¸® ¤ý 11Àå: Äí¹ö³×Ƽ½ºÀÇ ÅÛÇø´ ÄÚµå »ý¼º ¹× CI/CD ±â¼ú ¿ä±¸ »çÇ× Äí¹ö³×Ƽ½º¿¡¼ ÅÛÇø´ ÄÚµå »ý¼ºÀ» À§ÇÑ ¿É¼Ç ÀÌÇØÇϱâ __Helm __Kustomize Helm ¹× Kustomize¸¦ »ç¿ëÇÏ¿© Äí¹ö³×Ƽ½º¿¡¼ ÅÛÇø´ ±¸ÇöÇϱâ __Äí¹ö³×Ƽ½º¿Í ÇÔ²² Helm »ç¿ëÇϱâ __Helm Â÷Æ® ¼³Ä¡ ¹× Á¦°ÅÇϱâ __Äí¹ö³×Ƽ½º¿Í ÇÔ²² Kustomize »ç¿ëÇϱâ Ŭ·¯½ºÅÍ ³»ºÎ ¹× ¿ÜºÎ °üÁ¡¿¡¼ Äí¹ö³×Ƽ½ºÀÇ CI/CD Æз¯´ÙÀÓ ÀÌÇØÇϱâ __Ŭ·¯½ºÅÍ ¿Ü CI/CD __Ŭ·¯½ºÅÍ ³» CI/CD Äí¹ö³×Ƽ½º¸¦ »ç¿ëÇÏ¿© Ŭ·¯½ºÅÍ ³» ¹× Ŭ·¯½ºÅÍ ¿Ü CI/CD ±¸ÇöÇϱâ __AWS Codebuild·Î Äí¹ö³×Ƽ½º CI ±¸Çö __FluxCD·Î Äí¹ö³×Ƽ½º CI ±¸ÇöÇϱ⠿ä¾à Áú¹® ´õ ÀÐÀ» °Å¸® ¤ý 12Àå: Äí¹ö³×Ƽ½º º¸¾È ¹× ±ÔÁ¤ Áؼö ±â¼ú ¿ä±¸ »çÇ× Äí¹ö³×Ƽ½ºÀÇ º¸¾È ÀÌÇØÇϱâ Äí¹ö³×Ƽ½º¿¡ ´ëÇÑ CVE ¹× º¸¾È °¨»ç °ËÅäÇϱâ __CVE-2016-1905 ÀÌÇØ - ºÎÀûÀýÇÑ ½ÂÀÎ Á¦¾î __CVE-2018-1002105 ÀÌÇØ - ¹é¿£µå·ÎÀÇ ¿¬°á ¾÷±×·¹À̵å __2019³â º¸¾È °¨»ç °á°ú ÀÌÇØÇϱâ Ŭ·¯½ºÅÍ ±¸¼º ¹× ÄÁÅ×ÀÌ³Ê º¸¾ÈÀ» À§ÇÑ µµ±¸ ±¸ÇöÇϱâ __½ÂÀÎ ÄÁÆ®·Ñ·¯ »ç¿ëÇϱâ __ÆÄµå º¸¾È Á¤Ã¥ È°¼ºÈÇϱâ __³×Æ®¿öÅ© Á¤Ã¥ »ç¿ëÇϱâ Äí¹ö³×Ƽ½º¿¡¼ ħÀÔ °¨Áö, ·±Å¸ÀÓ º¸¾È ¹× ±ÔÁ¤ Áؼö ó¸®Çϱâ __ÆÈÄÚ ¼³Ä¡Çϱâ __ÆÈÄÚÀÇ ±â´É ÀÌÇØÇϱâ __ÆÈÄÚ¸¦ ±ÔÁ¤ Áؼö ¹× ·±Å¸ÀÓ º¸¾È »ç¿ë »ç·Ê¿¡ ¸ÅÇÎÇϱ⠿ä¾à Áú¹® ´õ ÀÐÀ» °Å¸® [4ºÎ] Äí¹ö³×Ƽ½º È®ÀåÇϱ⠤ý 13. CRD·Î Äí¹ö³×Ƽ½º È®ÀåÇϱ⠱â¼ú ¿ä±¸ »çÇ× CRD·Î Äí¹ö³×Ƽ½º¸¦ È®ÀåÇÏ´Â ¹æ¹ý __Ä¿½ºÅÒ ¸®¼Ò½º Á¤ÀÇ ÀÛ¼ºÇϱâ __Ä¿½ºÅÒ ¸®¼Ò½º ¹öÀü Á¤ÀÇ ÀÌÇØÇϱâ __Ä¿½ºÅÒ ¸®¼Ò½º Á¤ÀÇ Å×½ºÆ®Çϱâ Äí¹ö³×Ƽ½º ¿ÀÆÛ·¹ÀÌÅ͸¦ ÅëÇÑ ÀÚü °ü¸® ±â´É __¿ÀÆÛ·¹ÀÌÅÍÀÇ Á¦¾î ·çÇÁ ¸ÅÇÎÇϱâ __Ä¿½ºÅÒ ¸®¼Ò½º Á¤ÀǸ¦ À§ÇÑ ¿ÀÆÛ·¹ÀÌÅÍ ¼³°èÇϱâ Ŭ¶ó¿ìµåº° Äí¹ö³×Ƽ½º ÀͽºÅÙ¼Ç »ç¿ëÇϱâ __cloud-controller-manager ÄÄÆ÷³ÍÆ® ÀÌÇØÇϱâ __cloud-controller-manager ¼³Ä¡Çϱâ __cloud-controller-manager ±â´É È®ÀÎÇϱâ __Äí¹ö³×Ƽ½º¿¡¼ external-dns »ç¿ëÇϱâ __cluster-autoscaler ¾Öµå¿Â »ç¿ëÇϱ⠿¡ÄڽýºÅÛ°ú ÅëÇÕÇϱâ __Ŭ¶ó¿ìµå ³×ÀÌƼºê ÄÄÇ»Æà Àç´Ü(CNCF) ¼Ò°³ ¿ä¾à Áú¹® ´õ ÀÐÀ» °Å¸® ¤ý 14Àå: ¼ºñ½º ¸Þ½Ã ¹× ¼¹ö¸®½º ±â¼ú ¿ä±¸ »çÇ× »çÀ̵åÄ« ÇÁ¶ô½Ã »ç¿ë __NGINX¸¦ »çÀ̵åÄ« ¸®¹ö½º ÇÁ¶ô½Ã·Î »ç¿ëÇϱâ __»çÀ̵åÄ« ÇÁ¶ô½Ã·Î Envoy »ç¿ë Äí¹ö³×Ƽ½º¿¡ ¼ºñ½º ¸Þ½Ã Ãß°¡ __Äí¹ö³×Ƽ½º¿¡¼ Istio ¼³Á¤ Äí¹ö³×Ƽ½º¿¡¼ ¼¹ö¸®½º ±¸Çö __Äí¹ö³×Ƽ½º¿¡¼ FaaS¿ë Knative »ç¿ë __Äí¹ö³×Ƽ½º¿¡¼ FaaS¿ë OpenFaaS »ç¿ë ¿ä¾à Áú¹® ´õ ÀÐÀ» °Å¸® ¤ý 15Àå: Äí¹ö³×Ƽ½ºÀÇ ½ºÅ×ÀÌƮǮ ¿öÅ©·Îµå ±â¼ú ¿ä±¸ »çÇ× Äí¹ö³×Ƽ½ºÀÇ ½ºÅ×ÀÌƮǮ ¾ÖÇø®ÄÉÀÌ¼Ç ÀÌÇØ __Àαâ ÀÖ´Â Äí¹ö³×Ƽ½º ±â¹Ý ½ºÅ×ÀÌƮǮ ¾ÖÇø®ÄÉÀÌ¼Ç __Äí¹ö³×Ƽ½º¿¡¼ ½ºÅ×ÀÌƮǮ ¾ÖÇø®ÄÉÀ̼ÇÀ» ½ÇÇàÇÏ´Â Àü·« ÀÌÇØ Äí¹ö³×Ƽ½º¿¡ °´Ã¼ ½ºÅ丮Áö ¹èÆ÷ __Minio ¿ÀÆÛ·¹ÀÌÅÍ ¼³Ä¡ __Krew¿Í Minio kubectl Ç÷¯±×ÀÎ ¼³Ä¡ __Minio ¿ÀÆÛ·¹ÀÌÅÍ ½ÃÀÛ __Minio Å׳ÍÆ® »ý¼º __Minio ÄÜ¼Ö Á¢¼Ó Äí¹ö³×Ƽ½º¿¡¼ DB ½ÇÇà __Äí¹ö³×Ƽ½º¿¡¼ CockroachDB ½ÇÇà __SQL·Î CockroachDB Å×½ºÆ® Äí¹ö³×Ƽ½º¿¡¼ ¸Þ½Ã¡°ú Å¥ ±¸Çö __Äí¹ö³×Ƽ½º¿¡ RabbitMQ ¹èÆ÷ ¿ä¾à Áú¹® ´õ ÀÐÀ» °Å¸®