{"id":8482,"date":"2025-04-15T12:16:00","date_gmt":"2025-04-15T03:16:00","guid":{"rendered":"https:\/\/engineer-chanpu.blog\/?p=8482"},"modified":"2025-04-15T12:23:00","modified_gmt":"2025-04-15T03:23:00","slug":"auto-scaling-group-%ec%84%9c%eb%b9%84%ec%8a%a4%ec%97%90-%eb%8c%80%ed%95%b4%ec%84%9c-%ec%95%8c%ec%95%84%eb%b3%b4%ea%b8%b0","status":"publish","type":"post","link":"https:\/\/engineer-chanpu.blog\/?p=8482","title":{"rendered":"Auto Scaling Group \uc11c\ube44\uc2a4\uc5d0 \ub300\ud574\uc11c \uc54c\uc544\ubcf4\uae30"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">Auto Scaling Group \uc11c\ube44\uc2a4\ub780?<\/h2>\n\n\n\n<p>AWS Auto Scaling Group(ASG)\uc740 <strong>\uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc758 \ubd80\ud558 \ubcc0\ud654\uc5d0 \ub530\ub77c EC2 \uc778\uc2a4\ud134\uc2a4\ub97c \uc790\ub3d9\uc73c\ub85c \ub298\ub9ac\uac70\ub098 \uc904\uc5ec\uc8fc\ub294 \uc11c\ube44\uc2a4<\/strong>\uc785\ub2c8\ub2e4. \uace0\uac00\uc6a9\uc131\uacfc \ube44\uc6a9 \ucd5c\uc801\ud654\ub97c \ub3d9\uc2dc\uc5d0 \uc2e4\ud604\ud560 \uc218 \uc788\uac8c \ud574\uc8fc\ub294 \ud575\uc2ec \uae30\ub2a5 \uc911 \ud558\ub098\uc785\ub2c8\ub2e4.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">&#x1f4cc; Auto Scaling Group\uc774\ub780?<\/h3>\n\n\n\n<p>ASG\ub294 &#8220;\ud558\ub098 \uc774\uc0c1\uc758 EC2 \uc778\uc2a4\ud134\uc2a4\ub97c \ubb36\uc5b4 \uad00\ub9ac\ud558\ub294 \uadf8\ub8f9&#8221;\uc785\ub2c8\ub2e4.<br>\uc9c0\uc815\ud55c \uc870\uac74\uc5d0 \ub530\ub77c EC2 \uc778\uc2a4\ud134\uc2a4\ub97c \uc790\ub3d9\uc73c\ub85c <strong>\ucd94\uac00(Scale Out)<\/strong> \ub610\ub294 <strong>\uc81c\uac70(Scale In)<\/strong> \ud569\ub2c8\ub2e4.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">&#x1f9e9; \uad6c\uc131\uc694\uc18c<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>\uad6c\uc131 \uc694\uc18c<\/th><th>\uc124\uba85<\/th><\/tr><\/thead><tbody><tr><td><strong>Launch Template \/ Launch Configuration<\/strong><\/td><td>\uc5b4\ub5a4 AMI, \uc778\uc2a4\ud134\uc2a4 \ud0c0\uc785, \ud0a4\ud398\uc5b4 \ub4f1\uc744 \uc0ac\uc6a9\ud560\uc9c0 \uc815\uc758<\/td><\/tr><tr><td><strong>Auto Scaling Group<\/strong><\/td><td>\uc778\uc2a4\ud134\uc2a4 \uadf8\ub8f9 \uc790\uccb4, \ucd5c\uc18c\/\ucd5c\ub300 \uc218, \uc6d0\ud558\ub294 \uc218 \ub4f1\uc744 \uc815\uc758<\/td><\/tr><tr><td><strong>Scaling Policy<\/strong><\/td><td>CPU \uc0ac\uc6a9\ub960\uc774\ub098 \uc694\uccad \uc218 \ub4f1\uc5d0 \ub530\ub77c \uc778\uc2a4\ud134\uc2a4\ub97c \uc790\ub3d9\uc73c\ub85c \uc99d\uac10<\/td><\/tr><tr><td><strong>Health Check<\/strong><\/td><td>\uc778\uc2a4\ud134\uc2a4 \uc0c1\ud0dc\ub97c \uc8fc\uae30\uc801\uc73c\ub85c \ud655\uc778\ud558\uace0 \ube44\uc815\uc0c1\uc77c \uacbd\uc6b0 \uc790\ub3d9 \uad50\uccb4<\/td><\/tr><tr><td><strong>Lifecycle Hook<\/strong><\/td><td>\uc778\uc2a4\ud134\uc2a4 \uc2dc\uc791\/\uc885\ub8cc \uc804 \ud6c4\uc5d0 Lambda \ub4f1\uacfc \uc5f0\ub3d9\ud558\uc5ec \uc791\uc5c5 \uac00\ub2a5<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">&#x2699;&#xfe0f; \ub3d9\uc791 \uc608\uc2dc<\/h3>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\ucd5c\uc18c \uc778\uc2a4\ud134\uc2a4 \uc218 2, \ucd5c\ub300 5\ub85c \uc124\uc815\ud55c ASG \uad6c\uc131<\/li>\n\n\n\n<li>CPU \uc0ac\uc6a9\ub960\uc774 70%\ub97c \ucd08\uacfc\ud558\uba74 Scale Out \uc815\ucc45\uc73c\ub85c \uc778\uc2a4\ud134\uc2a4\ub97c 1\uac1c \ucd94\uac00<\/li>\n\n\n\n<li>CPU\uac00 30% \ubbf8\ub9cc\uc73c\ub85c \ub5a8\uc5b4\uc9c0\uba74 Scale In \uc815\ucc45\uc73c\ub85c \uc778\uc2a4\ud134\uc2a4\ub97c 1\uac1c \uc81c\uac70<\/li>\n\n\n\n<li>\ube44\uc815\uc0c1 \uc778\uc2a4\ud134\uc2a4\ub294 \uc790\ub3d9\uc73c\ub85c \ub300\uccb4\ub428 (Auto Healing)<\/li>\n<\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">&#x2705; \uc7a5\uc810<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>\uc7a5\uc810<\/th><th>\uc124\uba85<\/th><\/tr><\/thead><tbody><tr><td><strong>\uac00\uc6a9\uc131 \ud5a5\uc0c1<\/strong><\/td><td>\uc7a5\uc560 \uc778\uc2a4\ud134\uc2a4\ub97c \uc790\ub3d9\uc73c\ub85c \ub300\uccb4\ud568\uc73c\ub85c\uc368 \uc11c\ube44\uc2a4 \uc911\ub2e8 \ubc29\uc9c0<\/td><\/tr><tr><td><strong>\ube44\uc6a9 \ucd5c\uc801\ud654<\/strong><\/td><td>\uc218\uc694\uc5d0 \ub530\ub77c \uc778\uc2a4\ud134\uc2a4 \uc218\ub97c \uc870\uc808\ud558\uc5ec \ubd88\ud544\uc694\ud55c \ube44\uc6a9 \uc808\uac10<\/td><\/tr><tr><td><strong>\uc790\ub3d9 \ubcf5\uad6c<\/strong><\/td><td>Health Check \uc2e4\ud328 \uc2dc \uc790\ub3d9\uc73c\ub85c \uc0c8 \uc778\uc2a4\ud134\uc2a4\ub85c \uad50\uccb4<\/td><\/tr><tr><td><strong>\ud0c4\ub825\uc801\uc778 \ud655\uc7a5<\/strong><\/td><td>\uc608\uae30\uce58 \ubabb\ud55c \ud2b8\ub798\ud53d \uae09\uc99d\uc5d0\ub3c4 \uc790\ub3d9 \ub300\uc751 \uac00\ub2a5<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">&#x26a0;&#xfe0f; \uc8fc\uc758\ud560 \uc810<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>ELB\uc640 \uc5f0\ub3d9 \ud544\uc218<\/strong>: \ub300\ubd80\ubd84\uc758 \uacbd\uc6b0, Auto Scaling Group\uc740 Load Balancer(\uc608: ALB)\uc640 \ud568\uaed8 \uc0ac\uc6a9\ud574\uc57c \ud2b8\ub798\ud53d\uc774 \uc62c\ubc14\ub974\uac8c \ubd84\uc0b0\ub429\ub2c8\ub2e4.<\/li>\n\n\n\n<li><strong>\uc0c1\ud0dc \ube44\uc800\uc7a5(stateless) \uc11c\ube44\uc2a4\uc5d0 \uc801\ud569<\/strong>: Auto Scaling \ud658\uacbd\uc5d0\uc11c\ub294 \uc778\uc2a4\ud134\uc2a4\uac00 \uac11\uc790\uae30 \uc0ac\ub77c\uc9c8 \uc218 \uc788\uae30 \ub54c\ubb38\uc5d0, \uc0c1\ud0dc \uc800\uc7a5 \uc571\uc740 \uc801\uc808\ud55c \uc124\uacc4\uac00 \ud544\uc694\ud569\ub2c8\ub2e4.<\/li>\n\n\n\n<li><strong>EBS \ub8e8\ud2b8 \ub514\uc2a4\ud06c\ub294 \uc0ad\uc81c\ub428<\/strong>: \uc778\uc2a4\ud134\uc2a4 \uc885\ub8cc \uc2dc \ub514\uc2a4\ud06c\ub3c4 \uc0ad\uc81c\ub418\ubbc0\ub85c, \ud544\uc694\ud55c \ub370\uc774\ud130\ub294 S3, EFS \ub4f1\uc5d0 \ubcf4\uad00\ud574\uc57c \ud568<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">&#x274c; <strong>Fargate\uc5d0\ub294 Auto Scaling Group(ASG)\ub97c \uc9c1\uc811 \uc801\uc6a9\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.<\/strong><\/h3>\n\n\n\n<p>Auto Scaling Group\uc740 EC2 \uc778\uc2a4\ud134\uc2a4 \uae30\ubc18\uc758 \uc2a4\ucf00\uc77c\ub9c1 \uc2dc\uc2a4\ud15c\uc785\ub2c8\ub2e4.<br>\ubc18\uba74, Fargate\ub294 EC2 \uc778\uc2a4\ud134\uc2a4\ub97c \uc9c1\uc811 \uc0ac\uc6a9\ud558\uc9c0 \uc54a\uace0, AWS\uac00 \uad00\ub9ac\ud558\ub294 \uc11c\ubc84\ub9ac\uc2a4 \ucee8\ud14c\uc774\ub108 \uc2e4\ud589 \ud658\uacbd\uc774\uae30 \ub54c\ubb38\uc5d0,<br>EC2 \uc778\uc2a4\ud134\uc2a4\ub97c \uadf8\ub8f9\uc73c\ub85c \ubb36\uc5b4 \uad00\ub9ac\ud558\ub294 ASG \uac1c\ub150\uc774 \uc801\uc6a9\ub418\uc9c0 \uc54a\uc2b5\ub2c8\ub2e4.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">&#x2705; \uadf8\ub7fc Fargate\ub294 \uc5b4\ub5bb\uac8c \ud655\uc7a5\ud558\ub098\uc694?<\/h3>\n\n\n\n<p>Fargate\ub294 <strong>ECS \ub610\ub294 EKS\uc758 \uc790\uccb4 \uc2a4\ucf00\uc77c\ub9c1 \uae30\ub2a5<\/strong>\uc744 \ud1b5\ud574 \ud655\uc7a5\ud569\ub2c8\ub2e4:<\/p>\n\n\n\n<h4 class=\"wp-block-heading\">1. <strong>ECS + Fargate<\/strong><\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Service Auto Scaling<\/strong>\uc744 \uc0ac\uc6a9\ud574 Task \uc218\ub97c \uc870\uc808\ud568<br>(\uc608: CPU \uc0ac\uc6a9\ub960 70% \uc774\uc0c1 \u2192 Task 2\uac1c \u2192 4\uac1c\ub85c \uc99d\uac00)<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\">2. <strong>EKS + Fargate<\/strong><\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li><code>Horizontal Pod Autoscaler (HPA)<\/code>\ub97c Kubernetes\uc5d0\uc11c \uc124\uc815<br>\u2192 Pod \uc218 \uc99d\uac00 \u2192 Fargate\uac00 \uc790\ub3d9\uc73c\ub85c Pod\ub2f9 \ucef4\ud4e8\ud305 \uc790\uc6d0 \uc81c\uacf5<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">&#x1f9e9; ECS Fargate\uc758 \uc2a4\ucf00\uc77c\ub9c1 \uc608\uc2dc<\/h3>\n\n\n\n<pre class=\"wp-block-preformatted\"><code>aws application-autoscaling register-scalable-target \\<br>  --service-namespace ecs \\<br>  --resource-id service\/my-cluster\/my-service \\<br>  --scalable-dimension ecs:service:DesiredCount \\<br>  --min-capacity 1 \\<br>  --max-capacity 10<br><\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">&#x1f504; \ube44\uad50 \uc815\ub9ac<\/h3>\n\n\n\n<figure class=\"wp-block-table\"><table class=\"has-fixed-layout\"><thead><tr><th>\ud56d\ubaa9<\/th><th>EC2 + ASG<\/th><th>ECS Fargate<\/th><\/tr><\/thead><tbody><tr><td>\uc2a4\ucf00\uc77c\ub9c1 \ub300\uc0c1<\/td><td>EC2 \uc778\uc2a4\ud134\uc2a4<\/td><td>ECS Task \/ Kubernetes Pod<\/td><\/tr><tr><td>\uc2a4\ucf00\uc77c\ub9c1 \ubc29\uc2dd<\/td><td>Auto Scaling Group<\/td><td>Service Auto Scaling (ECS) \/ HPA (EKS)<\/td><\/tr><tr><td>\uc778\ud504\ub77c \uad00\ub9ac<\/td><td>\uc9c1\uc811 \uad00\ub9ac<\/td><td>AWS\uac00 \uad00\ub9ac (\uc11c\ubc84\ub9ac\uc2a4)<\/td><\/tr><tr><td>\uc0ac\uc6a9 \uc6a9\ub3c4<\/td><td>\uc0c1\ud0dc \uc800\uc7a5, \ucee4\uc2a4\ud140 \uad6c\uc131 \ud544\uc694<\/td><td>\uac04\ub2e8\ud55c \uc6f9 \uc571, \ub9c8\uc774\ud06c\ub85c\uc11c\ube44\uc2a4 \ub4f1<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Auto Scaling Group \uc11c\ube44\uc2a4\ub780? AWS Auto Scaling Group(ASG)\uc740 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc758 \ubd80\ud558 \ubcc0\ud654\uc5d0 \ub530\ub77c EC2 \uc778\uc2a4\ud134\uc2a4\ub97c \uc790\ub3d9\uc73c\ub85c \ub298\ub9ac\uac70\ub098 \uc904\uc5ec\uc8fc\ub294 \uc11c\ube44\uc2a4\uc785\ub2c8\ub2e4. \uace0\uac00\uc6a9\uc131\uacfc \ube44\uc6a9 \ucd5c\uc801\ud654\ub97c \ub3d9\uc2dc\uc5d0 \uc2e4\ud604\ud560 \uc218 \uc788\uac8c \ud574\uc8fc\ub294 \ud575\uc2ec \uae30\ub2a5 \uc911 \ud558\ub098\uc785\ub2c8\ub2e4. &#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[227,33],"tags":[],"class_list":["post-8482","post","type-post","status-publish","format-standard","hentry","category-amazon-web-service","category-tech-notes"],"_links":{"self":[{"href":"https:\/\/engineer-chanpu.blog\/index.php?rest_route=\/wp\/v2\/posts\/8482","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/engineer-chanpu.blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/engineer-chanpu.blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/engineer-chanpu.blog\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/engineer-chanpu.blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=8482"}],"version-history":[{"count":7,"href":"https:\/\/engineer-chanpu.blog\/index.php?rest_route=\/wp\/v2\/posts\/8482\/revisions"}],"predecessor-version":[{"id":8495,"href":"https:\/\/engineer-chanpu.blog\/index.php?rest_route=\/wp\/v2\/posts\/8482\/revisions\/8495"}],"wp:attachment":[{"href":"https:\/\/engineer-chanpu.blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=8482"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/engineer-chanpu.blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=8482"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/engineer-chanpu.blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=8482"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}