DevOps
[ DevOps ] - AWS 기반 소규모 & 중규모 아키텍트 설계 - AWS CLI 개요 + AWS CLI를 통한 작업 정의1
우선 기존에 했던 것 처럼 EC2인스턴스를 하나 만들고 Django-Deploy를 깔고 ECR에 django image를 저장하는 과정을 스피디하게 짚고 넘어가도록 하겠습니다. 우선 django image의 빌드는 끝났다고 가정해 봅시다. 여기서의 핵심은 aws cli이니까요 $sudo apt-get install awscli $aws configure $aws ecr get-login --no-include-email --region ap-northeast-2 $docker login -u AWS -p eyJwYXlsb2FkIjoieGdYOVNwM2pNcWxDL3FBdkdhVXBVTVN3akd5UzVYam5Xb0Y0ZlYxWFNwbC9IU0ZwYUUxK2dSMnNUajUwb3EzOFlRcHYxMW9NM..
[ DevOps ] - AWS 기반 소규모 & 중규모 아키텍트 설계 - Docker Compose를 활용한 배포
/docker-compose.yml "docker-compose.yml" 25L, 509B 2,9 All version: '3' services: nginx: container_name: nginx build: ./nginx image: docker-django/nginx restart: always ports: - "80:80" volumes: - ./Django-Deploy:/srv/docker-django - ./log:/var/log/nginx depends_on: - django django: container_name: django build: ./Django-Deploy image: docker-django/django restart: always command: uwsgi --ini uws..
[ DevOps ] - AWS 기반 소규모 & 중규모 아키텍트 설계 - (인프라) AWS Fargate을 통한 배포
바로 ECS의 클러스터를 활용하겠습니다. 클러스터라는 것은 어떻게 보면 하나의 구분된 영역이라고 보시면 됩니다. 또한 클러스터를 생성하면 작업을 생성해야 합니다. 그리고 그 아래에 여러개의 컨테이너가 있을 수 있는겁니다. 이번 실습같은 경우는 컨테이너가 하나겠지만 다음 실습부터는 여러개 일 수 있습니다. 간단히 AWS Fargate에 대해서 되짚고 가보겠습니다. AWS Fargate aws fargate fargate는 Amazon EC2인스턴스의 서버나 클러스터를 관리할 필요 없이 컨테이너를 실행하기 위해 AWS ECS에 사용할 수 있는 기술입니다. Fargate를 사용하면 더 이상 컨테이너를 실행하기 위해 가상 머신의 클러스터를 프로비저닝, 구성 또는 조정할 필요가 없습니다. 따라서 서버 유형을 선택..
[ DevOps ] - AWS 기반 소규모 & 중규모 아키텍트 설계 - (인프라) AWS ECR에 컨테이너 업로드
일단 저희가 이전에 만든 django이미지와 nginx이미지를 registry에 등록한다고 해 봅시디. 그리고 ECS은 Elastic Container Service이고 ECR은 Elastic Container Registry인데 ECS안에 ECR이 포함되어 있는 형식입니다. 그러면 ECS가 우리가 registry에 등록해둔 이미지를 다양한 EC2인스턴스에 쏴주는 역할을 하게 됩니다. 이러한 컨테이너 배포방식이 옵션 1입니다. 그리고 우리가 Docker Registry보다 ECR을 사용해야 하는 이유가 ECS호환이 잘 되어 있기 때문입니다. 또한 ECS을 오토스케일링 기능을 지원가능하게 하기 위함입니다. 하지만 이는 매우 고전적인 방식입니다. 그리고 노가다가 매우 들어간다는 관리 이슈가 생기게 됩니다. ..