SlideShare a Scribd company logo
AWS DevOps와 ECR을 통한 Elastic Beanstalk
배포 환경 구축 및 타 환경과의 비교
전북대학교 201610674 이영훈
AWS DevOps Tools
Code Commit
• 완전관리형
• 협업 방식의 코드 작업
• 개발 수명 주기 속도 향상
• 기존 도구(Git) 사용
AWS DevOps Tools
• 완전관리형 빌드 서비스
• 지속적 크기 조정
• 사용량에 따라 지불
• 지속적 통합 및 전달 지원
Code Build
AWS DevOps Tools
• 신속한 제공
• 구성 가능한 워크플로
• 빠르게 시작
• 손쉬운 통합
Code Pipeline
AWS DevOps Tools
• 완전 관리형 레지스트리로 수월하게 작업
• 컨테이너 이미지를 안전하게 공유 및 다운로드
• 빠르고 가용성이 뛰어난 액세스 제공
• 배포 워크플로 간소화
Elastic Container Registry
AWS DevOps Tools
• 빠르고 간편한 시작
• 개발자 생산성
• 적절한 규모 유지
• 완벽한 리소스 제어
Elastic Beanstalk
AWS CodePipeline 참고자료
https://docs.aws.amazon.com/ko_kr/codepipeline/latest/userguide/welcome-introducing.html
CodePipeline 릴리스 프로세스의 예
배포 시나리오
Developers
Code Commit Code Pipeline
Code Build Elastic Container Registry
Elastic Beanstalk
비교 시나리오
Developers Github
Travis CI
Docker
Elastic Beanstalk
비교를 위한 동일 환경
• create-react-app 기본 환경
• dockerfile
• Elastic Beanstalk 도커 플랫폼
환경 구축
1. 레포지토리 생성
2. Git 연결 (HTTPS를 이용하면 Github와 동일)
Code Commit
환경 구축
1. 빌드 프로젝트 생성
2. Buildspec.yml 파일 생성 후 레포지토리에 추가
Code Build
환경 구축
• 소스 공급자: 소스를 받을 주체 (여기선 CodeCommit)
• 레포지토리: 생성한 레포지토리
• 참조 유형: 소스 참조 유형 선택
환경 구축
• 환경 이미지: Codebuild 관리 이미지와 도커 이미지 중 선택
• 환경: Ubuntu: aws/codebuild/standard:4.0 버전
(다른 버전 사용시 오류 多)
• 권한: Code build를 통해서 도커 이미지 빌드시 필요한 권한
환경 구축
• 서비스 역할: 역할 지정
• Buildspec: 빌드시 필요한 명령을 저장하는 파일
환경 구축
# buildspec.yml
Version: 0.2
phases:
pre_build:
commands:
- echo Logging in to Amazon ECR...
- aws ecr get-login-password --region $AWS_DEFAULT_REGION | docker login --username AWS --password-stdin $AWS_ACCOUNT_ID.dkr.ecr.$AWS_DEFAULT_REGION.amazonaws.com
build:
commands:
- echo Build started on `date`
- echo Building the Docker image...
- docker build -t $IMAGE_REPO_NAME:$IMAGE_TAG .
- docker tag $IMAGE_REPO_NAME:$IMAGE_TAG $AWS_ACCOUNT_ID.dkr.ecr.$AWS_DEFAULT_REGION.amazonaws.com/$IMAGE_REPO_NAME:$IMAGE_TAG
post_build:
commands:
- echo Build completed on `date`
- echo Pushing the Docker image...
- docker push $AWS_ACCOUNT_ID.dkr.ecr.$AWS_DEFAULT_REGION.amazonaws.com/$IMAGE_REPO_NAME:$IMAGE_TAG
• 나중에 생성할 AWS ECR 레포지토리의 내용과 IAM 계정의 정보, 소스와 함께 있는 Dockerfile,
저장될 컨테이너의 위치를 작성해야 Codebuild시 해당 설정을 통해 ECR에 docker 이미지를 생성합니다.
환경 구축
Elastic Container Registry
(ECR)
1. 레포지토리 생성
2. Buildspec.yml 파일 ECR 설정 부분 채우기
https://docs.aws.amazon.com/ko_kr/codebuild/latest/userguide/sample-docker.html#sample-docker-docker-hub
환경 구축
• 푸시 명령 보기를 통해서 AWS CLI 인증, 도커 이미
지 build & tag, push 명령을 Buildspec.yml 파일에
지정
환경 구축
Elastic Beanstalk
1. 어플리케이션 및 환경 생성
2. Dockerrun.aws.json 파일 작성
https://docs.aws.amazon.com/ko_kr/elasticbeanstalk/latest/dg/single-container-docker-configuration.html
https://docs.aws.amazon.com/ko_kr/elasticbeanstalk/latest/dg/create_deploy_docker_v2config.html
환경 구축
• Elastic beanstalk에서 Docker 이미지를 통한
배포를 위해 플랫폼을 Docker로 지정하며,
Linux2가 아닌 Linux로 지정해야 버전 오류가 없다.
환경 구축
// dockerrun.aws.json
{
"AWSEBDockerrunVersion": 1,
"containerDefinitions": [
{
"name": "web_container",
"image": "089802069060.dkr.ecr.us-east-1.amazonaws.com/web_container:latest"
}
]
}
• Dockercompose를 사용하지 않는 경우에는 꼭 작성해야 하는 설정 파일
• v1: 도커 컨테이너
• v2: 멀티 컨테이너
• v3: 프라이빗 레포지토리 사용하여 S3 버킷 이용
환경 구축
Code Pipeline
1. 지금까지 설정을 이용하여 Pipeline 작성
환경 구축
소스 빌드 배포
AWS CodeCommit AWS CodeBuild AWS Elastic Beanstalk
비교 환경 구축
1. 레포지토리 작성
Github
비교 환경 구축
1. 도커 환경 실행
Docker
비교 환경 구축
1. Github 레포지토리 연결
2. .travis.yml 파일 작성
3. AWS IAM 사용자 연결 (보안)
Travis CI
비교 환경 구축
sudo: required
language: generic
services:
- docker
before_install:
- echo "start creating an image with dockerfile"
- docker build -t lee20h/docker-travis-aws-config .
script:
- docker run -e CI=true lee20h/docker-travis-aws-config npm run test -- --coverage
deploy:
edge: true
provider: elasticbeanstalk
region: "us-east-1"
app: "web deploy with docker"
env: "WebDeployWithDocker-env"
bucket_name: "elasticbeanstalk-us-east-1-089802069060"
bucket_path: "web deploy with docker"
on:
branch: master
access_key_id: $AWS_ACCESS_KEY
secret_access_key: $AWS_SECRET_ACCESS_KEY
• .travis.yml 파일 작성
• Dockerfile 이미지 build 후 push
• 배포시에 AWS 설정 작성
비교 환경 구축
• IAM 사용자 액세스 키 등록
• Github에서 사용시 대부분 노출되므로 사용 권장
비교 환경 구축
소스 빌드 배포
Github Travis CI AWS Elastic Beanstalk
배포 테스트
• 소스: 즉시
• 빌드: 약 3분
• 배포: 약 6분
• 결과:
비교 배포 테스트
• 소스: 즉시
• 대기: 약 10분
• 빌드: 약 2분
• 배포: 약 8분
• 결과:
비교 결과
• 소요시간 비교
비교군 AWS DevOps 비교 환경
소스 즉시 즉시
빌드 약 3분 약 2분
배포 약 6분 약 8분
• 언뜻 보면 비슷한 수치이나, Travis CI의 경우 빌드를 위한 Travis Queue에 들어가는 시간이
약 10분 소요되어 총 약 20분 소요
• 따라서 Travis CI의 Queue가 대기 중이면 비슷한 성능
• 허나, 대부분 Queue 진입시간은 약 10분 소요
비교 결과
• 설정 필요한 파일
비교군 AWS DevOps 비교 환경
dockerfile O O
dockerrun.aws.json O X
.travis.yml X O
buildspec.yml O X
• AWS 개발자 도구를 사용한 배포는 유기적인 연결을 위해 여러 설정파일이 필요함
• 그에 반해 Travis CI를 사용한 배포는 Travis CI 설정 파일만 필요
비교 결과
• 과정 시각화
비교군 AWS DevOps 비교 환경
소스 O O
빌드 O O
배포 O X
• AWS DevOps로 배포시엔 모든 과정이 시각화로 오류 부분을 바로 체크 가능
• Travis CI는 빌드까지 시각화 되어있지만 배포는 Elastic Beanstalk에서 이뤄지므로
배포까지 책임지지 않음
결론
• 설정하는 시간은 AWS DevOps가 더 소요되며 체크 해야 할 부분이 많다.
• Commit 이후 배포까지의 속도는 AWS DevOps가 더 빠르다.
• 에러 검출과 시각화의 경우 AWS DevOps가 더 편리하다.
• Travis CI의 경우에는 무료인 만큼 속도가 느리나, 설정이 편리하다.
• 프로젝트가 AWS 다른 서비스와 접목이 이뤄지거나, 유지보수에 중점을 준다면
AWS DevOps를 사용하는 것이 장기적으로 도움이 된다.

More Related Content

What's hot

AWS 클라우드 기반 확장성 높은 천만 사용자 웹 서비스 만들기 - 윤석찬
AWS 클라우드 기반 확장성 높은 천만 사용자 웹 서비스 만들기 - 윤석찬AWS 클라우드 기반 확장성 높은 천만 사용자 웹 서비스 만들기 - 윤석찬
AWS 클라우드 기반 확장성 높은 천만 사용자 웹 서비스 만들기 - 윤석찬
Amazon Web Services Korea
 
Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링
Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링
Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링
Amazon Web Services Korea
 
쿠알못이 Amazon EKS로 안정적인 서비스 운영하기 - 최용호(넥슨코리아) :: AWS Community Day 2020
쿠알못이 Amazon EKS로 안정적인 서비스 운영하기 - 최용호(넥슨코리아) :: AWS Community Day 2020쿠알못이 Amazon EKS로 안정적인 서비스 운영하기 - 최용호(넥슨코리아) :: AWS Community Day 2020
쿠알못이 Amazon EKS로 안정적인 서비스 운영하기 - 최용호(넥슨코리아) :: AWS Community Day 2020
AWSKRUG - AWS한국사용자모임
 
AWS Summit Seoul 2023 | 서버리스, 이제는 데이터 분석에서 활용해요!
AWS Summit Seoul 2023 | 서버리스, 이제는 데이터 분석에서 활용해요!AWS Summit Seoul 2023 | 서버리스, 이제는 데이터 분석에서 활용해요!
AWS Summit Seoul 2023 | 서버리스, 이제는 데이터 분석에서 활용해요!
Amazon Web Services Korea
 
KB국민은행은 시작했다 -  쉽고 빠른 클라우드 거버넌스 적용 전략 - 강병억 AWS 솔루션즈 아키텍트 / 장강홍 클라우드플랫폼단 차장, ...
KB국민은행은 시작했다 -  쉽고 빠른 클라우드 거버넌스 적용 전략 - 강병억 AWS 솔루션즈 아키텍트 / 장강홍 클라우드플랫폼단 차장, ...KB국민은행은 시작했다 -  쉽고 빠른 클라우드 거버넌스 적용 전략 - 강병억 AWS 솔루션즈 아키텍트 / 장강홍 클라우드플랫폼단 차장, ...
KB국민은행은 시작했다 -  쉽고 빠른 클라우드 거버넌스 적용 전략 - 강병억 AWS 솔루션즈 아키텍트 / 장강홍 클라우드플랫폼단 차장, ...
Amazon Web Services Korea
 
금융 회사를 위한 클라우드 이용 가이드 – 신은수 AWS 솔루션즈 아키텍트, 김호영 AWS 정책협력 담당:: AWS Cloud Week ...
금융 회사를 위한 클라우드 이용 가이드 –  신은수 AWS 솔루션즈 아키텍트, 김호영 AWS 정책협력 담당:: AWS Cloud Week ...금융 회사를 위한 클라우드 이용 가이드 –  신은수 AWS 솔루션즈 아키텍트, 김호영 AWS 정책협력 담당:: AWS Cloud Week ...
금융 회사를 위한 클라우드 이용 가이드 – 신은수 AWS 솔루션즈 아키텍트, 김호영 AWS 정책협력 담당:: AWS Cloud Week ...
Amazon Web Services Korea
 
AWS Blackbelt 2015シリーズ AWS Lambda
AWS Blackbelt 2015シリーズ AWS LambdaAWS Blackbelt 2015シリーズ AWS Lambda
AWS Blackbelt 2015シリーズ AWS Lambda
Amazon Web Services Japan
 
Amazon VPC와 ELB/Direct Connect/VPN 알아보기 - 김세준, AWS 솔루션즈 아키텍트
Amazon VPC와 ELB/Direct Connect/VPN 알아보기 - 김세준, AWS 솔루션즈 아키텍트Amazon VPC와 ELB/Direct Connect/VPN 알아보기 - 김세준, AWS 솔루션즈 아키텍트
Amazon VPC와 ELB/Direct Connect/VPN 알아보기 - 김세준, AWS 솔루션즈 아키텍트
Amazon Web Services Korea
 
AWS Black Belt Online Seminar 2017 AWS Storage Gateway
AWS Black Belt Online Seminar 2017 AWS Storage GatewayAWS Black Belt Online Seminar 2017 AWS Storage Gateway
AWS Black Belt Online Seminar 2017 AWS Storage Gateway
Amazon Web Services Japan
 
AWS Summit Seoul 2015 -CloudFront와 Route53 기반 콘텐츠 배포 전략 (GS네오텍-박정수)
AWS Summit Seoul 2015 -CloudFront와 Route53 기반 콘텐츠 배포 전략 (GS네오텍-박정수)AWS Summit Seoul 2015 -CloudFront와 Route53 기반 콘텐츠 배포 전략 (GS네오텍-박정수)
AWS Summit Seoul 2015 -CloudFront와 Route53 기반 콘텐츠 배포 전략 (GS네오텍-박정수)
Amazon Web Services Korea
 
AWS Support에서 제안하는 멋진 클라우드 아키텍처 디자인::조성열:: AWS Summit Seoul 2018
AWS Support에서 제안하는 멋진 클라우드 아키텍처 디자인::조성열:: AWS Summit Seoul 2018AWS Support에서 제안하는 멋진 클라우드 아키텍처 디자인::조성열:: AWS Summit Seoul 2018
AWS Support에서 제안하는 멋진 클라우드 아키텍처 디자인::조성열:: AWS Summit Seoul 2018Amazon Web Services Korea
 
AWS CLOUD 2017 - AWS 기반 하이브리드 클라우드 환경 구성 전략 (김용우 솔루션즈 아키텍트)
AWS CLOUD 2017 - AWS 기반 하이브리드 클라우드 환경 구성 전략 (김용우 솔루션즈 아키텍트)AWS CLOUD 2017 - AWS 기반 하이브리드 클라우드 환경 구성 전략 (김용우 솔루션즈 아키텍트)
AWS CLOUD 2017 - AWS 기반 하이브리드 클라우드 환경 구성 전략 (김용우 솔루션즈 아키텍트)
Amazon Web Services Korea
 
천만 사용자를 위한 AWS 클라우드 아키텍쳐 진화하기- AWS Summit Seoul 2017
천만 사용자를 위한 AWS 클라우드 아키텍쳐 진화하기- AWS Summit Seoul 2017천만 사용자를 위한 AWS 클라우드 아키텍쳐 진화하기- AWS Summit Seoul 2017
천만 사용자를 위한 AWS 클라우드 아키텍쳐 진화하기- AWS Summit Seoul 2017
Amazon Web Services Korea
 
AWS 비용, 어떻게 사용하고 계신가요? - 비용 최적화를 위한 AWS의 다양한 툴 알아보기 – 허경원, AWS 클라우드 파이낸셜 매니저:...
AWS 비용, 어떻게 사용하고 계신가요? - 비용 최적화를 위한 AWS의 다양한 툴 알아보기 – 허경원, AWS 클라우드 파이낸셜 매니저:...AWS 비용, 어떻게 사용하고 계신가요? - 비용 최적화를 위한 AWS의 다양한 툴 알아보기 – 허경원, AWS 클라우드 파이낸셜 매니저:...
AWS 비용, 어떻게 사용하고 계신가요? - 비용 최적화를 위한 AWS의 다양한 툴 알아보기 – 허경원, AWS 클라우드 파이낸셜 매니저:...
Amazon Web Services Korea
 
금융권 최신 AWS 도입 사례 총정리 – 신한 제주 은행, KB손해보험 사례를 중심으로 - 지성국 사업 개발 담당 이사, AWS / 정을용...
금융권 최신 AWS 도입 사례 총정리 – 신한 제주 은행, KB손해보험 사례를 중심으로 - 지성국 사업 개발 담당 이사, AWS / 정을용...금융권 최신 AWS 도입 사례 총정리 – 신한 제주 은행, KB손해보험 사례를 중심으로 - 지성국 사업 개발 담당 이사, AWS / 정을용...
금융권 최신 AWS 도입 사례 총정리 – 신한 제주 은행, KB손해보험 사례를 중심으로 - 지성국 사업 개발 담당 이사, AWS / 정을용...
Amazon Web Services Korea
 
고객의 플랫폼/서비스를 개선한 국내 사례 살펴보기 – 장준성 AWS 솔루션즈 아키텍트, 강산아 NDREAM 팀장, 송영호 야놀자 매니저, ...
고객의 플랫폼/서비스를 개선한 국내 사례 살펴보기 – 장준성 AWS 솔루션즈 아키텍트, 강산아 NDREAM 팀장, 송영호 야놀자 매니저, ...고객의 플랫폼/서비스를 개선한 국내 사례 살펴보기 – 장준성 AWS 솔루션즈 아키텍트, 강산아 NDREAM 팀장, 송영호 야놀자 매니저, ...
고객의 플랫폼/서비스를 개선한 국내 사례 살펴보기 – 장준성 AWS 솔루션즈 아키텍트, 강산아 NDREAM 팀장, 송영호 야놀자 매니저, ...
Amazon Web Services Korea
 
AWS를 활용한 리테일,이커머스 워크로드와 온라인 서비스 이관 사례::이동열, 임혁용:: AWS Summit Seoul 2018
AWS를 활용한 리테일,이커머스 워크로드와 온라인 서비스 이관 사례::이동열, 임혁용:: AWS Summit Seoul 2018 AWS를 활용한 리테일,이커머스 워크로드와 온라인 서비스 이관 사례::이동열, 임혁용:: AWS Summit Seoul 2018
AWS를 활용한 리테일,이커머스 워크로드와 온라인 서비스 이관 사례::이동열, 임혁용:: AWS Summit Seoul 2018 Amazon Web Services Korea
 
Amazon EKS로 간단한 웹 애플리케이션 구축하기 - 김주영 (AWS) :: AWS Community Day Online 2021
Amazon EKS로 간단한 웹 애플리케이션 구축하기 - 김주영 (AWS) :: AWS Community Day Online 2021Amazon EKS로 간단한 웹 애플리케이션 구축하기 - 김주영 (AWS) :: AWS Community Day Online 2021
Amazon EKS로 간단한 웹 애플리케이션 구축하기 - 김주영 (AWS) :: AWS Community Day Online 2021
AWSKRUG - AWS한국사용자모임
 
아키텍처 현대화 분야 신규 서비스 - 주성식, AWS 솔루션즈 아키텍트 :: AWS re:Invent re:Cap 2021
아키텍처 현대화 분야 신규 서비스 - 주성식, AWS 솔루션즈 아키텍트 :: AWS re:Invent re:Cap 2021아키텍처 현대화 분야 신규 서비스 - 주성식, AWS 솔루션즈 아키텍트 :: AWS re:Invent re:Cap 2021
아키텍처 현대화 분야 신규 서비스 - 주성식, AWS 솔루션즈 아키텍트 :: AWS re:Invent re:Cap 2021
Amazon Web Services Korea
 
클라우드로 데이터 센터 확장하기 : 하이브리드 환경을 위한 연결 옵션 및 고려사항::강동환::AWS Summit Seoul 2018
클라우드로 데이터 센터 확장하기 : 하이브리드 환경을 위한 연결 옵션 및 고려사항::강동환::AWS Summit Seoul 2018 클라우드로 데이터 센터 확장하기 : 하이브리드 환경을 위한 연결 옵션 및 고려사항::강동환::AWS Summit Seoul 2018
클라우드로 데이터 센터 확장하기 : 하이브리드 환경을 위한 연결 옵션 및 고려사항::강동환::AWS Summit Seoul 2018 Amazon Web Services Korea
 

What's hot (20)

AWS 클라우드 기반 확장성 높은 천만 사용자 웹 서비스 만들기 - 윤석찬
AWS 클라우드 기반 확장성 높은 천만 사용자 웹 서비스 만들기 - 윤석찬AWS 클라우드 기반 확장성 높은 천만 사용자 웹 서비스 만들기 - 윤석찬
AWS 클라우드 기반 확장성 높은 천만 사용자 웹 서비스 만들기 - 윤석찬
 
Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링
Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링
Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링
 
쿠알못이 Amazon EKS로 안정적인 서비스 운영하기 - 최용호(넥슨코리아) :: AWS Community Day 2020
쿠알못이 Amazon EKS로 안정적인 서비스 운영하기 - 최용호(넥슨코리아) :: AWS Community Day 2020쿠알못이 Amazon EKS로 안정적인 서비스 운영하기 - 최용호(넥슨코리아) :: AWS Community Day 2020
쿠알못이 Amazon EKS로 안정적인 서비스 운영하기 - 최용호(넥슨코리아) :: AWS Community Day 2020
 
AWS Summit Seoul 2023 | 서버리스, 이제는 데이터 분석에서 활용해요!
AWS Summit Seoul 2023 | 서버리스, 이제는 데이터 분석에서 활용해요!AWS Summit Seoul 2023 | 서버리스, 이제는 데이터 분석에서 활용해요!
AWS Summit Seoul 2023 | 서버리스, 이제는 데이터 분석에서 활용해요!
 
KB국민은행은 시작했다 -  쉽고 빠른 클라우드 거버넌스 적용 전략 - 강병억 AWS 솔루션즈 아키텍트 / 장강홍 클라우드플랫폼단 차장, ...
KB국민은행은 시작했다 -  쉽고 빠른 클라우드 거버넌스 적용 전략 - 강병억 AWS 솔루션즈 아키텍트 / 장강홍 클라우드플랫폼단 차장, ...KB국민은행은 시작했다 -  쉽고 빠른 클라우드 거버넌스 적용 전략 - 강병억 AWS 솔루션즈 아키텍트 / 장강홍 클라우드플랫폼단 차장, ...
KB국민은행은 시작했다 -  쉽고 빠른 클라우드 거버넌스 적용 전략 - 강병억 AWS 솔루션즈 아키텍트 / 장강홍 클라우드플랫폼단 차장, ...
 
금융 회사를 위한 클라우드 이용 가이드 – 신은수 AWS 솔루션즈 아키텍트, 김호영 AWS 정책협력 담당:: AWS Cloud Week ...
금융 회사를 위한 클라우드 이용 가이드 –  신은수 AWS 솔루션즈 아키텍트, 김호영 AWS 정책협력 담당:: AWS Cloud Week ...금융 회사를 위한 클라우드 이용 가이드 –  신은수 AWS 솔루션즈 아키텍트, 김호영 AWS 정책협력 담당:: AWS Cloud Week ...
금융 회사를 위한 클라우드 이용 가이드 – 신은수 AWS 솔루션즈 아키텍트, 김호영 AWS 정책협력 담당:: AWS Cloud Week ...
 
AWS Blackbelt 2015シリーズ AWS Lambda
AWS Blackbelt 2015シリーズ AWS LambdaAWS Blackbelt 2015シリーズ AWS Lambda
AWS Blackbelt 2015シリーズ AWS Lambda
 
Amazon VPC와 ELB/Direct Connect/VPN 알아보기 - 김세준, AWS 솔루션즈 아키텍트
Amazon VPC와 ELB/Direct Connect/VPN 알아보기 - 김세준, AWS 솔루션즈 아키텍트Amazon VPC와 ELB/Direct Connect/VPN 알아보기 - 김세준, AWS 솔루션즈 아키텍트
Amazon VPC와 ELB/Direct Connect/VPN 알아보기 - 김세준, AWS 솔루션즈 아키텍트
 
AWS Black Belt Online Seminar 2017 AWS Storage Gateway
AWS Black Belt Online Seminar 2017 AWS Storage GatewayAWS Black Belt Online Seminar 2017 AWS Storage Gateway
AWS Black Belt Online Seminar 2017 AWS Storage Gateway
 
AWS Summit Seoul 2015 -CloudFront와 Route53 기반 콘텐츠 배포 전략 (GS네오텍-박정수)
AWS Summit Seoul 2015 -CloudFront와 Route53 기반 콘텐츠 배포 전략 (GS네오텍-박정수)AWS Summit Seoul 2015 -CloudFront와 Route53 기반 콘텐츠 배포 전략 (GS네오텍-박정수)
AWS Summit Seoul 2015 -CloudFront와 Route53 기반 콘텐츠 배포 전략 (GS네오텍-박정수)
 
AWS Support에서 제안하는 멋진 클라우드 아키텍처 디자인::조성열:: AWS Summit Seoul 2018
AWS Support에서 제안하는 멋진 클라우드 아키텍처 디자인::조성열:: AWS Summit Seoul 2018AWS Support에서 제안하는 멋진 클라우드 아키텍처 디자인::조성열:: AWS Summit Seoul 2018
AWS Support에서 제안하는 멋진 클라우드 아키텍처 디자인::조성열:: AWS Summit Seoul 2018
 
AWS CLOUD 2017 - AWS 기반 하이브리드 클라우드 환경 구성 전략 (김용우 솔루션즈 아키텍트)
AWS CLOUD 2017 - AWS 기반 하이브리드 클라우드 환경 구성 전략 (김용우 솔루션즈 아키텍트)AWS CLOUD 2017 - AWS 기반 하이브리드 클라우드 환경 구성 전략 (김용우 솔루션즈 아키텍트)
AWS CLOUD 2017 - AWS 기반 하이브리드 클라우드 환경 구성 전략 (김용우 솔루션즈 아키텍트)
 
천만 사용자를 위한 AWS 클라우드 아키텍쳐 진화하기- AWS Summit Seoul 2017
천만 사용자를 위한 AWS 클라우드 아키텍쳐 진화하기- AWS Summit Seoul 2017천만 사용자를 위한 AWS 클라우드 아키텍쳐 진화하기- AWS Summit Seoul 2017
천만 사용자를 위한 AWS 클라우드 아키텍쳐 진화하기- AWS Summit Seoul 2017
 
AWS 비용, 어떻게 사용하고 계신가요? - 비용 최적화를 위한 AWS의 다양한 툴 알아보기 – 허경원, AWS 클라우드 파이낸셜 매니저:...
AWS 비용, 어떻게 사용하고 계신가요? - 비용 최적화를 위한 AWS의 다양한 툴 알아보기 – 허경원, AWS 클라우드 파이낸셜 매니저:...AWS 비용, 어떻게 사용하고 계신가요? - 비용 최적화를 위한 AWS의 다양한 툴 알아보기 – 허경원, AWS 클라우드 파이낸셜 매니저:...
AWS 비용, 어떻게 사용하고 계신가요? - 비용 최적화를 위한 AWS의 다양한 툴 알아보기 – 허경원, AWS 클라우드 파이낸셜 매니저:...
 
금융권 최신 AWS 도입 사례 총정리 – 신한 제주 은행, KB손해보험 사례를 중심으로 - 지성국 사업 개발 담당 이사, AWS / 정을용...
금융권 최신 AWS 도입 사례 총정리 – 신한 제주 은행, KB손해보험 사례를 중심으로 - 지성국 사업 개발 담당 이사, AWS / 정을용...금융권 최신 AWS 도입 사례 총정리 – 신한 제주 은행, KB손해보험 사례를 중심으로 - 지성국 사업 개발 담당 이사, AWS / 정을용...
금융권 최신 AWS 도입 사례 총정리 – 신한 제주 은행, KB손해보험 사례를 중심으로 - 지성국 사업 개발 담당 이사, AWS / 정을용...
 
고객의 플랫폼/서비스를 개선한 국내 사례 살펴보기 – 장준성 AWS 솔루션즈 아키텍트, 강산아 NDREAM 팀장, 송영호 야놀자 매니저, ...
고객의 플랫폼/서비스를 개선한 국내 사례 살펴보기 – 장준성 AWS 솔루션즈 아키텍트, 강산아 NDREAM 팀장, 송영호 야놀자 매니저, ...고객의 플랫폼/서비스를 개선한 국내 사례 살펴보기 – 장준성 AWS 솔루션즈 아키텍트, 강산아 NDREAM 팀장, 송영호 야놀자 매니저, ...
고객의 플랫폼/서비스를 개선한 국내 사례 살펴보기 – 장준성 AWS 솔루션즈 아키텍트, 강산아 NDREAM 팀장, 송영호 야놀자 매니저, ...
 
AWS를 활용한 리테일,이커머스 워크로드와 온라인 서비스 이관 사례::이동열, 임혁용:: AWS Summit Seoul 2018
AWS를 활용한 리테일,이커머스 워크로드와 온라인 서비스 이관 사례::이동열, 임혁용:: AWS Summit Seoul 2018 AWS를 활용한 리테일,이커머스 워크로드와 온라인 서비스 이관 사례::이동열, 임혁용:: AWS Summit Seoul 2018
AWS를 활용한 리테일,이커머스 워크로드와 온라인 서비스 이관 사례::이동열, 임혁용:: AWS Summit Seoul 2018
 
Amazon EKS로 간단한 웹 애플리케이션 구축하기 - 김주영 (AWS) :: AWS Community Day Online 2021
Amazon EKS로 간단한 웹 애플리케이션 구축하기 - 김주영 (AWS) :: AWS Community Day Online 2021Amazon EKS로 간단한 웹 애플리케이션 구축하기 - 김주영 (AWS) :: AWS Community Day Online 2021
Amazon EKS로 간단한 웹 애플리케이션 구축하기 - 김주영 (AWS) :: AWS Community Day Online 2021
 
아키텍처 현대화 분야 신규 서비스 - 주성식, AWS 솔루션즈 아키텍트 :: AWS re:Invent re:Cap 2021
아키텍처 현대화 분야 신규 서비스 - 주성식, AWS 솔루션즈 아키텍트 :: AWS re:Invent re:Cap 2021아키텍처 현대화 분야 신규 서비스 - 주성식, AWS 솔루션즈 아키텍트 :: AWS re:Invent re:Cap 2021
아키텍처 현대화 분야 신규 서비스 - 주성식, AWS 솔루션즈 아키텍트 :: AWS re:Invent re:Cap 2021
 
클라우드로 데이터 센터 확장하기 : 하이브리드 환경을 위한 연결 옵션 및 고려사항::강동환::AWS Summit Seoul 2018
클라우드로 데이터 센터 확장하기 : 하이브리드 환경을 위한 연결 옵션 및 고려사항::강동환::AWS Summit Seoul 2018 클라우드로 데이터 센터 확장하기 : 하이브리드 환경을 위한 연결 옵션 및 고려사항::강동환::AWS Summit Seoul 2018
클라우드로 데이터 센터 확장하기 : 하이브리드 환경을 위한 연결 옵션 및 고려사항::강동환::AWS Summit Seoul 2018
 

Similar to AWS DevOps와 ECR을 통한 Elastic Beanstalk 배포 환경 구축 및 타 환경과의 비교

AWS Fargate와 Amazon ECS를 사용한 CI/CD 베스트 프랙티스 - 유재석, AWS 솔루션즈 아키텍트 :: AWS Build...
AWS Fargate와 Amazon ECS를 사용한 CI/CD 베스트 프랙티스 - 유재석, AWS 솔루션즈 아키텍트 :: AWS Build...AWS Fargate와 Amazon ECS를 사용한 CI/CD 베스트 프랙티스 - 유재석, AWS 솔루션즈 아키텍트 :: AWS Build...
AWS Fargate와 Amazon ECS를 사용한 CI/CD 베스트 프랙티스 - 유재석, AWS 솔루션즈 아키텍트 :: AWS Build...
Amazon Web Services Korea
 
DevOps Study
DevOps StudyDevOps Study
DevOps Study
상환 이
 
[AWS Dev Day] 앱 현대화 | 코드 기반 인프라(IaC)를 활용한 현대 애플리케이션 개발 가속화, 우리도 할 수 있어요 - 김필중...
[AWS Dev Day] 앱 현대화 | 코드 기반 인프라(IaC)를 활용한 현대 애플리케이션 개발 가속화, 우리도 할 수 있어요 - 김필중...[AWS Dev Day] 앱 현대화 | 코드 기반 인프라(IaC)를 활용한 현대 애플리케이션 개발 가속화, 우리도 할 수 있어요 - 김필중...
[AWS Dev Day] 앱 현대화 | 코드 기반 인프라(IaC)를 활용한 현대 애플리케이션 개발 가속화, 우리도 할 수 있어요 - 김필중...
Amazon Web Services Korea
 
AWS Fargate와 Amazon ECS를 활용한 CI/CD 모범사례 - 유재석, AWS 솔루션즈 아키텍트 :: AWS Game Mast...
AWS Fargate와 Amazon ECS를 활용한 CI/CD 모범사례 - 유재석, AWS 솔루션즈 아키텍트 :: AWS Game Mast...AWS Fargate와 Amazon ECS를 활용한 CI/CD 모범사례 - 유재석, AWS 솔루션즈 아키텍트 :: AWS Game Mast...
AWS Fargate와 Amazon ECS를 활용한 CI/CD 모범사례 - 유재석, AWS 솔루션즈 아키텍트 :: AWS Game Mast...
Amazon Web Services Korea
 
클라이드 네이티브 기반 Twelve Factor 앱 개발 - 윤석찬, AWS 테크에반젤리스트 :: AWS Summit Online Kore...
클라이드 네이티브 기반 Twelve Factor 앱 개발 - 윤석찬, AWS 테크에반젤리스트 :: AWS Summit Online Kore...클라이드 네이티브 기반 Twelve Factor 앱 개발 - 윤석찬, AWS 테크에반젤리스트 :: AWS Summit Online Kore...
클라이드 네이티브 기반 Twelve Factor 앱 개발 - 윤석찬, AWS 테크에반젤리스트 :: AWS Summit Online Kore...
Amazon Web Services Korea
 
AWS 관리형 서비스를 활용하여 Kubernetes 를 위한 Devops 환경 구축하기 - 김광영, AWS솔루션즈 아키텍트:: AWS S...
AWS 관리형 서비스를 활용하여 Kubernetes 를 위한 Devops 환경 구축하기 - 김광영, AWS솔루션즈 아키텍트::  AWS S...AWS 관리형 서비스를 활용하여 Kubernetes 를 위한 Devops 환경 구축하기 - 김광영, AWS솔루션즈 아키텍트::  AWS S...
AWS 관리형 서비스를 활용하여 Kubernetes 를 위한 Devops 환경 구축하기 - 김광영, AWS솔루션즈 아키텍트:: AWS S...
Amazon Web Services Korea
 
AWS Code 서비스 특집 - 아마존 DevOps와 CodeDeploy, CodePipeline (윤석찬)
AWS Code 서비스 특집 - 아마존 DevOps와 CodeDeploy, CodePipeline (윤석찬)AWS Code 서비스 특집 - 아마존 DevOps와 CodeDeploy, CodePipeline (윤석찬)
AWS Code 서비스 특집 - 아마존 DevOps와 CodeDeploy, CodePipeline (윤석찬)
Amazon Web Services Korea
 
Amazon EKS를 위한 AWS CDK와 CDK8s 활용법 - 염지원, 김광영 AWS 솔루션즈 아키텍트 :: AWS Summit Seou...
Amazon EKS를 위한 AWS CDK와 CDK8s 활용법 - 염지원, 김광영 AWS 솔루션즈 아키텍트 :: AWS Summit Seou...Amazon EKS를 위한 AWS CDK와 CDK8s 활용법 - 염지원, 김광영 AWS 솔루션즈 아키텍트 :: AWS Summit Seou...
Amazon EKS를 위한 AWS CDK와 CDK8s 활용법 - 염지원, 김광영 AWS 솔루션즈 아키텍트 :: AWS Summit Seou...
Amazon Web Services Korea
 
10월 웨비나 - AWS에서 MS Windows 운영, 관리 및 개발 손쉽게 하기 (박철수 솔루션즈 아키텍트)
10월 웨비나 - AWS에서 MS Windows 운영, 관리 및 개발 손쉽게 하기 (박철수 솔루션즈 아키텍트)10월 웨비나 - AWS에서 MS Windows 운영, 관리 및 개발 손쉽게 하기 (박철수 솔루션즈 아키텍트)
10월 웨비나 - AWS에서 MS Windows 운영, 관리 및 개발 손쉽게 하기 (박철수 솔루션즈 아키텍트)
Amazon Web Services Korea
 
효과적인 데브옵스를 위한 AWS 개발 도구 활용하기 - AWS Summit Seoul 2017
효과적인 데브옵스를 위한 AWS 개발 도구 활용하기 - AWS Summit Seoul 2017효과적인 데브옵스를 위한 AWS 개발 도구 활용하기 - AWS Summit Seoul 2017
효과적인 데브옵스를 위한 AWS 개발 도구 활용하기 - AWS Summit Seoul 2017
Amazon Web Services Korea
 
DevOps (AWS, Docker, Ansible, Jenkins)
DevOps (AWS, Docker, Ansible, Jenkins)DevOps (AWS, Docker, Ansible, Jenkins)
DevOps (AWS, Docker, Ansible, Jenkins)
완철 김
 
인프라 자동 배포를 위한 AWS CloudFormation 고급 활용법 - AWS Summit Seoul 2017
인프라 자동 배포를 위한 AWS CloudFormation 고급 활용법 - AWS Summit Seoul 2017인프라 자동 배포를 위한 AWS CloudFormation 고급 활용법 - AWS Summit Seoul 2017
인프라 자동 배포를 위한 AWS CloudFormation 고급 활용법 - AWS Summit Seoul 2017
Amazon Web Services Korea
 
데브옵스(DevOps) 문화 모범 사례와 구현 도구 살펴보기 – 박선준 :: AWS Builders Online Series
데브옵스(DevOps) 문화 모범 사례와 구현 도구 살펴보기 – 박선준 :: AWS Builders Online Series데브옵스(DevOps) 문화 모범 사례와 구현 도구 살펴보기 – 박선준 :: AWS Builders Online Series
데브옵스(DevOps) 문화 모범 사례와 구현 도구 살펴보기 – 박선준 :: AWS Builders Online Series
Amazon Web Services Korea
 
On-Premise 기반서비스 클라우드 전환기 -DevSecOps 도입을통한 유연한 서비스 개발 및 운영::박준상::AWS Summit S...
On-Premise 기반서비스 클라우드 전환기 -DevSecOps 도입을통한 유연한 서비스 개발 및 운영::박준상::AWS Summit S...On-Premise 기반서비스 클라우드 전환기 -DevSecOps 도입을통한 유연한 서비스 개발 및 운영::박준상::AWS Summit S...
On-Premise 기반서비스 클라우드 전환기 -DevSecOps 도입을통한 유연한 서비스 개발 및 운영::박준상::AWS Summit S...Amazon Web Services Korea
 
AWS 상에서 Microsoft 워크로드 구축 및 운영 - AWS Summit Seoul 2017
AWS 상에서 Microsoft 워크로드 구축 및 운영 - AWS Summit Seoul 2017AWS 상에서 Microsoft 워크로드 구축 및 운영 - AWS Summit Seoul 2017
AWS 상에서 Microsoft 워크로드 구축 및 운영 - AWS Summit Seoul 2017
Amazon Web Services Korea
 
Aws serverless services
Aws serverless servicesAws serverless services
Aws serverless services
Daniel Jung
 
On-Premise 기반서비스 클라우드 전환기 -DevSecOps 도입을통한 유연한 서비스 개발 및 운영::박준상::AWS Summit S...
On-Premise 기반서비스 클라우드 전환기 -DevSecOps 도입을통한 유연한 서비스 개발 및 운영::박준상::AWS Summit S...On-Premise 기반서비스 클라우드 전환기 -DevSecOps 도입을통한 유연한 서비스 개발 및 운영::박준상::AWS Summit S...
On-Premise 기반서비스 클라우드 전환기 -DevSecOps 도입을통한 유연한 서비스 개발 및 운영::박준상::AWS Summit S...Amazon Web Services Korea
 
코드로 인프라 관리하기 - 자동화 툴 소개
코드로 인프라 관리하기 - 자동화 툴 소개코드로 인프라 관리하기 - 자동화 툴 소개
코드로 인프라 관리하기 - 자동화 툴 소개
태준 문
 
introduction of IaC using CloudFormation
introduction of IaC using CloudFormationintroduction of IaC using CloudFormation
introduction of IaC using CloudFormation
HongkiYim
 
DevOps를 위한 AWS 서비스 및 개발도구 -김상필 솔루션아키텍트 :: AWS 파트너 테크시프트 세미나
DevOps를 위한 AWS 서비스 및 개발도구  -김상필 솔루션아키텍트 :: AWS 파트너 테크시프트 세미나 DevOps를 위한 AWS 서비스 및 개발도구  -김상필 솔루션아키텍트 :: AWS 파트너 테크시프트 세미나
DevOps를 위한 AWS 서비스 및 개발도구 -김상필 솔루션아키텍트 :: AWS 파트너 테크시프트 세미나
Amazon Web Services Korea
 

Similar to AWS DevOps와 ECR을 통한 Elastic Beanstalk 배포 환경 구축 및 타 환경과의 비교 (20)

AWS Fargate와 Amazon ECS를 사용한 CI/CD 베스트 프랙티스 - 유재석, AWS 솔루션즈 아키텍트 :: AWS Build...
AWS Fargate와 Amazon ECS를 사용한 CI/CD 베스트 프랙티스 - 유재석, AWS 솔루션즈 아키텍트 :: AWS Build...AWS Fargate와 Amazon ECS를 사용한 CI/CD 베스트 프랙티스 - 유재석, AWS 솔루션즈 아키텍트 :: AWS Build...
AWS Fargate와 Amazon ECS를 사용한 CI/CD 베스트 프랙티스 - 유재석, AWS 솔루션즈 아키텍트 :: AWS Build...
 
DevOps Study
DevOps StudyDevOps Study
DevOps Study
 
[AWS Dev Day] 앱 현대화 | 코드 기반 인프라(IaC)를 활용한 현대 애플리케이션 개발 가속화, 우리도 할 수 있어요 - 김필중...
[AWS Dev Day] 앱 현대화 | 코드 기반 인프라(IaC)를 활용한 현대 애플리케이션 개발 가속화, 우리도 할 수 있어요 - 김필중...[AWS Dev Day] 앱 현대화 | 코드 기반 인프라(IaC)를 활용한 현대 애플리케이션 개발 가속화, 우리도 할 수 있어요 - 김필중...
[AWS Dev Day] 앱 현대화 | 코드 기반 인프라(IaC)를 활용한 현대 애플리케이션 개발 가속화, 우리도 할 수 있어요 - 김필중...
 
AWS Fargate와 Amazon ECS를 활용한 CI/CD 모범사례 - 유재석, AWS 솔루션즈 아키텍트 :: AWS Game Mast...
AWS Fargate와 Amazon ECS를 활용한 CI/CD 모범사례 - 유재석, AWS 솔루션즈 아키텍트 :: AWS Game Mast...AWS Fargate와 Amazon ECS를 활용한 CI/CD 모범사례 - 유재석, AWS 솔루션즈 아키텍트 :: AWS Game Mast...
AWS Fargate와 Amazon ECS를 활용한 CI/CD 모범사례 - 유재석, AWS 솔루션즈 아키텍트 :: AWS Game Mast...
 
클라이드 네이티브 기반 Twelve Factor 앱 개발 - 윤석찬, AWS 테크에반젤리스트 :: AWS Summit Online Kore...
클라이드 네이티브 기반 Twelve Factor 앱 개발 - 윤석찬, AWS 테크에반젤리스트 :: AWS Summit Online Kore...클라이드 네이티브 기반 Twelve Factor 앱 개발 - 윤석찬, AWS 테크에반젤리스트 :: AWS Summit Online Kore...
클라이드 네이티브 기반 Twelve Factor 앱 개발 - 윤석찬, AWS 테크에반젤리스트 :: AWS Summit Online Kore...
 
AWS 관리형 서비스를 활용하여 Kubernetes 를 위한 Devops 환경 구축하기 - 김광영, AWS솔루션즈 아키텍트:: AWS S...
AWS 관리형 서비스를 활용하여 Kubernetes 를 위한 Devops 환경 구축하기 - 김광영, AWS솔루션즈 아키텍트::  AWS S...AWS 관리형 서비스를 활용하여 Kubernetes 를 위한 Devops 환경 구축하기 - 김광영, AWS솔루션즈 아키텍트::  AWS S...
AWS 관리형 서비스를 활용하여 Kubernetes 를 위한 Devops 환경 구축하기 - 김광영, AWS솔루션즈 아키텍트:: AWS S...
 
AWS Code 서비스 특집 - 아마존 DevOps와 CodeDeploy, CodePipeline (윤석찬)
AWS Code 서비스 특집 - 아마존 DevOps와 CodeDeploy, CodePipeline (윤석찬)AWS Code 서비스 특집 - 아마존 DevOps와 CodeDeploy, CodePipeline (윤석찬)
AWS Code 서비스 특집 - 아마존 DevOps와 CodeDeploy, CodePipeline (윤석찬)
 
Amazon EKS를 위한 AWS CDK와 CDK8s 활용법 - 염지원, 김광영 AWS 솔루션즈 아키텍트 :: AWS Summit Seou...
Amazon EKS를 위한 AWS CDK와 CDK8s 활용법 - 염지원, 김광영 AWS 솔루션즈 아키텍트 :: AWS Summit Seou...Amazon EKS를 위한 AWS CDK와 CDK8s 활용법 - 염지원, 김광영 AWS 솔루션즈 아키텍트 :: AWS Summit Seou...
Amazon EKS를 위한 AWS CDK와 CDK8s 활용법 - 염지원, 김광영 AWS 솔루션즈 아키텍트 :: AWS Summit Seou...
 
10월 웨비나 - AWS에서 MS Windows 운영, 관리 및 개발 손쉽게 하기 (박철수 솔루션즈 아키텍트)
10월 웨비나 - AWS에서 MS Windows 운영, 관리 및 개발 손쉽게 하기 (박철수 솔루션즈 아키텍트)10월 웨비나 - AWS에서 MS Windows 운영, 관리 및 개발 손쉽게 하기 (박철수 솔루션즈 아키텍트)
10월 웨비나 - AWS에서 MS Windows 운영, 관리 및 개발 손쉽게 하기 (박철수 솔루션즈 아키텍트)
 
효과적인 데브옵스를 위한 AWS 개발 도구 활용하기 - AWS Summit Seoul 2017
효과적인 데브옵스를 위한 AWS 개발 도구 활용하기 - AWS Summit Seoul 2017효과적인 데브옵스를 위한 AWS 개발 도구 활용하기 - AWS Summit Seoul 2017
효과적인 데브옵스를 위한 AWS 개발 도구 활용하기 - AWS Summit Seoul 2017
 
DevOps (AWS, Docker, Ansible, Jenkins)
DevOps (AWS, Docker, Ansible, Jenkins)DevOps (AWS, Docker, Ansible, Jenkins)
DevOps (AWS, Docker, Ansible, Jenkins)
 
인프라 자동 배포를 위한 AWS CloudFormation 고급 활용법 - AWS Summit Seoul 2017
인프라 자동 배포를 위한 AWS CloudFormation 고급 활용법 - AWS Summit Seoul 2017인프라 자동 배포를 위한 AWS CloudFormation 고급 활용법 - AWS Summit Seoul 2017
인프라 자동 배포를 위한 AWS CloudFormation 고급 활용법 - AWS Summit Seoul 2017
 
데브옵스(DevOps) 문화 모범 사례와 구현 도구 살펴보기 – 박선준 :: AWS Builders Online Series
데브옵스(DevOps) 문화 모범 사례와 구현 도구 살펴보기 – 박선준 :: AWS Builders Online Series데브옵스(DevOps) 문화 모범 사례와 구현 도구 살펴보기 – 박선준 :: AWS Builders Online Series
데브옵스(DevOps) 문화 모범 사례와 구현 도구 살펴보기 – 박선준 :: AWS Builders Online Series
 
On-Premise 기반서비스 클라우드 전환기 -DevSecOps 도입을통한 유연한 서비스 개발 및 운영::박준상::AWS Summit S...
On-Premise 기반서비스 클라우드 전환기 -DevSecOps 도입을통한 유연한 서비스 개발 및 운영::박준상::AWS Summit S...On-Premise 기반서비스 클라우드 전환기 -DevSecOps 도입을통한 유연한 서비스 개발 및 운영::박준상::AWS Summit S...
On-Premise 기반서비스 클라우드 전환기 -DevSecOps 도입을통한 유연한 서비스 개발 및 운영::박준상::AWS Summit S...
 
AWS 상에서 Microsoft 워크로드 구축 및 운영 - AWS Summit Seoul 2017
AWS 상에서 Microsoft 워크로드 구축 및 운영 - AWS Summit Seoul 2017AWS 상에서 Microsoft 워크로드 구축 및 운영 - AWS Summit Seoul 2017
AWS 상에서 Microsoft 워크로드 구축 및 운영 - AWS Summit Seoul 2017
 
Aws serverless services
Aws serverless servicesAws serverless services
Aws serverless services
 
On-Premise 기반서비스 클라우드 전환기 -DevSecOps 도입을통한 유연한 서비스 개발 및 운영::박준상::AWS Summit S...
On-Premise 기반서비스 클라우드 전환기 -DevSecOps 도입을통한 유연한 서비스 개발 및 운영::박준상::AWS Summit S...On-Premise 기반서비스 클라우드 전환기 -DevSecOps 도입을통한 유연한 서비스 개발 및 운영::박준상::AWS Summit S...
On-Premise 기반서비스 클라우드 전환기 -DevSecOps 도입을통한 유연한 서비스 개발 및 운영::박준상::AWS Summit S...
 
코드로 인프라 관리하기 - 자동화 툴 소개
코드로 인프라 관리하기 - 자동화 툴 소개코드로 인프라 관리하기 - 자동화 툴 소개
코드로 인프라 관리하기 - 자동화 툴 소개
 
introduction of IaC using CloudFormation
introduction of IaC using CloudFormationintroduction of IaC using CloudFormation
introduction of IaC using CloudFormation
 
DevOps를 위한 AWS 서비스 및 개발도구 -김상필 솔루션아키텍트 :: AWS 파트너 테크시프트 세미나
DevOps를 위한 AWS 서비스 및 개발도구  -김상필 솔루션아키텍트 :: AWS 파트너 테크시프트 세미나 DevOps를 위한 AWS 서비스 및 개발도구  -김상필 솔루션아키텍트 :: AWS 파트너 테크시프트 세미나
DevOps를 위한 AWS 서비스 및 개발도구 -김상필 솔루션아키텍트 :: AWS 파트너 테크시프트 세미나
 

AWS DevOps와 ECR을 통한 Elastic Beanstalk 배포 환경 구축 및 타 환경과의 비교

  • 1. AWS DevOps와 ECR을 통한 Elastic Beanstalk 배포 환경 구축 및 타 환경과의 비교 전북대학교 201610674 이영훈
  • 2. AWS DevOps Tools Code Commit • 완전관리형 • 협업 방식의 코드 작업 • 개발 수명 주기 속도 향상 • 기존 도구(Git) 사용
  • 3. AWS DevOps Tools • 완전관리형 빌드 서비스 • 지속적 크기 조정 • 사용량에 따라 지불 • 지속적 통합 및 전달 지원 Code Build
  • 4. AWS DevOps Tools • 신속한 제공 • 구성 가능한 워크플로 • 빠르게 시작 • 손쉬운 통합 Code Pipeline
  • 5. AWS DevOps Tools • 완전 관리형 레지스트리로 수월하게 작업 • 컨테이너 이미지를 안전하게 공유 및 다운로드 • 빠르고 가용성이 뛰어난 액세스 제공 • 배포 워크플로 간소화 Elastic Container Registry
  • 6. AWS DevOps Tools • 빠르고 간편한 시작 • 개발자 생산성 • 적절한 규모 유지 • 완벽한 리소스 제어 Elastic Beanstalk
  • 8. 배포 시나리오 Developers Code Commit Code Pipeline Code Build Elastic Container Registry Elastic Beanstalk
  • 9. 비교 시나리오 Developers Github Travis CI Docker Elastic Beanstalk
  • 10. 비교를 위한 동일 환경 • create-react-app 기본 환경 • dockerfile • Elastic Beanstalk 도커 플랫폼
  • 11. 환경 구축 1. 레포지토리 생성 2. Git 연결 (HTTPS를 이용하면 Github와 동일) Code Commit
  • 12. 환경 구축 1. 빌드 프로젝트 생성 2. Buildspec.yml 파일 생성 후 레포지토리에 추가 Code Build
  • 13. 환경 구축 • 소스 공급자: 소스를 받을 주체 (여기선 CodeCommit) • 레포지토리: 생성한 레포지토리 • 참조 유형: 소스 참조 유형 선택
  • 14. 환경 구축 • 환경 이미지: Codebuild 관리 이미지와 도커 이미지 중 선택 • 환경: Ubuntu: aws/codebuild/standard:4.0 버전 (다른 버전 사용시 오류 多) • 권한: Code build를 통해서 도커 이미지 빌드시 필요한 권한
  • 15. 환경 구축 • 서비스 역할: 역할 지정 • Buildspec: 빌드시 필요한 명령을 저장하는 파일
  • 16. 환경 구축 # buildspec.yml Version: 0.2 phases: pre_build: commands: - echo Logging in to Amazon ECR... - aws ecr get-login-password --region $AWS_DEFAULT_REGION | docker login --username AWS --password-stdin $AWS_ACCOUNT_ID.dkr.ecr.$AWS_DEFAULT_REGION.amazonaws.com build: commands: - echo Build started on `date` - echo Building the Docker image... - docker build -t $IMAGE_REPO_NAME:$IMAGE_TAG . - docker tag $IMAGE_REPO_NAME:$IMAGE_TAG $AWS_ACCOUNT_ID.dkr.ecr.$AWS_DEFAULT_REGION.amazonaws.com/$IMAGE_REPO_NAME:$IMAGE_TAG post_build: commands: - echo Build completed on `date` - echo Pushing the Docker image... - docker push $AWS_ACCOUNT_ID.dkr.ecr.$AWS_DEFAULT_REGION.amazonaws.com/$IMAGE_REPO_NAME:$IMAGE_TAG • 나중에 생성할 AWS ECR 레포지토리의 내용과 IAM 계정의 정보, 소스와 함께 있는 Dockerfile, 저장될 컨테이너의 위치를 작성해야 Codebuild시 해당 설정을 통해 ECR에 docker 이미지를 생성합니다.
  • 17. 환경 구축 Elastic Container Registry (ECR) 1. 레포지토리 생성 2. Buildspec.yml 파일 ECR 설정 부분 채우기 https://docs.aws.amazon.com/ko_kr/codebuild/latest/userguide/sample-docker.html#sample-docker-docker-hub
  • 18. 환경 구축 • 푸시 명령 보기를 통해서 AWS CLI 인증, 도커 이미 지 build & tag, push 명령을 Buildspec.yml 파일에 지정
  • 19. 환경 구축 Elastic Beanstalk 1. 어플리케이션 및 환경 생성 2. Dockerrun.aws.json 파일 작성 https://docs.aws.amazon.com/ko_kr/elasticbeanstalk/latest/dg/single-container-docker-configuration.html https://docs.aws.amazon.com/ko_kr/elasticbeanstalk/latest/dg/create_deploy_docker_v2config.html
  • 20. 환경 구축 • Elastic beanstalk에서 Docker 이미지를 통한 배포를 위해 플랫폼을 Docker로 지정하며, Linux2가 아닌 Linux로 지정해야 버전 오류가 없다.
  • 21. 환경 구축 // dockerrun.aws.json { "AWSEBDockerrunVersion": 1, "containerDefinitions": [ { "name": "web_container", "image": "089802069060.dkr.ecr.us-east-1.amazonaws.com/web_container:latest" } ] } • Dockercompose를 사용하지 않는 경우에는 꼭 작성해야 하는 설정 파일 • v1: 도커 컨테이너 • v2: 멀티 컨테이너 • v3: 프라이빗 레포지토리 사용하여 S3 버킷 이용
  • 22. 환경 구축 Code Pipeline 1. 지금까지 설정을 이용하여 Pipeline 작성
  • 23. 환경 구축 소스 빌드 배포 AWS CodeCommit AWS CodeBuild AWS Elastic Beanstalk
  • 24. 비교 환경 구축 1. 레포지토리 작성 Github
  • 25. 비교 환경 구축 1. 도커 환경 실행 Docker
  • 26. 비교 환경 구축 1. Github 레포지토리 연결 2. .travis.yml 파일 작성 3. AWS IAM 사용자 연결 (보안) Travis CI
  • 27. 비교 환경 구축 sudo: required language: generic services: - docker before_install: - echo "start creating an image with dockerfile" - docker build -t lee20h/docker-travis-aws-config . script: - docker run -e CI=true lee20h/docker-travis-aws-config npm run test -- --coverage deploy: edge: true provider: elasticbeanstalk region: "us-east-1" app: "web deploy with docker" env: "WebDeployWithDocker-env" bucket_name: "elasticbeanstalk-us-east-1-089802069060" bucket_path: "web deploy with docker" on: branch: master access_key_id: $AWS_ACCESS_KEY secret_access_key: $AWS_SECRET_ACCESS_KEY • .travis.yml 파일 작성 • Dockerfile 이미지 build 후 push • 배포시에 AWS 설정 작성
  • 28. 비교 환경 구축 • IAM 사용자 액세스 키 등록 • Github에서 사용시 대부분 노출되므로 사용 권장
  • 29. 비교 환경 구축 소스 빌드 배포 Github Travis CI AWS Elastic Beanstalk
  • 30. 배포 테스트 • 소스: 즉시 • 빌드: 약 3분 • 배포: 약 6분 • 결과:
  • 31. 비교 배포 테스트 • 소스: 즉시 • 대기: 약 10분 • 빌드: 약 2분 • 배포: 약 8분 • 결과:
  • 32. 비교 결과 • 소요시간 비교 비교군 AWS DevOps 비교 환경 소스 즉시 즉시 빌드 약 3분 약 2분 배포 약 6분 약 8분 • 언뜻 보면 비슷한 수치이나, Travis CI의 경우 빌드를 위한 Travis Queue에 들어가는 시간이 약 10분 소요되어 총 약 20분 소요 • 따라서 Travis CI의 Queue가 대기 중이면 비슷한 성능 • 허나, 대부분 Queue 진입시간은 약 10분 소요
  • 33. 비교 결과 • 설정 필요한 파일 비교군 AWS DevOps 비교 환경 dockerfile O O dockerrun.aws.json O X .travis.yml X O buildspec.yml O X • AWS 개발자 도구를 사용한 배포는 유기적인 연결을 위해 여러 설정파일이 필요함 • 그에 반해 Travis CI를 사용한 배포는 Travis CI 설정 파일만 필요
  • 34. 비교 결과 • 과정 시각화 비교군 AWS DevOps 비교 환경 소스 O O 빌드 O O 배포 O X • AWS DevOps로 배포시엔 모든 과정이 시각화로 오류 부분을 바로 체크 가능 • Travis CI는 빌드까지 시각화 되어있지만 배포는 Elastic Beanstalk에서 이뤄지므로 배포까지 책임지지 않음
  • 35. 결론 • 설정하는 시간은 AWS DevOps가 더 소요되며 체크 해야 할 부분이 많다. • Commit 이후 배포까지의 속도는 AWS DevOps가 더 빠르다. • 에러 검출과 시각화의 경우 AWS DevOps가 더 편리하다. • Travis CI의 경우에는 무료인 만큼 속도가 느리나, 설정이 편리하다. • 프로젝트가 AWS 다른 서비스와 접목이 이뤄지거나, 유지보수에 중점을 준다면 AWS DevOps를 사용하는 것이 장기적으로 도움이 된다.