{"id":29923,"date":"2019-03-13T23:45:52","date_gmt":"2019-03-13T14:45:52","guid":{"rendered":"https:\/\/jirak.net\/wp\/aws-codedeploy%ea%b8%b0%eb%b0%98-aws-fargate%ec%99%80-amazon-ecs-%ec%84%9c%eb%b9%84%ec%8a%a4-%eb%b8%94%eb%a3%a8-%ea%b7%b8%eb%a6%b0-%eb%b0%a9%ec%8b%9d-%eb%b0%b0%ed%8f%ac-%ed%95%98%ea%b8%b0\/"},"modified":"2019-03-14T00:34:47","modified_gmt":"2019-03-13T15:34:47","slug":"aws-codedeploy%ea%b8%b0%eb%b0%98-aws-fargate%ec%99%80-amazon-ecs-%ec%84%9c%eb%b9%84%ec%8a%a4-%eb%b8%94%eb%a3%a8-%ea%b7%b8%eb%a6%b0-%eb%b0%a9%ec%8b%9d-%eb%b0%b0%ed%8f%ac-%ed%95%98%ea%b8%b0","status":"publish","type":"post","link":"https:\/\/jirak.net\/wp\/aws-codedeploy%ea%b8%b0%eb%b0%98-aws-fargate%ec%99%80-amazon-ecs-%ec%84%9c%eb%b9%84%ec%8a%a4-%eb%b8%94%eb%a3%a8-%ea%b7%b8%eb%a6%b0-%eb%b0%a9%ec%8b%9d-%eb%b0%b0%ed%8f%ac-%ed%95%98%ea%b8%b0\/","title":{"rendered":"AWS CodeDeploy\uae30\ubc18 AWS Fargate\uc640 Amazon ECS \uc11c\ube44\uc2a4 \ube14\ub8e8\/\uadf8\ub9b0 \ubc29\uc2dd \ubc30\ud3ec \ud558\uae30"},"content":{"rendered":"<p>AWS CodeDeploy\uae30\ubc18 AWS Fargate\uc640 Amazon ECS \uc11c\ube44\uc2a4 \ube14\ub8e8\/\uadf8\ub9b0 \ubc29\uc2dd \ubc30\ud3ec \ud558\uae30<br \/>\n<img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/jirak.net\/wp\/wp-content\/uploads\/2019\/03\/bg-ecs-deployments-new-service-1024x566.png\" width=\"1024\" height=\"566\"><\/p>\n<p><a href=\"https:\/\/aws.amazon.com\/fargate\/\">AWS Fargate<\/a> \ubc0f Amazon ECS(<a href=\"https:\/\/aws.amazon.com\/ecs\/\">Amazon Elastic Container Service<\/a>)\uc5d0\uc11c \ud638\uc2a4\ud305\ub418\ub294 \uc11c\ube44\uc2a4\uc5d0 \ub300\ud55c \ube14\ub8e8\/\uadf8\ub9b0 \ubc30\ud3ec \uc9c0\uc6d0\uc744 \uc704\ud55c \uae30\ub2a5 \ucd94\uac00 \uc18c\uc2dd\uc744 \uc54c\ub824\ub4dc\ub9bd\ub2c8\ub2e4.<\/p>\n<p><a href=\"https:\/\/aws.amazon.com\/codedeploy\/\">AWS CodeDeploy<\/a>\uc5d0\uc11c \ube14\ub8e8\/\uadf8\ub9b0 \ubc30\ud3ec\ub97c \uc0ac\uc6a9\ud558\uba74 \uc560\ud50c\ub9ac\ucf00\uc774\uc158 \uc5c5\ub370\uc774\ud2b8\ub85c \uc778\ud55c \ub2e4\uc6b4\ud0c0\uc784\uc744 \ucd5c\uc18c\ud654\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ube14\ub8e8\/\uadf8\ub9b0 \ubc30\ud3ec \ubc29\uc2dd\uc744 \uc0ac\uc6a9\ud558\uba74 \uc774\uc804 \ubc84\uc804 \uc5b4\ud50c\ub9ac\ucf00\uc774\uc158\uc774 \uad6c\ub3d9\ub418\uc5b4 \uc788\ub294 \uc0c1\ud0dc\uc5d0\uc11c \uc2e0\uaddc \ubc84\uc804\uc758 \uc5b4\ud50c\ub9ac\ucf00\uc774\uc158\uc744 \ud568\uaed8 \ub7f0\uce6d\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc774\ub85c \uc778\ud574 \ud2b8\ub798\ud53d\uc744 \uc2e0\uaddc \ubc84\uc804\uc73c\ub85c \ub77c\uc6b0\ud305\ud558\uae30 \uc804, \uc0c8\ub85c\uc6b4 \uc5b4\ud50c\ub9ac\ucf00\uc774\uc158\uc744 \ud14c\uc2a4\ud2b8\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ub610\ud55c \ubc30\ud3ec \ud504\ub85c\uc138\uc2a4\ub97c \ubaa8\ub2c8\ud130\ub9c1\ud558\ub2e4 \ubb38\uc81c\uac00 \ubc1c\uc0dd\ud558\uba74 \uc774\uc804 \ubc84\uc804\uc73c\ub85c \uc2e0\uc18d\ud558\uac8c \ub864\ubc31\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<p>\uc0c8\ub85c \ucd94\uac00\ub41c \ube14\ub8e8\/\uadf8\ub9b0 \ubc30\ud3ec \uc9c0\uc6d0 \uae30\ub2a5\uc744 \ud65c\uc6a9\ud558\uba74 AWS Fargate \ub610\ub294 Amazon ECS\uc5d0\uc11c CodeDeploy\ub97c \uc0ac\uc6a9\ud558\uc5ec \ubc30\ud3ec, \ud14c\uc2a4\ud2b8 \ubc0f \ud2b8\ub798\ud53d \uc804\ud658\uc744 \uc790\ub3d9\uc73c\ub85c \uad00\ub9ac\ud558\ub294 \uc0c8 \uc11c\ube44\uc2a4\ub97c \uc0dd\uc131\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc0ac\uc6a9\uc790\uac00 \uc11c\ube44\uc2a4\ub97c \uc5c5\ub370\uc774\ud2b8\ud558\uba74 CodeDeploy\uac00 \ubc30\ud3ec\ub97c \ud2b8\ub9ac\uac70\ud569\ub2c8\ub2e4. \uc774 \ubc30\ud3ec\ub294 Amazon ECS\uc640 \ud568\uaed8 \uc791\ub3d9\ud558\uc5ec \ub300\uc0c1 \uadf8\ub8f9(\ub179\uc0c9)\uc5d0 \uc0c8 \ubc84\uc804\uc758 \uc11c\ube44\uc2a4\ub97c \ubc30\ud3ec\ud558\uace0, \uc2e0\uaddc \ubc84\uc804\uc744 \ud14c\uc2a4\ud2b8\ud560 \uc218 \uc788\ub3c4\ub85d \ub85c\ub4dc \ubc38\ub7f0\uc11c\uc758 \ub9ac\uc2a4\ub108\ub97c \uc5c5\ub370\uc774\ud2b8\ud558\uace0, \uc0c1\ud0dc \uac80\uc0ac\uc5d0 \ud1b5\uacfc\ud560 \uacbd\uc6b0 \uc804\ud658\uc744 \uc218\ud589\ud569\ub2c8\ub2e4.<\/p>\n<p>\uc774 \uac8c\uc2dc\ubb3c\uc5d0\uc11c\ub294 AWS CodeDeploy\ub97c \uc0ac\uc6a9\ud558\uc5ec AWS Fargate \ubc0f Amazon ECS\uc5d0 \ub300\ud55c \ube14\ub8e8\/\uadf8\ub9b0 \ubc30\ud3ec\ub97c \uad6c\uc131\ud558\ub294 \ubc29\ubc95\uc744 \uc124\uba85\ud569\ub2c8\ub2e4. AWS CodePipeline \ubc0f Amazon ECR\uc5d0\uc11c \uc9c0\uc18d\uc801 \uc804\ub2ec (Continuous Delivery) \ud30c\uc774\ud504\ub77c\uc778\uc744 \uc0ac\uc6a9\ud558\uc5ec end-to-end \uc790\ub3d9\ud654\ub97c \uad6c\uc131\ud558\ub294 \ubc29\ubc95\uc5d0 \ub300\ud55c \ub0b4\uc6a9\uc740 <a href=\"https:\/\/aws.amazon.com\/blogs\/devops\/build-a-continuous-delivery-pipeline-for-your-container-images-with-amazon-ecr-as-source\/\">Build a Continuous Delivery Pipeline for Your Container Images with Amazon ECR as Source<\/a>\ub97c \ucc38\uc870\ud558\uc2ed\uc2dc\uc624.<\/p>\n<p>\uc774\uc81c \uc880 \ub354 \uad6c\uccb4\uc801\uc73c\ub85c \uc0b4\ud3b4\ubcf4\uaca0\uc2b5\ub2c8\ub2e4.<\/p>\n<h3>\uc0ac\uc804 \uc900\ube44<\/h3>\n<p>\uc774 \uae00\uc5d0\uc11c \uc18c\uac1c\ub420 \ubc29\ubc95\uc744 \uc2e4\uc2b5\ud558\uae30 \uc704\ud574\uc11c\ub294 \ub2e4\uc74c \ub9ac\uc18c\uc2a4\uac00 \ud544\uc694\ud569\ub2c8\ub2e4.<\/p>\n<ul>\n<li>Dockerfile \ubc0f \uc560\ud50c\ub9ac\ucf00\uc774\uc158 \uc6d0\ubcf8\uc5d0\uc11c \uc791\uc131\ud55c \uc774\ubbf8\uc9c0\ub97c \ud3ec\ud568\ud558\ub294 \ub3c4\ucee4 \uc774\ubbf8\uc9c0 \ub9ac\ud3ec\uc9c0\ud1a0\ub9ac. \uc774 \uc2e4\uc2b5\uc5d0\uc11c\ub294 Amazon ECR\ub97c \uc0ac\uc6a9\ud569\ub2c8\ub2e4. \uc790\uc138\ud55c \ub0b4\uc6a9\uc740 <em>Amazon Elastic Container Registry \uc0ac\uc6a9 \uc124\uba85\uc11c<\/em>\uc758 <a href=\"https:\/\/docs.aws.amazon.com\/AmazonECR\/latest\/userguide\/repository-create.html\">\ub9ac\ud3ec\uc9c0\ud1a0\ub9ac \uc0dd\uc131<\/a> \ubc0f <a href=\"https:\/\/docs.aws.amazon.com\/AmazonECR\/latest\/userguide\/docker-push-ecr-image.html\">\uc774\ubbf8\uc9c0 \ud478\uc2dc<\/a>\ub97c \ucc38\uc870\ud558\uc2dc\uae30 \ubc14\ub78d\ub2c8\ub2e4.<\/li>\n<li>Amazon ECS \ud074\ub7ec\uc2a4\ud130. Amazon ECS\ub97c \ucc98\uc74c \uc0ac\uc6a9\ud560 \ub54c \uc0dd\uc131\ub41c \uae30\ubcf8 \ud074\ub7ec\uc2a4\ud130\ub97c \uc0ac\uc6a9\ud558\uac70\ub098, Amazon ECS \ucf58\uc194\uc758 [<strong>Clusters<\/strong>] \ud398\uc774\uc9c0\uc5d0\uc11c [Networking only] \ud074\ub7ec\uc2a4\ud130\ub97c \uc120\ud0dd\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc790\uc138\ud55c \ub0b4\uc6a9\uc740 <em>Amazon Elastic Container Service \uc0ac\uc6a9 \uc124\uba85\uc11c<\/em>\uc758 <a href=\"https:\/\/docs.aws.amazon.com\/AmazonECS\/latest\/developerguide\/create_cluster.html\">\ud074\ub7ec\uc2a4\ud130 \uc0dd\uc131<\/a>\uc744 \ucc38\uc870\ud558\uc2dc\uae30 \ubc14\ub78d\ub2c8\ub2e4.<\/li>\n<\/ul>\n<p><strong>\ucc38\uace0<\/strong>: \uc774\ubbf8\uc9c0 \ub9ac\ud3ec\uc9c0\ud1a0\ub9ac\uc640 \ud074\ub7ec\uc2a4\ud130\ub97c \ub3d9\uc77c\ud55c AWS \ub9ac\uc804\uc5d0 \uc0dd\uc131\ud574\uc57c \ud569\ub2c8\ub2e4.<\/p>\n<h3>IAM \uc11c\ube44\uc2a4 \uc5ed\ud560 \uc124\uc815<\/h3>\n<p>Amazon ECS\uc5d0 \ub300\ud55c \uc560\ud50c\ub9ac\ucf00\uc774\uc158 \ubc30\ud3ec\uc5d0 AWS CodeDeploy\ub97c \uc0ac\uc6a9\ud558\ubbc0\ub85c Amazon ECS API\ub97c \ud638\ucd9c\ud558\uace0, \ub85c\ub4dc \ubc38\ub7f0\uc11c\ub97c \uc218\uc815\ud558\uace0, Lambda \ud568\uc218\ub97c \ud638\ucd9c\ud558\uace0, CloudWatch \uacbd\ubcf4\ub97c \uae30\uc220\ud560 \uc218 \uc788\ub294 \uad8c\ud55c\uc774 AWS CodeDeploy\uc5d0 \ud544\uc694\ud569\ub2c8\ub2e4. \ube14\ub8e8\/\uadf8\ub9b0 \ubc30\ud3ec\ub97c \uc0ac\uc6a9\ud560 Amazon EC2 \uc11c\ube44\uc2a4\ub97c \uc0dd\uc131\ud558\ub824\uba74 \uba3c\uc800 AWS CodeDeploy IAM \uc5ed\ud560(ecsCodeDeployRole)\uc744 \uc0dd\uc131\ud574\uc57c \ud569\ub2c8\ub2e4. \uc790\uc138\ud55c \uc9c0\uce68\uc740 <em>Amazon ECS \uac1c\ubc1c\uc790 \uc548\ub0b4\uc11c<\/em>\uc758 <a href=\"https:\/\/docs.aws.amazon.com\/AmazonECS\/latest\/developerguide\/codedeploy_IAM_role.html\">Amazon ECS CodeDeploy IAM \uc5ed\ud560<\/a>\uc744 \ucc38\uc870\ud558\uc138\uc694.<\/p>\n<h3>Application Load Balancer \uc0dd\uc131<\/h3>\n<p>AWS CodeDeploy\uc640 Amazon ECS\uac00 \uc5ec\ub7ec \ubc84\uc804\uc758 Amazon ECS \uc11c\ube44\uc2a4\uc5d0 \ub300\ud55c \ud2b8\ub798\ud53d \ud750\ub984\uc744 \uc81c\uc5b4\ud560 \uc218 \uc788\ub3c4\ub85d Application Load Balancer\ub97c \uc0dd\uc131\ud569\ub2c8\ub2e4.<\/p>\n<p><a href=\"https:\/\/docs.aws.amazon.com\/AmazonECS\/latest\/developerguide\/create-application-load-balancer.html\">Application Load Balancer \uc0dd\uc131<\/a>\uc758 \ub2e8\uacc4\uc5d0 \ub530\ub77c \uc544\ub798 \ub124 \uac00\uc9c0 \uc218\uc815 \uc0ac\ud56d\uc744 \uc801\uc6a9\ud558\uc138\uc694.<\/p>\n<ol>\n<li><strong>\ub85c\ub4dc \ubc38\ub7f0\uc11c \uc815\uc758<\/strong> \uc139\uc158\uc758 6a \ub2e8\uacc4\uc5d0\uc11c \ub85c\ub4dc \ubc38\ub7f0\uc11c \uc774\ub984\uc744 <strong>sample-website-alb<\/strong>\ub85c \uc9c0\uc815\ud569\ub2c8\ub2e4.<\/li>\n<li><strong>\ubcf4\uc548 \uadf8\ub8f9 \uad6c\uc131<\/strong> \uc139\uc158\uc758 2\ub2e8\uacc4\uc5d0\uc11c \ub2e4\uc74c\uc744 \uc218\ud589\ud569\ub2c8\ub2e4.\n<ol>\n<li>[<strong>Security group name<\/strong>]\uc5d0 <strong>sample-website-sg<\/strong>\ub97c \uc785\ub825\ud569\ub2c8\ub2e4.<\/li>\n<li><strong>\ubaa8\ub4e0 \uc704\uce58(0.0.0.0\/0)<\/strong>\uc5d0\uc11c <strong>TCP \ud3ec\ud2b8 8080<\/strong>\uc744 \ud5c8\uc6a9\ud558\ub294 \uaddc\uce59\uc744 \ucd94\uac00\ud569\ub2c8\ub2e4.<\/li>\n<\/ol>\n<\/li>\n<li><strong>\ub77c\uc6b0\ud305 \uad6c\uc131<\/strong> \uc139\uc158\uc5d0\uc11c \ub2e4\uc74c\uc744 \uc218\ud589\ud569\ub2c8\ub2e4.\n<ol>\n<li>[<strong>Name<\/strong>]\uc5d0 <strong>sample-website-tg-1<\/strong>\uc744 \uc785\ub825\ud569\ub2c8\ub2e4.<\/li>\n<li>[<strong>Target type<\/strong>]\uc5d0\uc11c IP \uc8fc\uc18c\ub97c \uc0ac\uc6a9\ud558\uc5ec \ub300\uc0c1\uc744 \ub4f1\ub85d\ud558\ub3c4\ub85d \uc120\ud0dd\ud569\ub2c8\ub2e4.<\/li>\n<\/ol>\n<\/li>\n<li><strong>\ucee8\ud14c\uc774\ub108 \uc778\uc2a4\ud134\uc2a4\uc5d0 \ub300\ud55c \ubcf4\uc548 \uadf8\ub8f9 \uaddc\uce59 \ub9cc\ub4e4\uae30<\/strong> \uc139\uc158\uc758 \ub2e8\uacc4\ub97c \uac74\ub108\ub701\ub2c8\ub2e4.<\/li>\n<\/ol>\n<h3>Amazon ECS \uc791\uc5c5 \uc815\uc758 \uc0dd\uc131<\/h3>\n<p>\uc774\ubbf8\uc9c0 \ub9ac\ud3ec\uc9c0\ud1a0\ub9ac\uc5d0 \ud638\uc2a4\ud305\ub41c \ub3c4\ucee4 \uc774\ubbf8\uc9c0\ub97c \ucc38\uc870\ud558\ub294 <a href=\"https:\/\/docs.aws.amazon.com\/AmazonECS\/latest\/developerguide\/create-task-definition.html\">Amazon ECS \uc791\uc5c5 \uc815\uc758\ub97c \uc0dd\uc131<\/a>\ud569\ub2c8\ub2e4. \uc774 \uc2e4\uc2b5\uc5d0\uc11c\ub294 Fargate \uc2dc\uc791 \uc720\ud615\uacfc \uc544\ub798\uc758 \uc791\uc5c5 \uc815\uc758\ub97c \uc0ac\uc6a9\ud569\ub2c8\ub2e4.<\/p>\n<pre>{\n  &quot;executionRoleArn&quot;: &quot;arn:aws:iam::account_ID:role\/ecsTaskExecutionRole&quot;,\n  &quot;containerDefinitions&quot;: [{\n    &quot;name&quot;: &quot;sample-website&quot;,\n    &quot;image&quot;: &quot;&lt;YOUR ECR REPOSITORY URI&gt;&quot;,\n    &quot;essential&quot;: true,\n    &quot;portMappings&quot;: [{\n      &quot;hostPort&quot;: 80,\n      &quot;protocol&quot;: &quot;tcp&quot;,\n      &quot;containerPort&quot;: 80\n    }]\n  }],\n  &quot;requiresCompatibilities&quot;: [\n    &quot;FARGATE&quot;\n  ],\n  &quot;networkMode&quot;: &quot;awsvpc&quot;,\n  &quot;cpu&quot;: &quot;256&quot;,\n  &quot;memory&quot;: &quot;512&quot;,\n  &quot;family&quot;: &quot;sample-website&quot;\n}<\/pre>\n<p><strong>\ucc38\uace0<\/strong>: \u201cimage\u201d \uac12\uc744 \uc0ac\uc804 \uc900\ube44 \ub2e8\uacc4\uc5d0\uc11c \uc0dd\uc131\ud558\uc5ec Amazon ECR\uc5d0 \uc5c5\ub85c\ub4dc\ud55c \uc774\ubbf8\uc9c0\uc758 Amazon ECR \ub9ac\ud3ec\uc9c0\ud1a0\ub9ac URI\ub85c \ubcc0\uacbd\ud574\uc57c \ud569\ub2c8\ub2e4.<\/p>\n<h2>\ube14\ub8e8\/\uadf8\ub9b0 \ubc30\ud3ec\ub97c \uc0ac\uc6a9\ud55c Amazon ECS \uc11c\ube44\uc2a4 \uc0dd\uc131<\/h2>\n<p>\uc0ac\uc804 \uc870\uac74 \ubc0f \uc124\uc815 \ub2e8\uacc4\ub97c \uc644\ub8cc\ud588\uc73c\ubbc0\ub85c \uc774\uc81c AWS CodeDeploy\uc758 \ube14\ub8e8\/\uadf8\ub9b0 \ubc30\ud3ec \uc9c0\uc6d0\uc744 \ud1b5\ud574 Amazon ECS \uc11c\ube44\uc2a4\ub97c \uc0dd\uc131\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<h3>Amazon ECS \uc11c\ube44\uc2a4 \uc0dd\uc131<\/h3>\n<ol>\n<li><a href=\"https:\/\/console.aws.amazon.com\/ecs\/\">https:\/\/console.aws.amazon.com\/ecs\/<\/a>\uc5d0\uc11c Amazon ECS \ucf58\uc194\uc744 \uc5fd\ub2c8\ub2e4.<\/li>\n<li>\ud074\ub7ec\uc2a4\ud130 \ubaa9\ub85d\uc5d0\uc11c \uc791\uc5c5\uc744 \uc2e4\ud589\ud558\uae30 \uc704\ud574 \uc774\uc804\uc5d0 \uc0dd\uc131\ud55c Amazon ECS \ud074\ub7ec\uc2a4\ud130\ub97c \uc120\ud0dd\ud569\ub2c8\ub2e4.<\/li>\n<li>[<strong>Services<\/strong>] \ud0ed\uc5d0\uc11c [<strong>Create<\/strong>]\ub97c \uc120\ud0dd\ud569\ub2c8\ub2e4.<\/li>\n<\/ol>\n<p>\uadf8\ub7ec\uba74 [<strong>Configure service<\/strong>] \ub9c8\ubc95\uc0ac\uac00 \uc5f4\ub9bd\ub2c8\ub2e4. \uc5ec\uae30\uc5d0\uc11c AWS Fargate\uc640 AWS CodeDeploy\ub97c \ud65c\uc6a9\ud55c \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc758 \ubc30\ud3ec\uc640 \uc2e4\ud589 \ubc0f \uc5c5\ub370\uc774\ud2b8\uc5d0 \ud544\uc694\ud55c \ubaa8\ub4e0 \ud56d\ubaa9\uc744 \uad6c\uc131\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<ol>\n<li>[<strong>Configure service<\/strong>] \uad6c\uc131\ud558\uae30\n<ol>\n<li>[<strong>Launch type<\/strong>]\uc73c\ub85c [<strong>FARGATE<\/strong>]\ub97c \uc120\ud0dd\ud569\ub2c8\ub2e4.<\/li>\n<li>[<strong>Task Definition<\/strong>]\uc740 \uc774\uc804\uc5d0 \uc0dd\uc131\ud55c sample-website \uc791\uc5c5 \uc815\uc758\ub97c \uc120\ud0dd\ud569\ub2c8\ub2e4.<\/li>\n<li>\uc560\ud50c\ub9ac\ucf00\uc774\uc158 \uc791\uc5c5\uc744 \uc2e4\ud589\ud560 \ud074\ub7ec\uc2a4\ud130\ub97c \uc120\ud0dd\ud569\ub2c8\ub2e4.<\/li>\n<li>[Service Name]\uc5d0 [Sample-Website]\ub97c \uc785\ub825\ud569\ub2c8\ub2e4.<\/li>\n<li>[Number of tasks]\uc5d0 \uc11c\ube44\uc2a4\ub97c \uc2e4\ud589\ud560 \uc791\uc5c5\uc758 \uc218\ub97c \uc9c0\uc815\ud569\ub2c8\ub2e4.<\/li>\n<\/ol>\n<\/li>\n<li>[<strong>Deployments<\/strong>] \uad6c\uc131\ud558\uae30\n<ol>\n<li>[<strong>Deployment type<\/strong>]\uc5d0\uc11c [<strong>Blue\/green deployment (powered by AWS CodeDeploy)<\/strong>]\ub97c \uc120\ud0dd\ud569\ub2c8\ub2e4. \uadf8\ub7ec\uba74 \uae30\ubcf8 \uc124\uc815\uc744 \uc0ac\uc6a9\ud558\uc5ec CodeDeploy \uc560\ud50c\ub9ac\ucf00\uc774\uc158 \ubc0f \ubc30\ud3ec \uadf8\ub8f9\uc774 \uc0dd\uc131\ub429\ub2c8\ub2e4. \ub098\uc911\uc5d0 CodeDeploy \ucf58\uc194\uc5d0\uc11c \uc124\uc815\uc744 \ud655\uc778\ud558\uace0 \ud3b8\uc9d1\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/li>\n<li>\uc11c\ube44\uc2a4 \uc5ed\ud560\uc740 \uc774\uc804\uc5d0 \uc0dd\uc131\ud55c CodeDeploy \uc11c\ube44\uc2a4 \uc5ed\ud560\uc744 \uc120\ud0dd\ud569\ub2c8\ub2e4.<\/li>\n<\/ol>\n<\/li>\n<li>[<strong>Next step<\/strong>]\uc744 \ud074\ub9ad\ud569\ub2c8\ub2e4.<\/li>\n<li>[<strong>VPC and security groups<\/strong>] \uad6c\uc131\ud558\uae30\n<ol>\n<li>[<strong>Subnets<\/strong>]\uc5d0\uc11c \uc11c\ube44\uc2a4\uc5d0 \uc0ac\uc6a9\ud560 \uc11c\ube0c\ub137\uc744 \uc120\ud0dd\ud569\ub2c8\ub2e4.<\/li>\n<li>[<strong>Security groups<\/strong>]\uc5d0\uc11c [<strong>Edit<\/strong>]\ub97c \uc120\ud0dd\ud569\ub2c8\ub2e4.\n<ol>\n<li>[<strong>Assigned security groups<\/strong>]\uc5d0 \ub300\ud574 [<strong>Select existing security group<\/strong>]\uc744 \uc120\ud0dd\ud569\ub2c8\ub2e4.<\/li>\n<li>[<strong>Existing security groups<\/strong>]\uc5d0\uc11c \uc774\uc804\uc5d0 \uc0dd\uc131\ud55c sample-website-sg \uadf8\ub8f9\uc744 \uc120\ud0dd\ud569\ub2c8\ub2e4.<\/li>\n<li>[<strong>Save<\/strong>]\ub97c \ud074\ub9ad\ud569\ub2c8\ub2e4.<\/li>\n<\/ol>\n<\/li>\n<\/ol>\n<\/li>\n<li>[<strong>Load Balancing<\/strong>] \uad6c\uc131\ud558\uae30\n<ol>\n<li>[<strong>Application Load Balancer<\/strong>]\ub97c \uc120\ud0dd\ud569\ub2c8\ub2e4.<\/li>\n<li>[<strong>Load balancer name<\/strong>]\uc5d0 \ub300\ud574 [<strong>sample-website-alb<\/strong>]\ub97c \uc120\ud0dd\ud569\ub2c8\ub2e4.<\/li>\n<\/ol>\n<\/li>\n<li>[<strong>Container to load balance<\/strong>] \uad6c\uc131\ud558\uae30\n<ol>\n<li>[<strong>Add to load balancer<\/strong>]\ub97c \uc120\ud0dd\ud569\ub2c8\ub2e4.<\/li>\n<li>[<strong>Production listener port<\/strong>]\uc758 \uccab \ubc88\uc9f8 \ub4dc\ub86d\ub2e4\uc6b4 \ubaa9\ub85d\uc5d0\uc11c [<strong>80:HTTP<\/strong>]\ub97c \uc120\ud0dd\ud569\ub2c8\ub2e4.<\/li>\n<li>[<strong>Test listener port<\/strong>]\uc758 [<strong>Enter a listener port<\/strong>]\uc5d0 [<strong>8080<\/strong>]\uc744 \uc785\ub825\ud569\ub2c8\ub2e4.<\/li>\n<\/ol>\n<\/li>\n<li>[<strong>Additional configuration<\/strong>] \uad6c\uc131\n<ol>\n<li>[<strong>Target group 1 name<\/strong>]\uc5d0\uc11c [<strong>sample-website-tg-1<\/strong>]\uc744 \uc120\ud0dd\ud569\ub2c8\ub2e4.<\/li>\n<li>[<strong>Target group 2 name<\/strong>]\uc5d0 [<strong>sample-website-tg-2<\/strong>]\ub97c \uc785\ub825\ud569\ub2c8\ub2e4.<\/li>\n<\/ol>\n<\/li>\n<li>[<strong>Service discovery (optional)<\/strong>]\uc5d0\uc11c [<strong>Enable service discovery integration<\/strong>]\uc758 \uc120\ud0dd\uc744 \ucde8\uc18c\ud55c \ud6c4 [<strong>Next step<\/strong>]\uc744 \uc120\ud0dd\ud569\ub2c8\ub2e4.<\/li>\n<li>Auto Scaling\uc744 \uad6c\uc131\ud558\uc9c0 \ub9c8\uc138\uc694. [<strong>Next step<\/strong>]\uc744 \ud074\ub9ad\ud569\ub2c8\ub2e4.<\/li>\n<li>\uc11c\ube44\uc2a4\uc758 \uc815\ud655\ub3c4\ub97c \uac80\ud1a0\ud55c \ub2e4\uc74c [<strong>Create service<\/strong>]\ub97c \ud074\ub9ad\ud569\ub2c8\ub2e4.<\/li>\n<li>\ubaa8\ub4e0 \ud56d\ubaa9\uc774 \uc131\uacf5\uc801\uc73c\ub85c \uc0dd\uc131\ub418\uba74 [<strong>View service<\/strong>]\ub97c \ud074\ub9ad\ud569\ub2c8\ub2e4.<\/li>\n<\/ol>\n<p>\uc774\uc81c \uc0c8\ub85c \uc0dd\uc131\ub41c \uc11c\ube44\uc2a4\uc5d0\uc11c \ud558\ub098 \uc774\uc0c1\uc758 \uc791\uc5c5\uc774 \uc2e4\ud589 \uc911\uc778 \uac83\uc744 \ud655\uc778\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2862 size-large\" src=\"https:\/\/d2908q01vomqb2.cloudfront.net\/7719a1c782a1ba91c031a682a0a2f8658209adbf\/2018\/11\/27\/bg-ecs-deployments-new-service-1024x566.png\" alt=\"\" width=\"1024\" height=\"566\" \/><\/p>\n<p>[<strong>Events<\/strong>] \ud0ed\uc5d0 Amazon ECS\uac00 sample-website-tg-1 \ub300\uc0c1 \uadf8\ub8f9\uc5d0 \uc791\uc5c5\uc744 \ubc30\ud3ec\ud588\ub294\uc9c0 \ud655\uc778\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc0c8\ub85c \uace0\uce68 \ud6c4\uc5d0\ub294 \uc11c\ube44\uc2a4\uac00 \uc548\uc815\uc801 \uc0c1\ud0dc\ub85c \ub098\ud0c0\ub098\uc57c \ud569\ub2c8\ub2e4.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2866 size-large\" src=\"https:\/\/d2908q01vomqb2.cloudfront.net\/7719a1c782a1ba91c031a682a0a2f8658209adbf\/2018\/11\/27\/bg-ecs-deployments-new-service-events-1024x327.png\" alt=\"\" width=\"1024\" height=\"327\" \/><\/p>\n<p><a href=\"https:\/\/us-east-1.console.aws.amazon.com\/codesuite\/codedeploy\/applications\/\">AWS CodeDeploy \ucf58\uc194<\/a>\uc5d0\uc11c\ub294 Amazon ECS [<strong>Configure service<\/strong>] \ub9c8\ubc95\uc0ac\uac00 CodeDeploy \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc744 \uc0dd\uc131\ud588\uc74c\uc744 \ud655\uc778\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc0dd\uc131\ub41c \ubc30\ud3ec \uadf8\ub8f9\uc744 \ud3ec\ud568\ud55c \uae30\ud0c0 \uc138\ubd80 \uc815\ubcf4\ub97c \ubcf4\ub824\uba74 \ud574\ub2f9 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc744 \ud074\ub9ad\ud558\uc138\uc694.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2867 size-full\" src=\"https:\/\/d2908q01vomqb2.cloudfront.net\/7719a1c782a1ba91c031a682a0a2f8658209adbf\/2018\/11\/27\/bg-ecs-deployments-codedeploy-app.png\" alt=\"\" width=\"973\" height=\"534\" \/><\/p>\n<p>\ubc30\ud3ec \uadf8\ub8f9 \uc774\ub984\uc744 \ud074\ub9ad\ud558\uba74 \ubc30\ud3ec\uc5d0 \ub300\ud55c \uc138\ubd80 \uc815\ubcf4\ub97c \ubcfc \uc218 \uc788\uc2b5\ub2c8\ub2e4. &nbsp;[<strong>Deployment type<\/strong>] \uc544\ub798\uc5d0 [<strong>Blue\/green<\/strong>]\uc774 \ud45c\uc2dc\ub429\ub2c8\ub2e4. [<strong>Deployment configuration<\/strong>] \uc544\ub798\uc5d0\ub294 <strong>CodeDeployDefault.ECSAllAtOnce<\/strong>\uac00 \ud45c\uc2dc\ub429\ub2c8\ub2e4. \uc774\ub294 \uc0c1\ud0dc \uac80\uc0ac\uc5d0 \ud1b5\uacfc\ud558\uba74 CodeDeploy\uac00 Application Load Balancer\uc758 \ub9ac\uc2a4\ub108\ub97c \uc5c5\ub370\uc774\ud2b8\ud558\uc5ec \ud2b8\ub798\ud53d\uc758 100%\ub97c \ud0c0\uac9f \ud658\uacbd(\ub179\uc0c9)\uc73c\ub85c \uc804\uc1a1\ud55c\ub2e4\ub294 \uac83\uc744 \ub098\ud0c0\ub0c5\ub2c8\ub2e4.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-2868\" src=\"https:\/\/d2908q01vomqb2.cloudfront.net\/7719a1c782a1ba91c031a682a0a2f8658209adbf\/2018\/11\/27\/bg-ecs-deployments-codedepploy-deployment-group-details.png\" alt=\"\" width=\"968\" height=\"302\" \/><\/p>\n<p>[<strong>Load Balancing<\/strong>]\uc5d0\uc11c \ub300\uc0c1 \uadf8\ub8f9\uacfc \ud504\ub85c\ub355\uc158 \ub9ac\uc2a4\ub108 ARN \ubc0f \ud14c\uc2a4\ud2b8 \ub9ac\uc2a4\ub108 ARN\uc5d0 \ub300\ud55c \uc138\ubd80 \uc815\ubcf4\ub97c \ud655\uc778\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-2869\" src=\"https:\/\/d2908q01vomqb2.cloudfront.net\/7719a1c782a1ba91c031a682a0a2f8658209adbf\/2018\/11\/27\/bg-ecs-deployments-codedeploy-load-balancing.png\" alt=\"\" width=\"957\" height=\"266\" \/><\/p>\n<p>\uc774\uc81c \uc11c\ube44\uc2a4\uc5d0 \uc5c5\ub370\uc774\ud2b8\ub97c \uc801\uc6a9\ud558\uc5ec CodeDeploy \ubc30\ud3ec\uac00 \uc791\ub3d9\ud558\ub294\uc9c0 \ud655\uc778\ud574 \ubcf4\uaca0\uc2b5\ub2c8\ub2e4.<\/p>\n<h2>CodeDeploy \ube14\ub8e8\/\uadf8\ub9b0 \ubc30\ud3ec \ud2b8\ub9ac\uac70<\/h2>\n<h3>\uc791\uc5c5 \uc815\uc758 \uc218\uc815\ubcf8 \uc0dd\uc131<\/h3>\n<p>\ubc30\ud3ec\ub97c \ud14c\uc2a4\ud2b8\ud558\uae30 \uc704\ud574 \uc560\ud50c\ub9ac\ucf00\uc774\uc158\uc5d0 \ub300\ud55c \uc791\uc5c5 \uc815\uc758\ub97c \uc218\uc815\ud569\ub2c8\ub2e4.<\/p>\n<ol>\n<li><a href=\"https:\/\/console.aws.amazon.com\/ecs\/\">https:\/\/console.aws.amazon.com\/ecs\/<\/a>\uc5d0\uc11c Amazon ECS \ucf58\uc194\uc744 \uc5fd\ub2c8\ub2e4.<\/li>\n<li>\ud0d0\uc0c9 \ucc3d\uc5d0\uc11c [<strong>Task Definitions<\/strong>]\ub97c \uc120\ud0dd\ud569\ub2c8\ub2e4.<\/li>\n<li>sample-website \uc791\uc5c5 \uc815\uc758\ub97c \uc120\ud0dd\ud55c \ub2e4\uc74c [<strong>Create new revision<\/strong>]\uc744 \uc120\ud0dd\ud569\ub2c8\ub2e4.<\/li>\n<li>[<strong>Tags<\/strong>]\uc5d0\uc11c \ub2e4\uc74c\uc744 \uc218\ud589\ud569\ub2c8\ub2e4.\n<ol>\n<li>[<strong>Add key<\/strong>]\uc5d0 [<strong>Name<\/strong>]\uc744 \uc785\ub825\ud569\ub2c8\ub2e4.<\/li>\n<li>[<strong>Add value<\/strong>]\uc5d0 [<strong>Sample Website<\/strong>]\ub97c \uc785\ub825\ud569\ub2c8\ub2e4.<\/li>\n<\/ol>\n<\/li>\n<li>[<strong>Create<\/strong>]\ub97c \uc120\ud0dd\ud569\ub2c8\ub2e4.<\/li>\n<\/ol>\n<h3>ECS \uc11c\ube44\uc2a4 \uc5c5\ub370\uc774\ud2b8<\/h3>\n<p>\uc774\uc81c \uc791\uc5c5 \uc815\uc758\uc758 \ucd5c\uc2e0 \ubc84\uc804\uc744 \uc0ac\uc6a9\ud558\ub3c4\ub85d Amazon EC2 \uc11c\ube44\uc2a4\ub97c \uc5c5\ub370\uc774\ud2b8\ud574\uc57c \ud569\ub2c8\ub2e4.<\/p>\n<ol>\n<li><a href=\"https:\/\/console.aws.amazon.com\/ecs\/\">https:\/\/console.aws.amazon.com\/ecs\/<\/a>\uc5d0\uc11c Amazon ECS \ucf58\uc194\uc744 \uc5fd\ub2c8\ub2e4.<\/li>\n<li>Amazon EC2 \uc11c\ube44\uc2a4\ub97c \ubc30\ud3ec\ud55c Amazon ECS \ud074\ub7ec\uc2a4\ud130\ub97c \uc120\ud0dd\ud569\ub2c8\ub2e4.<\/li>\n<li>sample-website \uc11c\ube44\uc2a4 \uc606\uc758 \ud655\uc778\ub780\uc744 \uc120\ud0dd\ud569\ub2c8\ub2e4.<\/li>\n<li>[<strong>Update<\/strong>]\ub97c \uc120\ud0dd\ud558\uc5ec [<strong>Update Service<\/strong>] \ub9c8\ubc95\uc0ac\ub97c \uc5fd\ub2c8\ub2e4.\n<ol>\n<li>[<strong>Configure service<\/strong>] \uc544\ub798\uc758 [<strong>Task Definition<\/strong>]\uc5d0 \ub300\ud574 [<strong>Revision<\/strong>] \ub4dc\ub86d\ub2e4\uc6b4 \ubaa9\ub85d\uc5d0\uc11c <strong>2 (latest)<\/strong>\ub97c \uc120\ud0dd\ud569\ub2c8\ub2e4.<\/li>\n<\/ol>\n<\/li>\n<li>[<strong>Next step<\/strong>]\uc744 \uc120\ud0dd\ud569\ub2c8\ub2e4.<\/li>\n<li>[<strong>Configure deployments<\/strong>]\ub97c \uac74\ub108\ub701\ub2c8\ub2e4. [<strong>Next step<\/strong>]\uc744 \uc120\ud0dd\ud569\ub2c8\ub2e4.<\/li>\n<li>[<strong>Configure network<\/strong>]\ub97c \uac74\ub108\ub701\ub2c8\ub2e4. [<strong>Next step<\/strong>]\uc744 \uc120\ud0dd\ud569\ub2c8\ub2e4.<\/li>\n<li>[<strong>Set Auto Scaling (optional)<\/strong>]\uc744 \uac74\ub108\ub701\ub2c8\ub2e4. [<strong>Next step<\/strong>]\uc744 \uc120\ud0dd\ud569\ub2c8\ub2e4.<\/li>\n<li>\ubcc0\uacbd \ub0b4\uc6a9\uc744 \uac80\ud1a0\ud55c \ud6c4 [<strong>Update Service<\/strong>]\ub97c \uc120\ud0dd\ud569\ub2c8\ub2e4.<\/li>\n<li>[<strong>View Service<\/strong>]\ub97c \uc120\ud0dd\ud569\ub2c8\ub2e4.<\/li>\n<\/ol>\n<p>\uc774\uc81c \uc11c\ube44\uc2a4\uc758 \ube14\ub8e8\/\uadf8\ub9b0 \ubc30\ud3ec\uc5d0 \ub300\ud55c \uc138\ubd80 \uc815\ubcf4\ub97c \ubcfc \uc218 \uc788\ub294 [Deployments] \ud0ed\uc73c\ub85c \uc774\ub3d9\ud569\ub2c8\ub2e4.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone size-full wp-image-2870\" src=\"https:\/\/d2908q01vomqb2.cloudfront.net\/7719a1c782a1ba91c031a682a0a2f8658209adbf\/2018\/11\/27\/bg-ecs-deployments-ecs-deployment-details.png\" alt=\"\" width=\"1049\" height=\"337\" \/><\/p>\n<p>\ubc30\ud3ec ID\ub97c \ud074\ub9ad\ud558\uba74 CodeDeploy \ubc30\ud3ec\uc758 \uc138\ubd80 \uc815\ubcf4 \ubcf4\uae30\ub85c \uc774\ub3d9\ud558\ub294\ub370 \uc5ec\uae30\uc5d0\uc11c \ubc30\ud3ec \uc0c1\ud0dc\ub97c \ud655\uc778\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2871 size-medium\" src=\"https:\/\/d2908q01vomqb2.cloudfront.net\/7719a1c782a1ba91c031a682a0a2f8658209adbf\/2018\/11\/27\/bg-ecs-deployments-codedeploy-deployment-status-300x300.png\" alt=\"\" width=\"300\" height=\"300\" \/><\/p>\n<p>\ud2b8\ub798\ud53d \uc774\ub3d9 \uc9c4\ud589 \uc0c1\ud669\ub3c4 \ud655\uc778\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-2872 size-medium\" src=\"https:\/\/d2908q01vomqb2.cloudfront.net\/7719a1c782a1ba91c031a682a0a2f8658209adbf\/2018\/11\/27\/bg-ecs-deployments-codedeploy-traffic-shifting-300x181.png\" alt=\"\" width=\"300\" height=\"181\" \/><\/p>\n<p>\ubb38\uc81c\uac00 \ubc1c\uacac\ub418\uba74 \ubc30\ud3ec\ub97c \uc911\uc9c0\ud558\uace0 \ub864\ubc31\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uadf8\ub7ec\uba74 \ud2b8\ub798\ud53d\uc774 \uae30\uc874 \uc791\uc5c5 \uc138\ud2b8(\ud30c\ub780\uc0c9)\ub85c \ub2e4\uc2dc \uc774\ub3d9\ud558\uace0 \ubc30\ud3ec\uac00 \uc911\uc9c0\ub429\ub2c8\ub2e4.<\/p>\n<p>\uae30\ubcf8\uc801\uc73c\ub85c CodeDeploy\ub294 \ubc30\ud3ec\ub97c \uc131\uacf5\ud558\uace0 1\uc2dc\uac04 \ud6c4\uc5d0 \uae30\uc874 \uc791\uc5c5 \uc138\ud2b8\ub97c \uc885\ub8cc\ud569\ub2c8\ub2e4. AWS CodeDeploy \ucf58\uc194\uc5d0\uc11c \ub300\uae30 \uc2dc\uac04\uc744 \uc904\uc77c \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc791\uc5c5 \uc138\ud2b8\uac00 \uc885\ub8cc\ub418\uba74 CodeDeploy\uac00 \ubc30\ud3ec \uc644\ub8cc\ub97c \ud45c\uc2dc\ud569\ub2c8\ub2e4.<\/p>\n<h2>\uacb0\ub860<\/h2>\n<p>\uc774 \ud3ec\uc2a4\ud305\uc5d0\uc11c\ub294 AWS CodeDeploy\ub97c \ud65c\uc6a9\ud55c \ube14\ub8e8\/\uadf8\ub9b0 \ubc30\ud3ec\ub97c \ud1b5\ud574 AWS Fargate \uae30\ubc18 Amazon ECS \uc11c\ube44\uc2a4\ub97c \uc0dd\uc131\ud558\ub294 \ubc29\ubc95\uc744 \uc124\uba85\ud588\uc2b5\ub2c8\ub2e4. AWS Management Console\uc5d0\uc11c Application Load Balancer \ubc0f \uad00\ub828 \ub300\uc0c1 \uadf8\ub8f9\uacfc \uac19\uc740 \ud544\uc218 \uad6c\uc131 \uc694\uc18c\ub97c \uad6c\uc131\ud558\ub294 \ubc29\ubc95\ub3c4 \ud568\uaed8 \uc18c\uac1c\ud588\uc2b5\ub2c8\ub2e4.&nbsp; \uc774 \uae00\uc5d0\uc11c \uc18c\uac1c\ud55c \ub0b4\uc6a9\uc774 \uc2e4\uc81c \uc560\ud50c\ub9ac\ucf00\uc774\uc158 \uad6c\ud604 \uc791\uc5c5\uc5d0 \ub3c4\uc6c0\uc774 \ub418\uc5c8\uc73c\uba74 \ud569\ub2c8\ub2e4.<\/p>\n<p>\u2013 \uc774 \uae00\uc740 <a href=\"https:\/\/aws.amazon.com\/blogs\/devops\/\">AWS DevOps Blog<\/a>\uc758 <a href=\"https:\/\/aws.amazon.com\/blogs\/devops\/use-aws-codedeploy-to-implement-blue-green-deployments-for-aws-fargate-and-amazon-ecs\/\">Use AWS CodeDeploy to Implement Blue\/Green Deployments for AWS Fargate and Amazon ECS<\/a>\uc758 \ubc88\uc5ed\ubcf8\uc785\ub2c8\ub2e4.<\/p>\n<p>Source: <a href=\"https:\/\/aws.amazon.com\/ko\/blogs\/korea\/use-aws-codedeploy-to-implement-blue-green-deployments-for-aws-fargate-and-amazon-ecs\/\" target=\"_blank\" rel=\"noopener noreferrer\">AWS CodeDeploy\uae30\ubc18 AWS Fargate\uc640 Amazon ECS \uc11c\ube44\uc2a4 \ube14\ub8e8\/\uadf8\ub9b0 \ubc29\uc2dd \ubc30\ud3ec \ud558\uae30<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div class=\"mh-excerpt\"><p>AWS CodeDeploy\uae30\ubc18 AWS Fargate\uc640 Amazon ECS \uc11c\ube44\uc2a4 \ube14\ub8e8\/\uadf8\ub9b0 \ubc29\uc2dd \ubc30\ud3ec \ud558\uae30 AWS Fargate \ubc0f Amazon ECS(Amazon Elastic Container Service)\uc5d0\uc11c \ud638\uc2a4\ud305\ub418\ub294 \uc11c\ube44\uc2a4\uc5d0 \ub300\ud55c \ube14\ub8e8\/\uadf8\ub9b0 \ubc30\ud3ec \uc9c0\uc6d0\uc744 \uc704\ud55c \uae30\ub2a5 \ucd94\uac00 \uc18c\uc2dd\uc744 \uc54c\ub824\ub4dc\ub9bd\ub2c8\ub2e4. AWS CodeDeploy\uc5d0\uc11c \ube14\ub8e8\/\uadf8\ub9b0 \ubc30\ud3ec\ub97c \uc0ac\uc6a9\ud558\uba74 \uc560\ud50c\ub9ac\ucf00\uc774\uc158 \uc5c5\ub370\uc774\ud2b8\ub85c \uc778\ud55c \ub2e4\uc6b4\ud0c0\uc784\uc744 \ucd5c\uc18c\ud654\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ube14\ub8e8\/\uadf8\ub9b0 \ubc30\ud3ec \ubc29\uc2dd\uc744 \uc0ac\uc6a9\ud558\uba74 \uc774\uc804 \ubc84\uc804 \uc5b4\ud50c\ub9ac\ucf00\uc774\uc158\uc774 \uad6c\ub3d9\ub418\uc5b4 \uc788\ub294 \uc0c1\ud0dc\uc5d0\uc11c \uc2e0\uaddc \ubc84\uc804\uc758 \uc5b4\ud50c\ub9ac\ucf00\uc774\uc158\uc744 \ud568\uaed8 \ub7f0\uce6d\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc774\ub85c \uc778\ud574 \ud2b8\ub798\ud53d\uc744 \uc2e0\uaddc \ubc84\uc804\uc73c\ub85c \ub77c\uc6b0\ud305\ud558\uae30 \uc804, \uc0c8\ub85c\uc6b4 \uc5b4\ud50c\ub9ac\ucf00\uc774\uc158\uc744 \ud14c\uc2a4\ud2b8\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \ub610\ud55c \ubc30\ud3ec \ud504\ub85c\uc138\uc2a4\ub97c \ubaa8\ub2c8\ud130\ub9c1\ud558\ub2e4 \ubb38\uc81c\uac00 \ubc1c\uc0dd\ud558\uba74 \uc774\uc804 \ubc84\uc804\uc73c\ub85c \uc2e0\uc18d\ud558\uac8c \ub864\ubc31\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc0c8\ub85c \ucd94\uac00\ub41c \ube14\ub8e8\/\uadf8\ub9b0 \ubc30\ud3ec \uc9c0\uc6d0 \uae30\ub2a5\uc744 \ud65c\uc6a9\ud558\uba74 AWS Fargate \ub610\ub294 Amazon ECS\uc5d0\uc11c CodeDeploy\ub97c \uc0ac\uc6a9\ud558\uc5ec \ubc30\ud3ec, \ud14c\uc2a4\ud2b8 \ubc0f \ud2b8\ub798\ud53d \uc804\ud658\uc744 \uc790\ub3d9\uc73c\ub85c \uad00\ub9ac\ud558\ub294 \uc0c8 \uc11c\ube44\uc2a4\ub97c \uc0dd\uc131\ud560 \uc218 \uc788\uc2b5\ub2c8\ub2e4. \uc0ac\uc6a9\uc790\uac00 \uc11c\ube44\uc2a4\ub97c \uc5c5\ub370\uc774\ud2b8\ud558\uba74 CodeDeploy\uac00 \ubc30\ud3ec\ub97c \ud2b8\ub9ac\uac70\ud569\ub2c8\ub2e4. \uc774 \ubc30\ud3ec\ub294 Amazon ECS\uc640 \ud568\uaed8 \uc791\ub3d9\ud558\uc5ec \ub300\uc0c1 \uadf8\ub8f9(\ub179\uc0c9)\uc5d0 \uc0c8 \ubc84\uc804\uc758 \uc11c\ube44\uc2a4\ub97c \ubc30\ud3ec\ud558\uace0, \uc2e0\uaddc \ubc84\uc804\uc744 \ud14c\uc2a4\ud2b8\ud560 \uc218 \uc788\ub3c4\ub85d \ub85c\ub4dc \ubc38\ub7f0\uc11c\uc758 \ub9ac\uc2a4\ub108\ub97c \uc5c5\ub370\uc774\ud2b8\ud558\uace0, \uc0c1\ud0dc \uac80\uc0ac\uc5d0 \ud1b5\uacfc\ud560 \uacbd\uc6b0 <a class=\"mh-excerpt-more\" href=\"https:\/\/jirak.net\/wp\/aws-codedeploy%ea%b8%b0%eb%b0%98-aws-fargate%ec%99%80-amazon-ecs-%ec%84%9c%eb%b9%84%ec%8a%a4-%eb%b8%94%eb%a3%a8-%ea%b7%b8%eb%a6%b0-%eb%b0%a9%ec%8b%9d-%eb%b0%b0%ed%8f%ac-%ed%95%98%ea%b8%b0\/\" title=\"AWS CodeDeploy\uae30\ubc18 AWS Fargate\uc640 Amazon ECS \uc11c\ube44\uc2a4 \ube14\ub8e8\/\uadf8\ub9b0 \ubc29\uc2dd \ubc30\ud3ec \ud558\uae30\">[ more&#8230; ]<\/a><\/p>\n<\/div>","protected":false},"author":1,"featured_media":29924,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[169],"tags":[656],"class_list":["post-29923","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news","tag-aws"],"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/jirak.net\/wp\/wp-json\/wp\/v2\/posts\/29923","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/jirak.net\/wp\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/jirak.net\/wp\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/jirak.net\/wp\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/jirak.net\/wp\/wp-json\/wp\/v2\/comments?post=29923"}],"version-history":[{"count":1,"href":"https:\/\/jirak.net\/wp\/wp-json\/wp\/v2\/posts\/29923\/revisions"}],"predecessor-version":[{"id":29925,"href":"https:\/\/jirak.net\/wp\/wp-json\/wp\/v2\/posts\/29923\/revisions\/29925"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/jirak.net\/wp\/wp-json\/wp\/v2\/media\/29924"}],"wp:attachment":[{"href":"https:\/\/jirak.net\/wp\/wp-json\/wp\/v2\/media?parent=29923"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/jirak.net\/wp\/wp-json\/wp\/v2\/categories?post=29923"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/jirak.net\/wp\/wp-json\/wp\/v2\/tags?post=29923"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}