SlideShare une entreprise Scribd logo
1  sur  70
Télécharger pour lire hors ligne
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
서버리스 앱 배포 자동화
김필중 솔루션즈 아키텍트
AWS
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
서버리스
오늘의 진행
소스 빌드 테스트 프로덕션
배포 운영
• 테스트
• 모니터링
• 로깅
• 문제해결
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
서버리스
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
서버리스란
관리할 서버 없음 유연한 확장
유휴 자원 없음
$
높은 가용성
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
서버리스 애플리케이션을 위한 최소한의 할일!
AWS
Lambda
Node.js
Python
Java
C#
Go
…
함수 (코드)
단계 2: Lambda에 업로드
업로드 (배포)
이벤트 소스
데이터 상태를
변경
엔드포인트로
요청
자원 상태가
변경
단계 3: 이벤트 소스 연결단계 1: 함수 (코드) 준비
호출
오늘의 주 내용
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Lambda 실행 모델
동기 (push) 스트림 기반비동기 (event)
Amazon
API Gateway
AWS Lambda
함수
Amazon
DynamoDBAmazon
SNS
/order
AWS Lambda
함수
Amazon
S3
reqs
Amazon
Kinesis
changes
AWS Lambda
서비스
함수
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
웹 앱을 위한 엔드포인트: Amazon API Gateway
Internet
Mobile
Apps
Websites
Services
AWS
Lambda
functions
AWS
API Gateway
Cache
Endpoints
on Amazon
EC2
All publicly
accessible
endpoints
Amazon
CloudWatch
Monitoring
Amazon
CloudFront
Any other
AWS service
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
서버리스 활용
웹
애플리케이션
• 동적 웹 앱
• 복잡한 웹 앱
• Flask 및
Express 앱
• 블로그
데이터 처리
• 실시간
스트리밍
• 맵리듀스
• 배치 작업
• 미디어 변환
챗봇
• 챗봇 로직
백엔드
• 앱 및 서비스
• 모바일
• IoT
</></>
Amazon
Alexa
• 음성 지원 앱
• Alexa Skills
Kit
IT 자동화
• 정책 엔진
• AWS 서비스
확장
• 인프라 관리
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
배포
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
배포를 위한 릴리즈 프로세스
지속적 통합: Continuous integration
지속적 전달: Continuous delivery
지속적 배포: Continuous deployment
소스 빌드 테스트 프로덕션
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AWS Code 서비스를 활용한 보통의 배포 방법
소스 빌드 테스트 프로덕션
AWS CodeDeploy타사 도구AWS CodeBuildAWS CodeCommit
AWS CodePipeline
AWS CodeStar
코드 저장소 빌드/테스팅 배포
파이프라인 모델링
손 쉬운 구성
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
!
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
새 버전의 코드 배포 방법에 대한 고민
새 버전 기존 버전
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
서버리스 배포를 위한 고려사항
사용자에게 미치는
영향 최소화
롤백 기술 실행 모델 요소 배포 속도
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
서버리스 배포 패턴
All-at-once
모든 트래픽은 이전
버전에서 새 버전으로
즉시 이동.
Blue/Green
프로덕션 트래픽을
처리하기전에
새 버전은 배포되고
테스트됨.
유효성을 검사 한 후
모든 트래픽이 이전
버전에서 새 버전으로
즉시 변경.
Canary/Linear
프로덕션 트래픽의
일부분은 새 버전
으로, 나머지는 이전
버전으로 보냄.
유효성 검사를 위해
일정 기간이 지나면
트래픽이 점진적으로
(추가 유효성 검사와
함께) 이동되거나 새
버전으로 완전히
이동.
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
서버리스 배포를 위한 도구
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AWS CloudFormation
클라우드 인프라 템플릿을 정의하기 위한 언어
- JSON 및 YAML 지원
AWS 리소스 프로비저닝
CI/CD, 개발, 관리 도구와 통합
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
CloudFormation 템플릿
AWSTemplateFormatVersion: '2010-09-09'
Resources:
GetHtmlFunctionGetHtmlPermissionProd:
Type: AWS::Lambda::Permission
Properties:
Action: lambda:invokeFunction
Principal: apigateway.amazonaws.com
FunctionName:
Ref: GetHtmlFunction
SourceArn:
Fn::Sub: arn:aws:execute-api:${AWS::Region}:${AWS::AccountId}:${ServerlessRestApi}/Prod/ANY/*
ServerlessRestApiProdStage:
Type: AWS::ApiGateway::Stage
Properties:
DeploymentId:
Ref: ServerlessRestApiDeployment
RestApiId:
Ref: ServerlessRestApi
StageName: Prod
ListTable:
Type: AWS::DynamoDB::Table
Properties:
ProvisionedThroughput:
WriteCapacityUnits: 5
ReadCapacityUnits: 5
AttributeDefinitions:
- AttributeName: id
AttributeType: S
KeySchema:
- KeyType: HASH
AttributeName: id
GetHtmlFunction:
Type: AWS::Lambda::Function
Properties:
Handler: index.gethtml
Code:
S3Bucket: flourish-demo-bucket
S3Key: todo_list.zip
Role:
Fn::GetAtt:
- GetHtmlFunctionRole
- Arn
Runtime: nodejs4.3
GetHtmlFunctionRole:
Type: AWS::IAM::Role
Properties:
ManagedPolicyArns:
- arn:aws:iam::aws:policy/AmazonDynamoDBReadOnlyAccess
- arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole
AssumeRolePolicyDocument:
Version: '2012-10-17'
Statement:
- Action:
- sts:AssumeRole
Effect: Allow
Principal:
Service:
- lambda.amazonaws.com
ServerlessRestApiDeployment:
Type: AWS::ApiGateway::Deployment
Properties:
RestApiId:
Ref: ServerlessRestApi
Description: 'RestApi deployment id: 127e3fb91142ab1ddc5f5446adb094442581a90d'
StageName: Stage
GetHtmlFunctionGetHtmlPermissionTest:
Type: AWS::Lambda::Permission
Properties:
Action: lambda:invokeFunction
Principal: apigateway.amazonaws.com
FunctionName:
Ref: GetHtmlFunction
SourceArn:
Fn::Sub: arn:aws:execute-api:${AWS::Region}:${AWS::AccountId}:${ServerlessRestApi}/*/ANY/*
ServerlessRestApi:
Type: AWS::ApiGateway::RestApi
Properties:
Body:
info:
version: '1.0'
title:
Ref: AWS::StackName
paths:
"/{proxy+}":
x-amazon-apigateway-any-method:
x-amazon-apigateway-integration:
httpMethod: ANY
type: aws_proxy
uri:
Fn::Sub: arn:aws:apigateway:${AWS::Region}:lambda:path/2015-03-
31/functions/${GetHtmlFunction.Arn}/invocations
responses: {}
swagger: '2.0'
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AWS Serverless Application Model (SAM)
서버리스에 최적화된 CloudFormation 확장판
새로운 서버리스 자원 유형: 함수, API, 테이블
CloudFormation이 지원하는 모든 것을 지원
오픈 사양 (Apache 2.0)
https://github.com/awslabs/serverless-application-model
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
SAM 템플릿
AWSTemplateFormatVersion: '2010-09-09’
Transform: AWS::Serverless-2016-10-31
Resources:
GetHtmlFunction:
Type: AWS::Serverless::Function
Properties:
CodeUri: s3://sam-demo-bucket/todo_list.zip
Handler: index.gethtml
Runtime: nodejs4.3
Policies: AmazonDynamoDBReadOnlyAccess
Events:
GetHtml:
Type: Api
Properties:
Path: /{proxy+}
Method: ANY
ListTable:
Type: AWS::Serverless::SimpleTable
SAM 템플릿임을 명시
IAM 정책, 런타임, 코드를 포함하는
zip 파일 위치, 핸들러와 함께
Lambda 함수 생성
API Gateway를 만들고 필요한 모든
매핑/권한을 처리.
5 읽기/쓰기 유닛으로 DynamoDB
테이블 생성
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
복잡한 API를 위한 Swagger 활용
MyApi:
Type: AWS::Serverless::Api
Properties:
StageName: prod
DefinitionUri: swagger.yml
CacheClusterEnabled: true
CacheClusterSize: 28.4
EndpointConfiguration: REGIONAL
Variables:
VarName: VarValue
LambdaFunction:
Type: AWS::Serverless::Function
Properties:
CodeUri: s3://<bucket>/fn.zip
Handler: index.handler
Runtime: nodejs6.10
Events:
MyApi:
Type: Api
Properties:
RestApiId: !Ref MyApi
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
서버리스 애플리케이션 배포 기법
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Lambda 함수 버전 및 별칭
버전: 변하지 않는(immutable) 함수(코드 및 구성 포함)
별칭: 버전을 가리키는 변하는(mutable) 포인터
둘 모두 고유한 ARN을 가짐
모범 사례
$LATEST 버전을 기반으로 개발
테스팅과 배포를 구분하여 게시
클라이언트 접근을 추상화하기 위해 별칭 활용:
• 롤백
• 스테이징
• 클라이언트 별 버전
람다 함수
버전: $LATEST
람다 함수
버전: 123
람다 함수
별칭: PROD
람다 함수
별칭: STG
람다 함수
별칭: DEV
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
단계 변수와 Lambda 별칭
API Gateway에서 단계 변수를 Lambda 함수 별칭과 함께 사용하면 여러
환경 단계에 대해 단일 API 구성 및 Lambda 함수를 관리할 수 있습니다
Lambda 함수 API
1
2
3 = prod
4
5
6 = stg
7
8 = dev
Prod
lambdaAlias = prod
Staging
LambdaAlias = stg
Dev
lambdaAlias = dev
단계 변수 = lambdaAlias
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Lambda 별칭 트래픽 이동 및 안전한 배포
aws lambda update-alias --name alias name --function-name function-
name --routing-config AdditionalVersionWeights={"2"=0.05}
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Lambda 별칭 트래픽 이동
Lambda 함수 API
1
2
3 = prod
4
5
6 = prod 5%
Prod
lambdaAlias = prod
단계 변수 = lambdaAlias
aws lambda update-alias --name prod --function-name lambdaFunction
--routing-config AdditionalVersionWeights={"6"=0.05}
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Lambda 별칭 트래픽 이동
Lambda 함수 API
5
6 = prod
Prod
lambdaAlias = prod
단계 변수 = lambdaAlias
aws lambda update-alias --name prod --function-name lambdaFunction
--function-version 6 --routing-config ‘’
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
SAM Globals + 안전한 배포
Globals:
Function:
Runtime: nodejs4.3
AutoPublishAlias: !Ref ENVIRONMENT
MyLambdaFunction:
Type: AWS::Serverless::Function
Properties:
Handler: index.handler
DeploymentPreference:
Type: Linear10PercentEvery10Minutes
Alarms:
# A list of alarms that you want to monitor
- !Ref AliasErrorMetricGreaterThanZeroAlarm
- !Ref LatestVersionErrorMetricGreaterThanZeroAlarm
Hooks:
# Validation Lambda functions that are run before & after traffic shifting
PreTraffic: !Ref PreTrafficLambdaFunction
PostTraffic: !Ref PostTrafficLambdaFunction
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Lambda 별칭 트래픽 이동 및 AWS SAM
AutoPublishAlias
이 속성을 추가하고 별칭명을 지정하면
AWS SAM이 다음을 수행 :
• Lambda 함수의 Amazon S3 URI의
변경사항을 기반으로 새로운 코드가
배포될 때를 탐지
• 최신 코드로 해당 함수의 업데이트된
버전을 만들고 게시
• 지정한 이름으로 별칭을 만들고 (해당
별칭이 존재하지 않는 한) Lambda
함수의 업데이트된 버전을 가리킴
배포 기본 설정 유형
Canary10Percent30Minutes
Canary10Percent5Minutes
Canary10Percent10Minutes
Canary10Percent15Minutes
Linear10PercentEvery10Minutes
Linear10PercentEvery1Minute
Linear10PercentEvery2Minutes
Linear10PercentEvery3Minutes
AllAtOnce
SAM:
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Lambda 별칭 트래픽 이동 및 AWS SAM
SAM:
Alarms: # A list of alarms that you want to monitor
- !Ref AliasErrorMetricGreaterThanZeroAlarm
- !Ref LatestVersionErrorMetricGreaterThanZeroAlarm
Hooks: # Validation Lambda functions that are run
before & after traffic shifting
PreTraffic: !Ref PreTrafficLambdaFunction
PostTraffic: !Ref PostTrafficLambdaFunction
참고: 최대 10개의 경보(Alarm) 지정 가능
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AWS CodeDeploy + Lambda
자동 배포 (EC2/온프레미스), 롤링 배포(Blue/green),
정지와 롤백 지원
AWS SAM을 사용하여 서버리스 애플리케이션 배포
Lambda 별칭을 사용한 트래픽 이동 지원으로
Canary와 Blue/Green 배포 가능
CloudWatch 지표/알람을 기반으로 롤백 가능
트래픽 유입 이전/이후의 트리거를 통해 다른
서비스들간의 통합 가능 (람다 함수 호출도 가능)
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AWS CodeDeploy + Lambda
사용자 지정 배포 구성 지원
• 1시간 동안 Canary 5%
• 매 1시간 동안 Linear 20%
성공/실패/롤백 시 SNS를 통한 이벤트 알림
콘솔에서 배포 상태, 기록, 롤백을 시각화하여 확인
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon API Gateway Canary 지원
Canary 릴리즈 배포를 사용하여 Amazon API Gateway에서 새로운 API를
점차적으로 출시할 수 있습니다
새로운 단계 배포로 이동하는 트래픽 비율 구성
단계 설정과 변수 테스트 가능
API Gateway는 Canary 배포 API에 의해 제어되는 요청들을 위한 추가적인
Amazon CloudWatch Logs 그룹과 CloudWatch 지표를 생성
롤백 가능(배포를 제거 또는 트래픽 비율을 0으로 설정)
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon API Gateway Canary 지원
v1API Clients All publicly
and privately
accessible
endpoints
Backends
in AWS
api.mydomain.com/prod
현재 배포된 버전으로 들어오는 모든 트래픽
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon API Gateway Canary 지원
API Clients All publicly
and privately
accessible
endpoints
Backends
in AWS
v1
50%
v2
50%
새 트래픽의 50%는 새 배포로, 나머지는 이전 버전으로
api.mydomain.com/prod
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon API Gateway Canary 지원
API Clients All publicly
and privately
accessible
endpoints
Backends
in AWS
v1
10%
v2
90%
트래픽의 90%는 단계의 새 배포로, 나머지는 이전 버전으로
api.mydomain.com/prod
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon API Gateway Canary 지원
v2API Clients All publicly
and privately
accessible
endpoints
Backends
in AWS
api.mydomain.com/prod
새로 배포된 버전으로 들어오는 모든 트래픽
변경 사항이 없는 클라이언트
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Amazon API Gateway Canary 지원
활용 방법
• API 백엔드에서 새로운 기술을 적용
• 새로운 언어
• 새로운 프레임워크
• Lambda 함수로 특정 기능 구현 후 연결
• 개별 로그 및 지표로 성능 비교/대조
• VPC에서 엔드포인트 통합을 통해 온프레미스에서 AWS로 API를 마이그레이션
• API Gateway à Network Load Balancer (NLB) à 온프레미스 (Direct
Connect 또는 VPN 연결을 통해)
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Lambda와 API Gateway Canary 배포 비교
Lambda
• 단일 함수 수준으로만 제어
• 서비스 호출에 투명성 제공
• 새 버전은 고유 로그 및 지표 가짐
• Weight를 0으로 설정하여 롤백
• SAM을 통해 자동으로 점진적
변경 지원
API Gateway
• 전체 단계 수준으로 최대 제어
• 클라이언트에 투명성 제공
• 새 버전은 고유 로그 및 지표 가짐
• Weight를 0으로 설정하거나
Canary를 삭제하여 롤백
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
배포 파이프라인 구축
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AWS CodePipeline
신속하고 신뢰할 수 있는 애플리케이션
업데이트를 위한 지속적인 전달 서비스
릴리즈 프로세스 모델링 및 시각화
코드가 변경될 때 마다 빌드, 테스트, 배포
AWS와 다양한 도구들과의 통합
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
간단한 서버리스 앱 배포 파이프라인 예제
MyBranch-Source
Source
CodeCommit
서버리스 앱
Build
test-build-source
CodeBuild
MyDev-Deploy
create-changeset
AWS CloudFormation
execute-changeset
AWS CloudFormation
Run-stubs
AWS Lambda
파이프라인 설명
• 3 단계로 구성
• 코드 아티팩트 생성
• 단일 환경 (개발용)
• SAM/CloudFormation을 사용하여
아티팩트와 다른 AWS 리소스들 배포
• Lambda 사용자 정의 작업을 통해
테스트 함수 실행
파이프라인
단계
작업
전환
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
간단한 서버리스 앱 배포 파이프라인 예제
파이프라인 설명
• 5 단계로 구성
• 코드 아티팩트 생성
• 세 개의 환경에 세 차례 배포
• SAM/CloudFormation을 사용하여
아티팩트와 다른 AWS 리소스들 배포
• Lambda 사용자 정의 행동을 통해
테스트 함수 실행
• 타사 도구/서비스와 통합
• 프로덕션으로 배포하기 전 수동 승인
Source
Source
CodeCommit
서버리스 앱
Build
test-build-source
CodeBuild
Deploy Testing
create-changeset
AWS
CloudFormation
execute-changeset
AWS
CloudFormation
Run-stubs
AWS Lambda
Deploy Staging
create-changeset
AWS
CloudFormation
execute-changeset
AWS
CloudFormation
Run-API-test
Runscope
QA-Sign-off
Manual Approval
Review
Deploy Prod
create-changeset
AWS
CloudFormation
execute-changeset
AWS
CloudFormation
Post-Deploy-Slack
AWS Lambda
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
배포 패턴 별 테스트
Source
서버리스 앱
Build
Deploy Testing
Deploy Staging
Deploy Prod
• Pull 요청에 의한 코드
리뷰 (CodeCommit
에서 가능)
• Lint/문법 검사
• 유닛 테스트
• 코드 컴파일
• All-at-once 배포
• Mocked/stubbed
통합 테스트
• All-at-once 배포
• 실제 종속성에 대해 테스트
(프로덕션에 대한 잠재적인
테스트)
• 새 버전 배포와 모든
요청 연결
1.
2.
3.
4.
5.
All-at-once 패턴
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
배포 패턴 별 테스트
Source
서버리스 앱
Build
Deploy Testing
Deploy Staging
Deploy Prod
• Pull 요청에 의한 코드
리뷰 (CodeCommit
에서 가능)
• Lint/문법 검사
• 유닛 테스트
• 코드 컴파일
• All-at-once 배포
• Mocked/stubbed
통합 테스트
• All-at-once 배포
• 실제 종속성에 대해 테스트
• Green 버전 배포
• Green에서 테스트 수행
및 검증
• 트래픽 전부 Green 연결
1.
2.
3.
4.
5.
Blue/Green 패턴
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
배포 패턴 별 테스트
Source
서버리스 앱
Build
Deploy Testing
Deploy Staging
Deploy Prod
• Pull 요청에 의한 코드
리뷰 (CodeCommit
에서 가능)
• Lint/문법 검사
• 유닛 테스트
• 코드 컴파일
• All-at-once 배포
• Mocked/stubbed
통합 테스트
• All-at-once 배포
• 실제 종속성에 대해 테스트
• Canary 배포
• 대기 기간 동안
성공적으로 검증
• 트래픽 전부를 연결할 때
까지 점차 확대
1.
2.
3.
4.
5.
Canary 패턴
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
환경, 단계, 버전, Canary 관련 모범 사례
• 자동화된 롤백이 가능한 프로덕션 배포를 위해 Blue/Green 또는
Canary를 사용
• 여러 군데에서 호출하기에 다양한 버전을 지원해야할 경우 Lambda의
버전(Versioning)은 매우 유용
• 다양한 API 버전을 지원해야할 경우 API Gateway에서는 단계(Stage)가
Lambda 버전과 비슷하게 작동하며 유용
• 개발, 테스트, 스테이징, 프로덕션 환경을 위해 가능한 항상 분리된
스택을 유지
• 이를 위해 단계나 버전을 사용하지 마세요
• 서로 다른 환경을 위해 다른 계정을 모두 함께 가지고 있다고 생각해보세요
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
운영
(테스트/로깅/모니터링/문제 해결)
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
시작 포인트
로컬에서 함수를 테스트 및 디버깅
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AWS SAM CLI SAM Local
서버리스 앱을 로컬에서 구축, 검증,
테스트하기 위한 CLI 도구
Lambda 함수와 프록시 스타일 API와 작동
로컬에서 응답 객체와 함수 로그 확인 가능
오프라인에서 작동
오픈소스 docker-lambda 이미지를 사용하여
Lambda의 실행 환경을 흉내 (Timeout,
메모리 제한, 런타임을 에뮬레이팅)
https://github.com/awslabs/aws-sam-cli
npm install -g aws-sam-local
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AWS CodeBuild: 높은 수준의 Lambda 테스트
CodeBuild는 Docker 이미지를 사용하여
빌드/테스트 환경을 구성한 뒤 원하는 작업을
가능하게 함
SAM Local은 Lambda 런타임의 복제본을 포함
바이너리 호환 라이브러리와 실행 파일을
빌드하고 테스트 가능
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
전통적인 디버깅
개발자
로컬
테스트
개발자
Breakpoints
추가
로그 항목
추가
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
서버리스 애플리케이션 로깅: CloudWatch
Lambda
• 기본 지표:
• Invocations
• Duration
• Throttles
• Errors
• Iterator Age
put-metric API를 사용하여
애플리케이션에서 사용자 정의
지표 기록 가능
API Gateway
• 스테이지 수준의 기본 지표:
• Count
• 4XXs, 5XXs
• Latency (API 및 통합)
• Cache count hit/miss
메서드 수준의 세밀성으로 상세한
지표 집계 가능
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
서버리스 앱 문제 해결의 접근
• 기본적으로 적절한 로그를 기록하는 것부터 시작
• 기록된 로그는 빠르게 검색 가능해야 함
• 특히 람다 함수가 많다면 로그 기록은 더욱 중요!
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
사용자 정의 지표 및 로그 생성
• 타임스탬프를 통한 API Gateway와 Lambda에서 로그를 상호연관
• DynamoDB 호출과 관련된 많은 정보들을 로그로 기록
Amazon
API Gateway
Amazon
DynamoDBAWS Lambda
간단한 서버리스 애플리케이션
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
조금 어려운 문제들
• 많은 서비스가 연계되어
특정 홉이 다운되어
이슈가 발생하면 찾기가
쉽지 않음
• 요청 ID와의 상관관계를
찾는 것은 물론
유지하기가 어려움
Amazon
API Gateway
Amazon
DynamoDB
AWS Lambda
AWS Lambda
Amazon
Rekognition
Amazon
SNS
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
조금 어려운 문제들
• 많은 서비스가 연계되어
특정 홉이 다운되어
이슈가 발생하면 찾기가
쉽지 않음
• 요청 ID와의 상관관계를
찾는 것은 물론
유지하기가 어려움
Amazon
API Gateway
Amazon
DynamoDB
AWS Lambda
AWS Lambda
Amazon
Rekognition
Amazon
SNS
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
AWS X-Ray
성능 병목현상 파악 특정 서비스 문제
핀포인팅
에러 파악 사용자에게 미치는
영향 파악
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
서버리스와의 통합
Lambda에서 지원하는 모든 언어에 대한 수신 요청을 처리
SDK를 사용하여 X-Ray 데몬과 통신
var AWSXRay = require(‘aws-xray-sdk-core‘);
AWSXRay.middleware.setSamplingRules(‘sampling-
rules.json’);
var AWS = AWSXRay.captureAWS(require(‘aws-sdk’));
S3Client = AWS.S3();
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
X-Ray: 서비스 호출 그래프
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
X-Ray: Lambda (초기화, 콜드 스타트)
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
X-Ray: Lambda 함수 (기존 컨테이너 사용)
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
X-Ray: Lambda 함수 (예외)
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
X-Ray: Lambda 함수 (예외 상세)
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
X-Ray: Lambda 함수 예외
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
확장하고 있는 서버리스 생태계
구축 및 CI/CD
로깅 및 모니터링애플리케이션 및 배포
Chalice 프레임워크 서버리스 자바 컨테이너
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
정리
• 다양한 기능들을 활용하여 안전하고 제어된 방식으로 Lambda 함수를
배포
• 자동 롤백은 배포 관련 문제 복구를 위한 가장 빠른 방법
• 이벤트 모델과 워크로드 크기에 따라 적절한 배포 패턴을 선택
• AWS SAM + AWS CodeDeploy를 사용하여 서버리스 애플리케이션을
다양한 배포방식(All-at-once, Blue/Green, Canary)으로 배포 가능
• 서버리스 앱은 로깅과 모니터링 기능이 빌트인으로 포함됨
• 강력한 도구인 X-Ray를 활용하여 문제점을 시각화하여 해결
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
참고
• https://aws.amazon.com/serverless 에 참고 아키텍처, 샘플 등 다양한
콘텐츠가 준비되어 있습니다.
• https://github.com/awslabs/serverless-application-model 에 준비된
다양한 AWS SAM 사양을 살펴보세요.
• Lambda 콘솔에서 원하는 블루프린트를 선택 후 서버리스 앱 개발을
당장 시작할 수 있습니다.
© 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
Q&A
• 세션 후, 설문에 참여해 주시면 행사 후 소정의 선물을 드립니다.
• #AWSDevDay 해시 태그로 의견을 남겨주세요!

Contenu connexe

Tendances

IDC 서버 몽땅 AWS로 이전하기 위한 5가지 방법 - 윤석찬 (AWS 테크에반젤리스트)
IDC 서버 몽땅 AWS로 이전하기 위한 5가지 방법 - 윤석찬 (AWS 테크에반젤리스트) IDC 서버 몽땅 AWS로 이전하기 위한 5가지 방법 - 윤석찬 (AWS 테크에반젤리스트)
IDC 서버 몽땅 AWS로 이전하기 위한 5가지 방법 - 윤석찬 (AWS 테크에반젤리스트) Amazon Web Services Korea
 
MSA ( Microservices Architecture ) 발표 자료 다운로드
MSA ( Microservices Architecture ) 발표 자료 다운로드MSA ( Microservices Architecture ) 발표 자료 다운로드
MSA ( Microservices Architecture ) 발표 자료 다운로드Opennaru, inc.
 
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016Amazon Web Services Korea
 
AWS를 위한 도커, 컨테이너 (이미지) 환경 보안 방안 - 양희선 부장, TrendMicro :: AWS Summit Seoul 2019
AWS를 위한 도커, 컨테이너 (이미지) 환경 보안 방안 - 양희선 부장, TrendMicro :: AWS Summit Seoul 2019AWS를 위한 도커, 컨테이너 (이미지) 환경 보안 방안 - 양희선 부장, TrendMicro :: AWS Summit Seoul 2019
AWS를 위한 도커, 컨테이너 (이미지) 환경 보안 방안 - 양희선 부장, TrendMicro :: AWS Summit Seoul 2019Amazon Web Services Korea
 
천만사용자를 위한 AWS 클라우드 아키텍처 진화하기 – 문종민, AWS솔루션즈 아키텍트:: AWS Summit Online Korea 2020
천만사용자를 위한 AWS 클라우드 아키텍처 진화하기 – 문종민, AWS솔루션즈 아키텍트::  AWS Summit Online Korea 2020천만사용자를 위한 AWS 클라우드 아키텍처 진화하기 – 문종민, AWS솔루션즈 아키텍트::  AWS Summit Online Korea 2020
천만사용자를 위한 AWS 클라우드 아키텍처 진화하기 – 문종민, AWS솔루션즈 아키텍트:: AWS Summit Online Korea 2020Amazon Web Services Korea
 
AWS 클라우드 이해하기-사례 중심 (정민정) - AWS 웨비나 시리즈
AWS 클라우드 이해하기-사례 중심 (정민정) - AWS 웨비나 시리즈AWS 클라우드 이해하기-사례 중심 (정민정) - AWS 웨비나 시리즈
AWS 클라우드 이해하기-사례 중심 (정민정) - AWS 웨비나 시리즈Amazon Web Services Korea
 
KINX와 함께 하는 AWS Direct Connect 도입 - 남시우 매니저, KINX :: AWS Summit Seoul 2019
KINX와 함께 하는 AWS Direct Connect 도입 - 남시우 매니저, KINX :: AWS Summit Seoul 2019KINX와 함께 하는 AWS Direct Connect 도입 - 남시우 매니저, KINX :: AWS Summit Seoul 2019
KINX와 함께 하는 AWS Direct Connect 도입 - 남시우 매니저, KINX :: AWS Summit Seoul 2019Amazon Web Services Korea
 
고급 클라우드 아키텍처 방법론- 양승도 솔루션즈 아키텍트:: AWS Cloud Track 2 Advanced
고급 클라우드 아키텍처 방법론- 양승도 솔루션즈 아키텍트:: AWS Cloud Track 2 Advanced고급 클라우드 아키텍처 방법론- 양승도 솔루션즈 아키텍트:: AWS Cloud Track 2 Advanced
고급 클라우드 아키텍처 방법론- 양승도 솔루션즈 아키텍트:: AWS Cloud Track 2 AdvancedAmazon Web Services Korea
 
AWS Summit Seoul 2023 | AWS에서 OpenTelemetry 기반의 애플리케이션 Observability 구축/활용하기
AWS Summit Seoul 2023 | AWS에서 OpenTelemetry 기반의 애플리케이션 Observability 구축/활용하기AWS Summit Seoul 2023 | AWS에서 OpenTelemetry 기반의 애플리케이션 Observability 구축/활용하기
AWS Summit Seoul 2023 | AWS에서 OpenTelemetry 기반의 애플리케이션 Observability 구축/활용하기Amazon Web Services Korea
 
AWS System Manager: Parameter Store를 사용한 AWS 구성 데이터 관리 기법 - 정창훈, 당근마켓 / 김대권, ...
AWS System Manager: Parameter Store를 사용한 AWS 구성 데이터 관리 기법 - 정창훈, 당근마켓 / 김대권, ...AWS System Manager: Parameter Store를 사용한 AWS 구성 데이터 관리 기법 - 정창훈, 당근마켓 / 김대권, ...
AWS System Manager: Parameter Store를 사용한 AWS 구성 데이터 관리 기법 - 정창훈, 당근마켓 / 김대권, ...Amazon Web Services Korea
 
AWS DirectConnect 구성 가이드 (김용우) - 파트너 웨비나 시리즈
AWS DirectConnect 구성 가이드 (김용우) -  파트너 웨비나 시리즈AWS DirectConnect 구성 가이드 (김용우) -  파트너 웨비나 시리즈
AWS DirectConnect 구성 가이드 (김용우) - 파트너 웨비나 시리즈Amazon Web Services Korea
 
Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링
Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링
Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링Amazon Web Services Korea
 
대용량 트래픽을 처리하는 최적의 서버리스 애플리케이션 - 안효빈, 구성완 AWS 솔루션즈 아키텍트 :: AWS Summit Seoul 2021
대용량 트래픽을 처리하는 최적의 서버리스 애플리케이션  - 안효빈, 구성완 AWS 솔루션즈 아키텍트 :: AWS Summit Seoul 2021대용량 트래픽을 처리하는 최적의 서버리스 애플리케이션  - 안효빈, 구성완 AWS 솔루션즈 아키텍트 :: AWS Summit Seoul 2021
대용량 트래픽을 처리하는 최적의 서버리스 애플리케이션 - 안효빈, 구성완 AWS 솔루션즈 아키텍트 :: AWS Summit Seoul 2021Amazon Web Services Korea
 
금융 X 하이브리드 클라우드 플랫폼 - 한화생명 디지털 트랜스포메이션 전략 - 김나영 AWS 금융부문 사업개발 담당 / 박인규 AWS 금융...
금융 X 하이브리드 클라우드 플랫폼 - 한화생명 디지털 트랜스포메이션 전략 - 김나영 AWS 금융부문 사업개발 담당 / 박인규 AWS 금융...금융 X 하이브리드 클라우드 플랫폼 - 한화생명 디지털 트랜스포메이션 전략 - 김나영 AWS 금융부문 사업개발 담당 / 박인규 AWS 금융...
금융 X 하이브리드 클라우드 플랫폼 - 한화생명 디지털 트랜스포메이션 전략 - 김나영 AWS 금융부문 사업개발 담당 / 박인규 AWS 금융...Amazon Web Services Korea
 
데브옵스 엔지니어를 위한 신규 운영 서비스 - 김필중, AWS 개발 전문 솔루션즈 아키텍트 / 김현민, 메가존클라우드 솔루션즈 아키텍트 :...
데브옵스 엔지니어를 위한 신규 운영 서비스 - 김필중, AWS 개발 전문 솔루션즈 아키텍트 / 김현민, 메가존클라우드 솔루션즈 아키텍트 :...데브옵스 엔지니어를 위한 신규 운영 서비스 - 김필중, AWS 개발 전문 솔루션즈 아키텍트 / 김현민, 메가존클라우드 솔루션즈 아키텍트 :...
데브옵스 엔지니어를 위한 신규 운영 서비스 - 김필중, AWS 개발 전문 솔루션즈 아키텍트 / 김현민, 메가존클라우드 솔루션즈 아키텍트 :...Amazon Web Services Korea
 
프론트엔드 개발자를 위한 서버리스 - 윤석찬 (AWS 테크에반젤리스트)
프론트엔드 개발자를 위한 서버리스 - 윤석찬 (AWS 테크에반젤리스트)프론트엔드 개발자를 위한 서버리스 - 윤석찬 (AWS 테크에반젤리스트)
프론트엔드 개발자를 위한 서버리스 - 윤석찬 (AWS 테크에반젤리스트)Amazon Web Services Korea
 
KB국민은행은 시작했다 -  쉽고 빠른 클라우드 거버넌스 적용 전략 - 강병억 AWS 솔루션즈 아키텍트 / 장강홍 클라우드플랫폼단 차장, ...
KB국민은행은 시작했다 -  쉽고 빠른 클라우드 거버넌스 적용 전략 - 강병억 AWS 솔루션즈 아키텍트 / 장강홍 클라우드플랫폼단 차장, ...KB국민은행은 시작했다 -  쉽고 빠른 클라우드 거버넌스 적용 전략 - 강병억 AWS 솔루션즈 아키텍트 / 장강홍 클라우드플랫폼단 차장, ...
KB국민은행은 시작했다 -  쉽고 빠른 클라우드 거버넌스 적용 전략 - 강병억 AWS 솔루션즈 아키텍트 / 장강홍 클라우드플랫폼단 차장, ...Amazon Web Services Korea
 
소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해
소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해
소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해Terry Cho
 
AWS로 게임 런칭 준비하기 ::: 장준성, 채민관, AWS Game Master 온라인 시리즈 #4
AWS로 게임 런칭 준비하기 ::: 장준성, 채민관, AWS Game Master 온라인 시리즈 #4AWS로 게임 런칭 준비하기 ::: 장준성, 채민관, AWS Game Master 온라인 시리즈 #4
AWS로 게임 런칭 준비하기 ::: 장준성, 채민관, AWS Game Master 온라인 시리즈 #4Amazon Web Services Korea
 

Tendances (20)

IDC 서버 몽땅 AWS로 이전하기 위한 5가지 방법 - 윤석찬 (AWS 테크에반젤리스트)
IDC 서버 몽땅 AWS로 이전하기 위한 5가지 방법 - 윤석찬 (AWS 테크에반젤리스트) IDC 서버 몽땅 AWS로 이전하기 위한 5가지 방법 - 윤석찬 (AWS 테크에반젤리스트)
IDC 서버 몽땅 AWS로 이전하기 위한 5가지 방법 - 윤석찬 (AWS 테크에반젤리스트)
 
MSA ( Microservices Architecture ) 발표 자료 다운로드
MSA ( Microservices Architecture ) 발표 자료 다운로드MSA ( Microservices Architecture ) 발표 자료 다운로드
MSA ( Microservices Architecture ) 발표 자료 다운로드
 
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016
게임서비스를 위한 ElastiCache 활용 전략 :: 구승모 솔루션즈 아키텍트 :: Gaming on AWS 2016
 
AWS를 위한 도커, 컨테이너 (이미지) 환경 보안 방안 - 양희선 부장, TrendMicro :: AWS Summit Seoul 2019
AWS를 위한 도커, 컨테이너 (이미지) 환경 보안 방안 - 양희선 부장, TrendMicro :: AWS Summit Seoul 2019AWS를 위한 도커, 컨테이너 (이미지) 환경 보안 방안 - 양희선 부장, TrendMicro :: AWS Summit Seoul 2019
AWS를 위한 도커, 컨테이너 (이미지) 환경 보안 방안 - 양희선 부장, TrendMicro :: AWS Summit Seoul 2019
 
천만사용자를 위한 AWS 클라우드 아키텍처 진화하기 – 문종민, AWS솔루션즈 아키텍트:: AWS Summit Online Korea 2020
천만사용자를 위한 AWS 클라우드 아키텍처 진화하기 – 문종민, AWS솔루션즈 아키텍트::  AWS Summit Online Korea 2020천만사용자를 위한 AWS 클라우드 아키텍처 진화하기 – 문종민, AWS솔루션즈 아키텍트::  AWS Summit Online Korea 2020
천만사용자를 위한 AWS 클라우드 아키텍처 진화하기 – 문종민, AWS솔루션즈 아키텍트:: AWS Summit Online Korea 2020
 
AWS 클라우드 이해하기-사례 중심 (정민정) - AWS 웨비나 시리즈
AWS 클라우드 이해하기-사례 중심 (정민정) - AWS 웨비나 시리즈AWS 클라우드 이해하기-사례 중심 (정민정) - AWS 웨비나 시리즈
AWS 클라우드 이해하기-사례 중심 (정민정) - AWS 웨비나 시리즈
 
KINX와 함께 하는 AWS Direct Connect 도입 - 남시우 매니저, KINX :: AWS Summit Seoul 2019
KINX와 함께 하는 AWS Direct Connect 도입 - 남시우 매니저, KINX :: AWS Summit Seoul 2019KINX와 함께 하는 AWS Direct Connect 도입 - 남시우 매니저, KINX :: AWS Summit Seoul 2019
KINX와 함께 하는 AWS Direct Connect 도입 - 남시우 매니저, KINX :: AWS Summit Seoul 2019
 
고급 클라우드 아키텍처 방법론- 양승도 솔루션즈 아키텍트:: AWS Cloud Track 2 Advanced
고급 클라우드 아키텍처 방법론- 양승도 솔루션즈 아키텍트:: AWS Cloud Track 2 Advanced고급 클라우드 아키텍처 방법론- 양승도 솔루션즈 아키텍트:: AWS Cloud Track 2 Advanced
고급 클라우드 아키텍처 방법론- 양승도 솔루션즈 아키텍트:: AWS Cloud Track 2 Advanced
 
AWS Summit Seoul 2023 | AWS에서 OpenTelemetry 기반의 애플리케이션 Observability 구축/활용하기
AWS Summit Seoul 2023 | AWS에서 OpenTelemetry 기반의 애플리케이션 Observability 구축/활용하기AWS Summit Seoul 2023 | AWS에서 OpenTelemetry 기반의 애플리케이션 Observability 구축/활용하기
AWS Summit Seoul 2023 | AWS에서 OpenTelemetry 기반의 애플리케이션 Observability 구축/활용하기
 
AWS System Manager: Parameter Store를 사용한 AWS 구성 데이터 관리 기법 - 정창훈, 당근마켓 / 김대권, ...
AWS System Manager: Parameter Store를 사용한 AWS 구성 데이터 관리 기법 - 정창훈, 당근마켓 / 김대권, ...AWS System Manager: Parameter Store를 사용한 AWS 구성 데이터 관리 기법 - 정창훈, 당근마켓 / 김대권, ...
AWS System Manager: Parameter Store를 사용한 AWS 구성 데이터 관리 기법 - 정창훈, 당근마켓 / 김대권, ...
 
AWS DirectConnect 구성 가이드 (김용우) - 파트너 웨비나 시리즈
AWS DirectConnect 구성 가이드 (김용우) -  파트너 웨비나 시리즈AWS DirectConnect 구성 가이드 (김용우) -  파트너 웨비나 시리즈
AWS DirectConnect 구성 가이드 (김용우) - 파트너 웨비나 시리즈
 
Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링
Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링
Amazon OpenSearch Deep dive - 내부구조, 성능최적화 그리고 스케일링
 
대용량 트래픽을 처리하는 최적의 서버리스 애플리케이션 - 안효빈, 구성완 AWS 솔루션즈 아키텍트 :: AWS Summit Seoul 2021
대용량 트래픽을 처리하는 최적의 서버리스 애플리케이션  - 안효빈, 구성완 AWS 솔루션즈 아키텍트 :: AWS Summit Seoul 2021대용량 트래픽을 처리하는 최적의 서버리스 애플리케이션  - 안효빈, 구성완 AWS 솔루션즈 아키텍트 :: AWS Summit Seoul 2021
대용량 트래픽을 처리하는 최적의 서버리스 애플리케이션 - 안효빈, 구성완 AWS 솔루션즈 아키텍트 :: AWS Summit Seoul 2021
 
금융 X 하이브리드 클라우드 플랫폼 - 한화생명 디지털 트랜스포메이션 전략 - 김나영 AWS 금융부문 사업개발 담당 / 박인규 AWS 금융...
금융 X 하이브리드 클라우드 플랫폼 - 한화생명 디지털 트랜스포메이션 전략 - 김나영 AWS 금융부문 사업개발 담당 / 박인규 AWS 금융...금융 X 하이브리드 클라우드 플랫폼 - 한화생명 디지털 트랜스포메이션 전략 - 김나영 AWS 금융부문 사업개발 담당 / 박인규 AWS 금융...
금융 X 하이브리드 클라우드 플랫폼 - 한화생명 디지털 트랜스포메이션 전략 - 김나영 AWS 금융부문 사업개발 담당 / 박인규 AWS 금융...
 
데브옵스 엔지니어를 위한 신규 운영 서비스 - 김필중, AWS 개발 전문 솔루션즈 아키텍트 / 김현민, 메가존클라우드 솔루션즈 아키텍트 :...
데브옵스 엔지니어를 위한 신규 운영 서비스 - 김필중, AWS 개발 전문 솔루션즈 아키텍트 / 김현민, 메가존클라우드 솔루션즈 아키텍트 :...데브옵스 엔지니어를 위한 신규 운영 서비스 - 김필중, AWS 개발 전문 솔루션즈 아키텍트 / 김현민, 메가존클라우드 솔루션즈 아키텍트 :...
데브옵스 엔지니어를 위한 신규 운영 서비스 - 김필중, AWS 개발 전문 솔루션즈 아키텍트 / 김현민, 메가존클라우드 솔루션즈 아키텍트 :...
 
프론트엔드 개발자를 위한 서버리스 - 윤석찬 (AWS 테크에반젤리스트)
프론트엔드 개발자를 위한 서버리스 - 윤석찬 (AWS 테크에반젤리스트)프론트엔드 개발자를 위한 서버리스 - 윤석찬 (AWS 테크에반젤리스트)
프론트엔드 개발자를 위한 서버리스 - 윤석찬 (AWS 테크에반젤리스트)
 
KB국민은행은 시작했다 -  쉽고 빠른 클라우드 거버넌스 적용 전략 - 강병억 AWS 솔루션즈 아키텍트 / 장강홍 클라우드플랫폼단 차장, ...
KB국민은행은 시작했다 -  쉽고 빠른 클라우드 거버넌스 적용 전략 - 강병억 AWS 솔루션즈 아키텍트 / 장강홍 클라우드플랫폼단 차장, ...KB국민은행은 시작했다 -  쉽고 빠른 클라우드 거버넌스 적용 전략 - 강병억 AWS 솔루션즈 아키텍트 / 장강홍 클라우드플랫폼단 차장, ...
KB국민은행은 시작했다 -  쉽고 빠른 클라우드 거버넌스 적용 전략 - 강병억 AWS 솔루션즈 아키텍트 / 장강홍 클라우드플랫폼단 차장, ...
 
멀티·하이브리드 클라우드 구축 전략 - 네이버비즈니스플랫폼 박기은 CTO
멀티·하이브리드 클라우드 구축 전략 - 네이버비즈니스플랫폼 박기은 CTO멀티·하이브리드 클라우드 구축 전략 - 네이버비즈니스플랫폼 박기은 CTO
멀티·하이브리드 클라우드 구축 전략 - 네이버비즈니스플랫폼 박기은 CTO
 
소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해
소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해
소프트웨어 개발 트랜드 및 MSA (마이크로 서비스 아키텍쳐)의 이해
 
AWS로 게임 런칭 준비하기 ::: 장준성, 채민관, AWS Game Master 온라인 시리즈 #4
AWS로 게임 런칭 준비하기 ::: 장준성, 채민관, AWS Game Master 온라인 시리즈 #4AWS로 게임 런칭 준비하기 ::: 장준성, 채민관, AWS Game Master 온라인 시리즈 #4
AWS로 게임 런칭 준비하기 ::: 장준성, 채민관, AWS Game Master 온라인 시리즈 #4
 

Similaire à 서버리스 앱 배포 자동화 (김필중, AWS 솔루션즈 아키텍트) :: AWS DevDay2018

고급 서버리스 앱 개발 자세히 살펴보기::김필중:: AWS Summit Seoul 2018
고급 서버리스 앱 개발 자세히 살펴보기::김필중:: AWS Summit Seoul 2018고급 서버리스 앱 개발 자세히 살펴보기::김필중:: AWS Summit Seoul 2018
고급 서버리스 앱 개발 자세히 살펴보기::김필중:: AWS Summit Seoul 2018Amazon Web Services Korea
 
서버리스 웹 애플리케이션 구축 방법론::김현수:: AWS Summit Seoul 2018
서버리스 웹 애플리케이션 구축 방법론::김현수:: AWS Summit Seoul 2018 서버리스 웹 애플리케이션 구축 방법론::김현수:: AWS Summit Seoul 2018
서버리스 웹 애플리케이션 구축 방법론::김현수:: AWS Summit Seoul 2018 Amazon Web Services Korea
 
프론트엔드 개발자가 혼자 AWS 기반 웹애플리케이션 만들기::박찬민::AWS Summit Seoul 2018
프론트엔드 개발자가 혼자 AWS 기반 웹애플리케이션 만들기::박찬민::AWS Summit Seoul 2018프론트엔드 개발자가 혼자 AWS 기반 웹애플리케이션 만들기::박찬민::AWS Summit Seoul 2018
프론트엔드 개발자가 혼자 AWS 기반 웹애플리케이션 만들기::박찬민::AWS Summit Seoul 2018Amazon Web Services Korea
 
서버리스 아키텍처 패턴 및 로그 처리를 위한 파이프라인 구축기 - 황윤상 솔루션즈 아키텍트, AWS / Matthew Han, SendBi...
서버리스 아키텍처 패턴 및 로그 처리를 위한 파이프라인 구축기 - 황윤상 솔루션즈 아키텍트, AWS / Matthew Han, SendBi...서버리스 아키텍처 패턴 및 로그 처리를 위한 파이프라인 구축기 - 황윤상 솔루션즈 아키텍트, AWS / Matthew Han, SendBi...
서버리스 아키텍처 패턴 및 로그 처리를 위한 파이프라인 구축기 - 황윤상 솔루션즈 아키텍트, AWS / Matthew Han, SendBi...Amazon Web Services Korea
 
컨테이너와 서버리스 기반 CI/CD 파이프라인 구성하기 - 김필중 솔루션즈 아키텍트, AWS / 강승욱 솔루션즈 아키텍트, AWS :: A...
컨테이너와 서버리스 기반 CI/CD 파이프라인 구성하기 - 김필중 솔루션즈 아키텍트, AWS / 강승욱 솔루션즈 아키텍트, AWS :: A...컨테이너와 서버리스 기반 CI/CD 파이프라인 구성하기 - 김필중 솔루션즈 아키텍트, AWS / 강승욱 솔루션즈 아키텍트, AWS :: A...
컨테이너와 서버리스 기반 CI/CD 파이프라인 구성하기 - 김필중 솔루션즈 아키텍트, AWS / 강승욱 솔루션즈 아키텍트, AWS :: A...Amazon Web Services Korea
 
스타트업 관점에서 본 AWS 선택과 집중 (한승호, 에멘탈) :: AWS DevDay 2018
스타트업 관점에서 본 AWS 선택과 집중 (한승호, 에멘탈) :: AWS DevDay 2018스타트업 관점에서 본 AWS 선택과 집중 (한승호, 에멘탈) :: AWS DevDay 2018
스타트업 관점에서 본 AWS 선택과 집중 (한승호, 에멘탈) :: AWS DevDay 2018Amazon Web Services Korea
 
Java 엔터프라이즈 어플리케이션을 효과적으로 마이크로서비스로 전환하기 (박선용, AWS 솔루션즈 아키텍트) :: AWS DevDay2018
Java 엔터프라이즈 어플리케이션을 효과적으로 마이크로서비스로 전환하기 (박선용, AWS 솔루션즈 아키텍트) :: AWS DevDay2018Java 엔터프라이즈 어플리케이션을 효과적으로 마이크로서비스로 전환하기 (박선용, AWS 솔루션즈 아키텍트) :: AWS DevDay2018
Java 엔터프라이즈 어플리케이션을 효과적으로 마이크로서비스로 전환하기 (박선용, AWS 솔루션즈 아키텍트) :: AWS DevDay2018Amazon Web Services Korea
 
AWS 서버리스 신규 서비스 총정리 - 트랙2, Community Day 2018 re:Invent 특집
AWS 서버리스 신규 서비스 총정리 - 트랙2, Community Day 2018 re:Invent 특집AWS 서버리스 신규 서비스 총정리 - 트랙2, Community Day 2018 re:Invent 특집
AWS 서버리스 신규 서비스 총정리 - 트랙2, Community Day 2018 re:Invent 특집AWSKRUG - AWS한국사용자모임
 
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
 
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 lambda 와 함께 서버리스 서비스 만들기
Aws lambda 와 함께 서버리스 서비스 만들기Aws lambda 와 함께 서버리스 서비스 만들기
Aws lambda 와 함께 서버리스 서비스 만들기Junyoung Sung
 
하이브리드 모바일 어플리케이션 개발을 위한 새로운 도구, AWS Amplify (강정희, AWS 솔루션즈 아키텍트) :: AWS DevDa...
하이브리드 모바일 어플리케이션 개발을 위한 새로운 도구, AWS Amplify (강정희, AWS 솔루션즈 아키텍트) :: AWS DevDa...하이브리드 모바일 어플리케이션 개발을 위한 새로운 도구, AWS Amplify (강정희, AWS 솔루션즈 아키텍트) :: AWS DevDa...
하이브리드 모바일 어플리케이션 개발을 위한 새로운 도구, AWS Amplify (강정희, AWS 솔루션즈 아키텍트) :: AWS DevDa...Amazon Web Services Korea
 
AWS와 함께하는 스타트업 여정 AWS Activate 프로그램/스타트업에게 가장 사랑받는 AWS 서비스들 – 김민지, 박진우 :: AWS...
AWS와 함께하는 스타트업 여정 AWS Activate 프로그램/스타트업에게 가장 사랑받는 AWS 서비스들 – 김민지, 박진우 :: AWS...AWS와 함께하는 스타트업 여정 AWS Activate 프로그램/스타트업에게 가장 사랑받는 AWS 서비스들 – 김민지, 박진우 :: AWS...
AWS와 함께하는 스타트업 여정 AWS Activate 프로그램/스타트업에게 가장 사랑받는 AWS 서비스들 – 김민지, 박진우 :: AWS...Amazon Web Services Korea
 
[AWS Builders 온라인 시리즈] 쉽게 확장 가능한 서버리스 웹 어플리케이션 만들기 - 황윤상, AWS 솔루션즈 아키텍트
[AWS Builders 온라인 시리즈] 쉽게 확장 가능한 서버리스 웹 어플리케이션 만들기 - 황윤상, AWS 솔루션즈 아키텍트[AWS Builders 온라인 시리즈] 쉽게 확장 가능한 서버리스 웹 어플리케이션 만들기 - 황윤상, AWS 솔루션즈 아키텍트
[AWS Builders 온라인 시리즈] 쉽게 확장 가능한 서버리스 웹 어플리케이션 만들기 - 황윤상, AWS 솔루션즈 아키텍트Amazon Web Services Korea
 
천만 사용자를 위한 AWS 클라우드 아키텍처 진화하기::이창수::AWS Summit Seoul 2018
천만 사용자를 위한 AWS 클라우드 아키텍처 진화하기::이창수::AWS Summit Seoul 2018천만 사용자를 위한 AWS 클라우드 아키텍처 진화하기::이창수::AWS Summit Seoul 2018
천만 사용자를 위한 AWS 클라우드 아키텍처 진화하기::이창수::AWS Summit Seoul 2018Amazon Web Services Korea
 
[애플리케이션 현대화 및 개발] 클라우드를 통한 현대적 애플리케이션 디자인 및 구축 패턴 - 윤석찬, AWS 수석 테크 에반젤리스트
[애플리케이션 현대화 및 개발] 클라우드를 통한 현대적 애플리케이션 디자인 및 구축 패턴 - 윤석찬, AWS 수석 테크 에반젤리스트[애플리케이션 현대화 및 개발] 클라우드를 통한 현대적 애플리케이션 디자인 및 구축 패턴 - 윤석찬, AWS 수석 테크 에반젤리스트
[애플리케이션 현대화 및 개발] 클라우드를 통한 현대적 애플리케이션 디자인 및 구축 패턴 - 윤석찬, AWS 수석 테크 에반젤리스트Amazon Web Services Korea
 
[AWS Builders] AWS 서버리스 서비스를 활용한 웹 애플리케이션 구축 및 배포 방법 - 정창호, AWS 솔루션즈 아키텍트
[AWS Builders] AWS 서버리스 서비스를 활용한 웹 애플리케이션 구축 및 배포 방법 - 정창호, AWS 솔루션즈 아키텍트[AWS Builders] AWS 서버리스 서비스를 활용한 웹 애플리케이션 구축 및 배포 방법 - 정창호, AWS 솔루션즈 아키텍트
[AWS Builders] AWS 서버리스 서비스를 활용한 웹 애플리케이션 구축 및 배포 방법 - 정창호, AWS 솔루션즈 아키텍트Amazon Web Services Korea
 
AWS와 함께하는 클라우드 컴퓨팅 - 강철, AWS 어카운트 매니저 :: AWS Builders 100
AWS와 함께하는 클라우드 컴퓨팅 - 강철, AWS 어카운트 매니저 :: AWS Builders 100AWS와 함께하는 클라우드 컴퓨팅 - 강철, AWS 어카운트 매니저 :: AWS Builders 100
AWS와 함께하는 클라우드 컴퓨팅 - 강철, AWS 어카운트 매니저 :: AWS Builders 100Amazon Web Services Korea
 
[AWS Builders] AWS와 함께하는 클라우드 컴퓨팅
[AWS Builders] AWS와 함께하는 클라우드 컴퓨팅[AWS Builders] AWS와 함께하는 클라우드 컴퓨팅
[AWS Builders] AWS와 함께하는 클라우드 컴퓨팅Amazon Web Services Korea
 
강의 1 - AWS 클라우드 개념 (조재구 테크니컬 트레이너, AWS) :: AWSome Day 온라인 컨퍼런스 2018
강의 1 - AWS 클라우드 개념 (조재구 테크니컬 트레이너, AWS) :: AWSome Day 온라인 컨퍼런스 2018강의 1 - AWS 클라우드 개념 (조재구 테크니컬 트레이너, AWS) :: AWSome Day 온라인 컨퍼런스 2018
강의 1 - AWS 클라우드 개념 (조재구 테크니컬 트레이너, AWS) :: AWSome Day 온라인 컨퍼런스 2018Amazon Web Services Korea
 

Similaire à 서버리스 앱 배포 자동화 (김필중, AWS 솔루션즈 아키텍트) :: AWS DevDay2018 (20)

고급 서버리스 앱 개발 자세히 살펴보기::김필중:: AWS Summit Seoul 2018
고급 서버리스 앱 개발 자세히 살펴보기::김필중:: AWS Summit Seoul 2018고급 서버리스 앱 개발 자세히 살펴보기::김필중:: AWS Summit Seoul 2018
고급 서버리스 앱 개발 자세히 살펴보기::김필중:: AWS Summit Seoul 2018
 
서버리스 웹 애플리케이션 구축 방법론::김현수:: AWS Summit Seoul 2018
서버리스 웹 애플리케이션 구축 방법론::김현수:: AWS Summit Seoul 2018 서버리스 웹 애플리케이션 구축 방법론::김현수:: AWS Summit Seoul 2018
서버리스 웹 애플리케이션 구축 방법론::김현수:: AWS Summit Seoul 2018
 
프론트엔드 개발자가 혼자 AWS 기반 웹애플리케이션 만들기::박찬민::AWS Summit Seoul 2018
프론트엔드 개발자가 혼자 AWS 기반 웹애플리케이션 만들기::박찬민::AWS Summit Seoul 2018프론트엔드 개발자가 혼자 AWS 기반 웹애플리케이션 만들기::박찬민::AWS Summit Seoul 2018
프론트엔드 개발자가 혼자 AWS 기반 웹애플리케이션 만들기::박찬민::AWS Summit Seoul 2018
 
서버리스 아키텍처 패턴 및 로그 처리를 위한 파이프라인 구축기 - 황윤상 솔루션즈 아키텍트, AWS / Matthew Han, SendBi...
서버리스 아키텍처 패턴 및 로그 처리를 위한 파이프라인 구축기 - 황윤상 솔루션즈 아키텍트, AWS / Matthew Han, SendBi...서버리스 아키텍처 패턴 및 로그 처리를 위한 파이프라인 구축기 - 황윤상 솔루션즈 아키텍트, AWS / Matthew Han, SendBi...
서버리스 아키텍처 패턴 및 로그 처리를 위한 파이프라인 구축기 - 황윤상 솔루션즈 아키텍트, AWS / Matthew Han, SendBi...
 
컨테이너와 서버리스 기반 CI/CD 파이프라인 구성하기 - 김필중 솔루션즈 아키텍트, AWS / 강승욱 솔루션즈 아키텍트, AWS :: A...
컨테이너와 서버리스 기반 CI/CD 파이프라인 구성하기 - 김필중 솔루션즈 아키텍트, AWS / 강승욱 솔루션즈 아키텍트, AWS :: A...컨테이너와 서버리스 기반 CI/CD 파이프라인 구성하기 - 김필중 솔루션즈 아키텍트, AWS / 강승욱 솔루션즈 아키텍트, AWS :: A...
컨테이너와 서버리스 기반 CI/CD 파이프라인 구성하기 - 김필중 솔루션즈 아키텍트, AWS / 강승욱 솔루션즈 아키텍트, AWS :: A...
 
스타트업 관점에서 본 AWS 선택과 집중 (한승호, 에멘탈) :: AWS DevDay 2018
스타트업 관점에서 본 AWS 선택과 집중 (한승호, 에멘탈) :: AWS DevDay 2018스타트업 관점에서 본 AWS 선택과 집중 (한승호, 에멘탈) :: AWS DevDay 2018
스타트업 관점에서 본 AWS 선택과 집중 (한승호, 에멘탈) :: AWS DevDay 2018
 
Java 엔터프라이즈 어플리케이션을 효과적으로 마이크로서비스로 전환하기 (박선용, AWS 솔루션즈 아키텍트) :: AWS DevDay2018
Java 엔터프라이즈 어플리케이션을 효과적으로 마이크로서비스로 전환하기 (박선용, AWS 솔루션즈 아키텍트) :: AWS DevDay2018Java 엔터프라이즈 어플리케이션을 효과적으로 마이크로서비스로 전환하기 (박선용, AWS 솔루션즈 아키텍트) :: AWS DevDay2018
Java 엔터프라이즈 어플리케이션을 효과적으로 마이크로서비스로 전환하기 (박선용, AWS 솔루션즈 아키텍트) :: AWS DevDay2018
 
AWS 서버리스 신규 서비스 총정리 - 트랙2, Community Day 2018 re:Invent 특집
AWS 서버리스 신규 서비스 총정리 - 트랙2, Community Day 2018 re:Invent 특집AWS 서버리스 신규 서비스 총정리 - 트랙2, Community Day 2018 re:Invent 특집
AWS 서버리스 신규 서비스 총정리 - 트랙2, Community Day 2018 re:Invent 특집
 
On-Premise 기반서비스 클라우드 전환기 -DevSecOps 도입을통한 유연한 서비스 개발 및 운영::박준상::AWS Summit S...
On-Premise 기반서비스 클라우드 전환기 -DevSecOps 도입을통한 유연한 서비스 개발 및 운영::박준상::AWS Summit S...On-Premise 기반서비스 클라우드 전환기 -DevSecOps 도입을통한 유연한 서비스 개발 및 운영::박준상::AWS Summit S...
On-Premise 기반서비스 클라우드 전환기 -DevSecOps 도입을통한 유연한 서비스 개발 및 운영::박준상::AWS Summit S...
 
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 lambda 와 함께 서버리스 서비스 만들기
Aws lambda 와 함께 서버리스 서비스 만들기Aws lambda 와 함께 서버리스 서비스 만들기
Aws lambda 와 함께 서버리스 서비스 만들기
 
하이브리드 모바일 어플리케이션 개발을 위한 새로운 도구, AWS Amplify (강정희, AWS 솔루션즈 아키텍트) :: AWS DevDa...
하이브리드 모바일 어플리케이션 개발을 위한 새로운 도구, AWS Amplify (강정희, AWS 솔루션즈 아키텍트) :: AWS DevDa...하이브리드 모바일 어플리케이션 개발을 위한 새로운 도구, AWS Amplify (강정희, AWS 솔루션즈 아키텍트) :: AWS DevDa...
하이브리드 모바일 어플리케이션 개발을 위한 새로운 도구, AWS Amplify (강정희, AWS 솔루션즈 아키텍트) :: AWS DevDa...
 
AWS와 함께하는 스타트업 여정 AWS Activate 프로그램/스타트업에게 가장 사랑받는 AWS 서비스들 – 김민지, 박진우 :: AWS...
AWS와 함께하는 스타트업 여정 AWS Activate 프로그램/스타트업에게 가장 사랑받는 AWS 서비스들 – 김민지, 박진우 :: AWS...AWS와 함께하는 스타트업 여정 AWS Activate 프로그램/스타트업에게 가장 사랑받는 AWS 서비스들 – 김민지, 박진우 :: AWS...
AWS와 함께하는 스타트업 여정 AWS Activate 프로그램/스타트업에게 가장 사랑받는 AWS 서비스들 – 김민지, 박진우 :: AWS...
 
[AWS Builders 온라인 시리즈] 쉽게 확장 가능한 서버리스 웹 어플리케이션 만들기 - 황윤상, AWS 솔루션즈 아키텍트
[AWS Builders 온라인 시리즈] 쉽게 확장 가능한 서버리스 웹 어플리케이션 만들기 - 황윤상, AWS 솔루션즈 아키텍트[AWS Builders 온라인 시리즈] 쉽게 확장 가능한 서버리스 웹 어플리케이션 만들기 - 황윤상, AWS 솔루션즈 아키텍트
[AWS Builders 온라인 시리즈] 쉽게 확장 가능한 서버리스 웹 어플리케이션 만들기 - 황윤상, AWS 솔루션즈 아키텍트
 
천만 사용자를 위한 AWS 클라우드 아키텍처 진화하기::이창수::AWS Summit Seoul 2018
천만 사용자를 위한 AWS 클라우드 아키텍처 진화하기::이창수::AWS Summit Seoul 2018천만 사용자를 위한 AWS 클라우드 아키텍처 진화하기::이창수::AWS Summit Seoul 2018
천만 사용자를 위한 AWS 클라우드 아키텍처 진화하기::이창수::AWS Summit Seoul 2018
 
[애플리케이션 현대화 및 개발] 클라우드를 통한 현대적 애플리케이션 디자인 및 구축 패턴 - 윤석찬, AWS 수석 테크 에반젤리스트
[애플리케이션 현대화 및 개발] 클라우드를 통한 현대적 애플리케이션 디자인 및 구축 패턴 - 윤석찬, AWS 수석 테크 에반젤리스트[애플리케이션 현대화 및 개발] 클라우드를 통한 현대적 애플리케이션 디자인 및 구축 패턴 - 윤석찬, AWS 수석 테크 에반젤리스트
[애플리케이션 현대화 및 개발] 클라우드를 통한 현대적 애플리케이션 디자인 및 구축 패턴 - 윤석찬, AWS 수석 테크 에반젤리스트
 
[AWS Builders] AWS 서버리스 서비스를 활용한 웹 애플리케이션 구축 및 배포 방법 - 정창호, AWS 솔루션즈 아키텍트
[AWS Builders] AWS 서버리스 서비스를 활용한 웹 애플리케이션 구축 및 배포 방법 - 정창호, AWS 솔루션즈 아키텍트[AWS Builders] AWS 서버리스 서비스를 활용한 웹 애플리케이션 구축 및 배포 방법 - 정창호, AWS 솔루션즈 아키텍트
[AWS Builders] AWS 서버리스 서비스를 활용한 웹 애플리케이션 구축 및 배포 방법 - 정창호, AWS 솔루션즈 아키텍트
 
AWS와 함께하는 클라우드 컴퓨팅 - 강철, AWS 어카운트 매니저 :: AWS Builders 100
AWS와 함께하는 클라우드 컴퓨팅 - 강철, AWS 어카운트 매니저 :: AWS Builders 100AWS와 함께하는 클라우드 컴퓨팅 - 강철, AWS 어카운트 매니저 :: AWS Builders 100
AWS와 함께하는 클라우드 컴퓨팅 - 강철, AWS 어카운트 매니저 :: AWS Builders 100
 
[AWS Builders] AWS와 함께하는 클라우드 컴퓨팅
[AWS Builders] AWS와 함께하는 클라우드 컴퓨팅[AWS Builders] AWS와 함께하는 클라우드 컴퓨팅
[AWS Builders] AWS와 함께하는 클라우드 컴퓨팅
 
강의 1 - AWS 클라우드 개념 (조재구 테크니컬 트레이너, AWS) :: AWSome Day 온라인 컨퍼런스 2018
강의 1 - AWS 클라우드 개념 (조재구 테크니컬 트레이너, AWS) :: AWSome Day 온라인 컨퍼런스 2018강의 1 - AWS 클라우드 개념 (조재구 테크니컬 트레이너, AWS) :: AWSome Day 온라인 컨퍼런스 2018
강의 1 - AWS 클라우드 개념 (조재구 테크니컬 트레이너, AWS) :: AWSome Day 온라인 컨퍼런스 2018
 

Plus de Amazon Web Services Korea

AWS Modern Infra with Storage Roadshow 2023 - Day 2
AWS Modern Infra with Storage Roadshow 2023 - Day 2AWS Modern Infra with Storage Roadshow 2023 - Day 2
AWS Modern Infra with Storage Roadshow 2023 - Day 2Amazon Web Services Korea
 
AWS Modern Infra with Storage Roadshow 2023 - Day 1
AWS Modern Infra with Storage Roadshow 2023 - Day 1AWS Modern Infra with Storage Roadshow 2023 - Day 1
AWS Modern Infra with Storage Roadshow 2023 - Day 1Amazon Web Services Korea
 
사례로 알아보는 Database Migration Service : 데이터베이스 및 데이터 이관, 통합, 분리, 분석의 도구 - 발표자: ...
사례로 알아보는 Database Migration Service : 데이터베이스 및 데이터 이관, 통합, 분리, 분석의 도구 - 발표자: ...사례로 알아보는 Database Migration Service : 데이터베이스 및 데이터 이관, 통합, 분리, 분석의 도구 - 발표자: ...
사례로 알아보는 Database Migration Service : 데이터베이스 및 데이터 이관, 통합, 분리, 분석의 도구 - 발표자: ...Amazon Web Services Korea
 
Amazon DocumentDB - Architecture 및 Best Practice (Level 200) - 발표자: 장동훈, Sr. ...
Amazon DocumentDB - Architecture 및 Best Practice (Level 200) - 발표자: 장동훈, Sr. ...Amazon DocumentDB - Architecture 및 Best Practice (Level 200) - 발표자: 장동훈, Sr. ...
Amazon DocumentDB - Architecture 및 Best Practice (Level 200) - 발표자: 장동훈, Sr. ...Amazon Web Services Korea
 
Amazon Elasticache - Fully managed, Redis & Memcached Compatible Service (Lev...
Amazon Elasticache - Fully managed, Redis & Memcached Compatible Service (Lev...Amazon Elasticache - Fully managed, Redis & Memcached Compatible Service (Lev...
Amazon Elasticache - Fully managed, Redis & Memcached Compatible Service (Lev...Amazon Web Services Korea
 
Internal Architecture of Amazon Aurora (Level 400) - 발표자: 정달영, APAC RDS Speci...
Internal Architecture of Amazon Aurora (Level 400) - 발표자: 정달영, APAC RDS Speci...Internal Architecture of Amazon Aurora (Level 400) - 발표자: 정달영, APAC RDS Speci...
Internal Architecture of Amazon Aurora (Level 400) - 발표자: 정달영, APAC RDS Speci...Amazon Web Services Korea
 
[Keynote] 슬기로운 AWS 데이터베이스 선택하기 - 발표자: 강민석, Korea Database SA Manager, WWSO, A...
[Keynote] 슬기로운 AWS 데이터베이스 선택하기 - 발표자: 강민석, Korea Database SA Manager, WWSO, A...[Keynote] 슬기로운 AWS 데이터베이스 선택하기 - 발표자: 강민석, Korea Database SA Manager, WWSO, A...
[Keynote] 슬기로운 AWS 데이터베이스 선택하기 - 발표자: 강민석, Korea Database SA Manager, WWSO, A...Amazon Web Services Korea
 
Demystify Streaming on AWS - 발표자: 이종혁, Sr Analytics Specialist, WWSO, AWS :::...
Demystify Streaming on AWS - 발표자: 이종혁, Sr Analytics Specialist, WWSO, AWS :::...Demystify Streaming on AWS - 발표자: 이종혁, Sr Analytics Specialist, WWSO, AWS :::...
Demystify Streaming on AWS - 발표자: 이종혁, Sr Analytics Specialist, WWSO, AWS :::...Amazon Web Services Korea
 
Amazon EMR - Enhancements on Cost/Performance, Serverless - 발표자: 김기영, Sr Anal...
Amazon EMR - Enhancements on Cost/Performance, Serverless - 발표자: 김기영, Sr Anal...Amazon EMR - Enhancements on Cost/Performance, Serverless - 발표자: 김기영, Sr Anal...
Amazon EMR - Enhancements on Cost/Performance, Serverless - 발표자: 김기영, Sr Anal...Amazon Web Services Korea
 
Amazon OpenSearch - Use Cases, Security/Observability, Serverless and Enhance...
Amazon OpenSearch - Use Cases, Security/Observability, Serverless and Enhance...Amazon OpenSearch - Use Cases, Security/Observability, Serverless and Enhance...
Amazon OpenSearch - Use Cases, Security/Observability, Serverless and Enhance...Amazon Web Services Korea
 
Enabling Agility with Data Governance - 발표자: 김성연, Analytics Specialist, WWSO,...
Enabling Agility with Data Governance - 발표자: 김성연, Analytics Specialist, WWSO,...Enabling Agility with Data Governance - 발표자: 김성연, Analytics Specialist, WWSO,...
Enabling Agility with Data Governance - 발표자: 김성연, Analytics Specialist, WWSO,...Amazon Web Services Korea
 
Amazon Redshift Deep Dive - Serverless, Streaming, ML, Auto Copy (New feature...
Amazon Redshift Deep Dive - Serverless, Streaming, ML, Auto Copy (New feature...Amazon Redshift Deep Dive - Serverless, Streaming, ML, Auto Copy (New feature...
Amazon Redshift Deep Dive - Serverless, Streaming, ML, Auto Copy (New feature...Amazon Web Services Korea
 
From Insights to Action, How to build and maintain a Data Driven Organization...
From Insights to Action, How to build and maintain a Data Driven Organization...From Insights to Action, How to build and maintain a Data Driven Organization...
From Insights to Action, How to build and maintain a Data Driven Organization...Amazon Web Services Korea
 
[Keynote] Accelerating Business Outcomes with AWS Data - 발표자: Saeed Gharadagh...
[Keynote] Accelerating Business Outcomes with AWS Data - 발표자: Saeed Gharadagh...[Keynote] Accelerating Business Outcomes with AWS Data - 발표자: Saeed Gharadagh...
[Keynote] Accelerating Business Outcomes with AWS Data - 발표자: Saeed Gharadagh...Amazon Web Services Korea
 
Amazon DynamoDB - Use Cases and Cost Optimization - 발표자: 이혁, DynamoDB Special...
Amazon DynamoDB - Use Cases and Cost Optimization - 발표자: 이혁, DynamoDB Special...Amazon DynamoDB - Use Cases and Cost Optimization - 발표자: 이혁, DynamoDB Special...
Amazon DynamoDB - Use Cases and Cost Optimization - 발표자: 이혁, DynamoDB Special...Amazon Web Services Korea
 
LG전자 - Amazon Aurora 및 RDS 블루/그린 배포를 이용한 데이터베이스 업그레이드 안정성 확보 - 발표자: 이은경 책임, L...
LG전자 - Amazon Aurora 및 RDS 블루/그린 배포를 이용한 데이터베이스 업그레이드 안정성 확보 - 발표자: 이은경 책임, L...LG전자 - Amazon Aurora 및 RDS 블루/그린 배포를 이용한 데이터베이스 업그레이드 안정성 확보 - 발표자: 이은경 책임, L...
LG전자 - Amazon Aurora 및 RDS 블루/그린 배포를 이용한 데이터베이스 업그레이드 안정성 확보 - 발표자: 이은경 책임, L...Amazon Web Services Korea
 
KB국민카드 - 클라우드 기반 분석 플랫폼 혁신 여정 - 발표자: 박창용 과장, 데이터전략본부, AI혁신부, KB카드│강병억, Soluti...
KB국민카드 - 클라우드 기반 분석 플랫폼 혁신 여정 - 발표자: 박창용 과장, 데이터전략본부, AI혁신부, KB카드│강병억, Soluti...KB국민카드 - 클라우드 기반 분석 플랫폼 혁신 여정 - 발표자: 박창용 과장, 데이터전략본부, AI혁신부, KB카드│강병억, Soluti...
KB국민카드 - 클라우드 기반 분석 플랫폼 혁신 여정 - 발표자: 박창용 과장, 데이터전략본부, AI혁신부, KB카드│강병억, Soluti...Amazon Web Services Korea
 
SK Telecom - 망관리 프로젝트 TANGO의 오픈소스 데이터베이스 전환 여정 - 발표자 : 박승전, Project Manager, ...
SK Telecom - 망관리 프로젝트 TANGO의 오픈소스 데이터베이스 전환 여정 - 발표자 : 박승전, Project Manager, ...SK Telecom - 망관리 프로젝트 TANGO의 오픈소스 데이터베이스 전환 여정 - 발표자 : 박승전, Project Manager, ...
SK Telecom - 망관리 프로젝트 TANGO의 오픈소스 데이터베이스 전환 여정 - 발표자 : 박승전, Project Manager, ...Amazon Web Services Korea
 
코리안리 - 데이터 분석 플랫폼 구축 여정, 그 시작과 과제 - 발표자: 김석기 그룹장, 데이터비즈니스센터, 메가존클라우드 ::: AWS ...
코리안리 - 데이터 분석 플랫폼 구축 여정, 그 시작과 과제 - 발표자: 김석기 그룹장, 데이터비즈니스센터, 메가존클라우드 ::: AWS ...코리안리 - 데이터 분석 플랫폼 구축 여정, 그 시작과 과제 - 발표자: 김석기 그룹장, 데이터비즈니스센터, 메가존클라우드 ::: AWS ...
코리안리 - 데이터 분석 플랫폼 구축 여정, 그 시작과 과제 - 발표자: 김석기 그룹장, 데이터비즈니스센터, 메가존클라우드 ::: AWS ...Amazon Web Services Korea
 
LG 이노텍 - Amazon Redshift Serverless를 활용한 데이터 분석 플랫폼 혁신 과정 - 발표자: 유재상 선임, LG이노...
LG 이노텍 - Amazon Redshift Serverless를 활용한 데이터 분석 플랫폼 혁신 과정 - 발표자: 유재상 선임, LG이노...LG 이노텍 - Amazon Redshift Serverless를 활용한 데이터 분석 플랫폼 혁신 과정 - 발표자: 유재상 선임, LG이노...
LG 이노텍 - Amazon Redshift Serverless를 활용한 데이터 분석 플랫폼 혁신 과정 - 발표자: 유재상 선임, LG이노...Amazon Web Services Korea
 

Plus de Amazon Web Services Korea (20)

AWS Modern Infra with Storage Roadshow 2023 - Day 2
AWS Modern Infra with Storage Roadshow 2023 - Day 2AWS Modern Infra with Storage Roadshow 2023 - Day 2
AWS Modern Infra with Storage Roadshow 2023 - Day 2
 
AWS Modern Infra with Storage Roadshow 2023 - Day 1
AWS Modern Infra with Storage Roadshow 2023 - Day 1AWS Modern Infra with Storage Roadshow 2023 - Day 1
AWS Modern Infra with Storage Roadshow 2023 - Day 1
 
사례로 알아보는 Database Migration Service : 데이터베이스 및 데이터 이관, 통합, 분리, 분석의 도구 - 발표자: ...
사례로 알아보는 Database Migration Service : 데이터베이스 및 데이터 이관, 통합, 분리, 분석의 도구 - 발표자: ...사례로 알아보는 Database Migration Service : 데이터베이스 및 데이터 이관, 통합, 분리, 분석의 도구 - 발표자: ...
사례로 알아보는 Database Migration Service : 데이터베이스 및 데이터 이관, 통합, 분리, 분석의 도구 - 발표자: ...
 
Amazon DocumentDB - Architecture 및 Best Practice (Level 200) - 발표자: 장동훈, Sr. ...
Amazon DocumentDB - Architecture 및 Best Practice (Level 200) - 발표자: 장동훈, Sr. ...Amazon DocumentDB - Architecture 및 Best Practice (Level 200) - 발표자: 장동훈, Sr. ...
Amazon DocumentDB - Architecture 및 Best Practice (Level 200) - 발표자: 장동훈, Sr. ...
 
Amazon Elasticache - Fully managed, Redis & Memcached Compatible Service (Lev...
Amazon Elasticache - Fully managed, Redis & Memcached Compatible Service (Lev...Amazon Elasticache - Fully managed, Redis & Memcached Compatible Service (Lev...
Amazon Elasticache - Fully managed, Redis & Memcached Compatible Service (Lev...
 
Internal Architecture of Amazon Aurora (Level 400) - 발표자: 정달영, APAC RDS Speci...
Internal Architecture of Amazon Aurora (Level 400) - 발표자: 정달영, APAC RDS Speci...Internal Architecture of Amazon Aurora (Level 400) - 발표자: 정달영, APAC RDS Speci...
Internal Architecture of Amazon Aurora (Level 400) - 발표자: 정달영, APAC RDS Speci...
 
[Keynote] 슬기로운 AWS 데이터베이스 선택하기 - 발표자: 강민석, Korea Database SA Manager, WWSO, A...
[Keynote] 슬기로운 AWS 데이터베이스 선택하기 - 발표자: 강민석, Korea Database SA Manager, WWSO, A...[Keynote] 슬기로운 AWS 데이터베이스 선택하기 - 발표자: 강민석, Korea Database SA Manager, WWSO, A...
[Keynote] 슬기로운 AWS 데이터베이스 선택하기 - 발표자: 강민석, Korea Database SA Manager, WWSO, A...
 
Demystify Streaming on AWS - 발표자: 이종혁, Sr Analytics Specialist, WWSO, AWS :::...
Demystify Streaming on AWS - 발표자: 이종혁, Sr Analytics Specialist, WWSO, AWS :::...Demystify Streaming on AWS - 발표자: 이종혁, Sr Analytics Specialist, WWSO, AWS :::...
Demystify Streaming on AWS - 발표자: 이종혁, Sr Analytics Specialist, WWSO, AWS :::...
 
Amazon EMR - Enhancements on Cost/Performance, Serverless - 발표자: 김기영, Sr Anal...
Amazon EMR - Enhancements on Cost/Performance, Serverless - 발표자: 김기영, Sr Anal...Amazon EMR - Enhancements on Cost/Performance, Serverless - 발표자: 김기영, Sr Anal...
Amazon EMR - Enhancements on Cost/Performance, Serverless - 발표자: 김기영, Sr Anal...
 
Amazon OpenSearch - Use Cases, Security/Observability, Serverless and Enhance...
Amazon OpenSearch - Use Cases, Security/Observability, Serverless and Enhance...Amazon OpenSearch - Use Cases, Security/Observability, Serverless and Enhance...
Amazon OpenSearch - Use Cases, Security/Observability, Serverless and Enhance...
 
Enabling Agility with Data Governance - 발표자: 김성연, Analytics Specialist, WWSO,...
Enabling Agility with Data Governance - 발표자: 김성연, Analytics Specialist, WWSO,...Enabling Agility with Data Governance - 발표자: 김성연, Analytics Specialist, WWSO,...
Enabling Agility with Data Governance - 발표자: 김성연, Analytics Specialist, WWSO,...
 
Amazon Redshift Deep Dive - Serverless, Streaming, ML, Auto Copy (New feature...
Amazon Redshift Deep Dive - Serverless, Streaming, ML, Auto Copy (New feature...Amazon Redshift Deep Dive - Serverless, Streaming, ML, Auto Copy (New feature...
Amazon Redshift Deep Dive - Serverless, Streaming, ML, Auto Copy (New feature...
 
From Insights to Action, How to build and maintain a Data Driven Organization...
From Insights to Action, How to build and maintain a Data Driven Organization...From Insights to Action, How to build and maintain a Data Driven Organization...
From Insights to Action, How to build and maintain a Data Driven Organization...
 
[Keynote] Accelerating Business Outcomes with AWS Data - 발표자: Saeed Gharadagh...
[Keynote] Accelerating Business Outcomes with AWS Data - 발표자: Saeed Gharadagh...[Keynote] Accelerating Business Outcomes with AWS Data - 발표자: Saeed Gharadagh...
[Keynote] Accelerating Business Outcomes with AWS Data - 발표자: Saeed Gharadagh...
 
Amazon DynamoDB - Use Cases and Cost Optimization - 발표자: 이혁, DynamoDB Special...
Amazon DynamoDB - Use Cases and Cost Optimization - 발표자: 이혁, DynamoDB Special...Amazon DynamoDB - Use Cases and Cost Optimization - 발표자: 이혁, DynamoDB Special...
Amazon DynamoDB - Use Cases and Cost Optimization - 발표자: 이혁, DynamoDB Special...
 
LG전자 - Amazon Aurora 및 RDS 블루/그린 배포를 이용한 데이터베이스 업그레이드 안정성 확보 - 발표자: 이은경 책임, L...
LG전자 - Amazon Aurora 및 RDS 블루/그린 배포를 이용한 데이터베이스 업그레이드 안정성 확보 - 발표자: 이은경 책임, L...LG전자 - Amazon Aurora 및 RDS 블루/그린 배포를 이용한 데이터베이스 업그레이드 안정성 확보 - 발표자: 이은경 책임, L...
LG전자 - Amazon Aurora 및 RDS 블루/그린 배포를 이용한 데이터베이스 업그레이드 안정성 확보 - 발표자: 이은경 책임, L...
 
KB국민카드 - 클라우드 기반 분석 플랫폼 혁신 여정 - 발표자: 박창용 과장, 데이터전략본부, AI혁신부, KB카드│강병억, Soluti...
KB국민카드 - 클라우드 기반 분석 플랫폼 혁신 여정 - 발표자: 박창용 과장, 데이터전략본부, AI혁신부, KB카드│강병억, Soluti...KB국민카드 - 클라우드 기반 분석 플랫폼 혁신 여정 - 발표자: 박창용 과장, 데이터전략본부, AI혁신부, KB카드│강병억, Soluti...
KB국민카드 - 클라우드 기반 분석 플랫폼 혁신 여정 - 발표자: 박창용 과장, 데이터전략본부, AI혁신부, KB카드│강병억, Soluti...
 
SK Telecom - 망관리 프로젝트 TANGO의 오픈소스 데이터베이스 전환 여정 - 발표자 : 박승전, Project Manager, ...
SK Telecom - 망관리 프로젝트 TANGO의 오픈소스 데이터베이스 전환 여정 - 발표자 : 박승전, Project Manager, ...SK Telecom - 망관리 프로젝트 TANGO의 오픈소스 데이터베이스 전환 여정 - 발표자 : 박승전, Project Manager, ...
SK Telecom - 망관리 프로젝트 TANGO의 오픈소스 데이터베이스 전환 여정 - 발표자 : 박승전, Project Manager, ...
 
코리안리 - 데이터 분석 플랫폼 구축 여정, 그 시작과 과제 - 발표자: 김석기 그룹장, 데이터비즈니스센터, 메가존클라우드 ::: AWS ...
코리안리 - 데이터 분석 플랫폼 구축 여정, 그 시작과 과제 - 발표자: 김석기 그룹장, 데이터비즈니스센터, 메가존클라우드 ::: AWS ...코리안리 - 데이터 분석 플랫폼 구축 여정, 그 시작과 과제 - 발표자: 김석기 그룹장, 데이터비즈니스센터, 메가존클라우드 ::: AWS ...
코리안리 - 데이터 분석 플랫폼 구축 여정, 그 시작과 과제 - 발표자: 김석기 그룹장, 데이터비즈니스센터, 메가존클라우드 ::: AWS ...
 
LG 이노텍 - Amazon Redshift Serverless를 활용한 데이터 분석 플랫폼 혁신 과정 - 발표자: 유재상 선임, LG이노...
LG 이노텍 - Amazon Redshift Serverless를 활용한 데이터 분석 플랫폼 혁신 과정 - 발표자: 유재상 선임, LG이노...LG 이노텍 - Amazon Redshift Serverless를 활용한 데이터 분석 플랫폼 혁신 과정 - 발표자: 유재상 선임, LG이노...
LG 이노텍 - Amazon Redshift Serverless를 활용한 데이터 분석 플랫폼 혁신 과정 - 발표자: 유재상 선임, LG이노...
 

서버리스 앱 배포 자동화 (김필중, AWS 솔루션즈 아키텍트) :: AWS DevDay2018

  • 1. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 서버리스 앱 배포 자동화 김필중 솔루션즈 아키텍트 AWS
  • 2. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 서버리스 오늘의 진행 소스 빌드 테스트 프로덕션 배포 운영 • 테스트 • 모니터링 • 로깅 • 문제해결
  • 3. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 서버리스
  • 4. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 서버리스란 관리할 서버 없음 유연한 확장 유휴 자원 없음 $ 높은 가용성
  • 5. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 서버리스 애플리케이션을 위한 최소한의 할일! AWS Lambda Node.js Python Java C# Go … 함수 (코드) 단계 2: Lambda에 업로드 업로드 (배포) 이벤트 소스 데이터 상태를 변경 엔드포인트로 요청 자원 상태가 변경 단계 3: 이벤트 소스 연결단계 1: 함수 (코드) 준비 호출 오늘의 주 내용
  • 6. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Lambda 실행 모델 동기 (push) 스트림 기반비동기 (event) Amazon API Gateway AWS Lambda 함수 Amazon DynamoDBAmazon SNS /order AWS Lambda 함수 Amazon S3 reqs Amazon Kinesis changes AWS Lambda 서비스 함수
  • 7. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 웹 앱을 위한 엔드포인트: Amazon API Gateway Internet Mobile Apps Websites Services AWS Lambda functions AWS API Gateway Cache Endpoints on Amazon EC2 All publicly accessible endpoints Amazon CloudWatch Monitoring Amazon CloudFront Any other AWS service
  • 8. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 서버리스 활용 웹 애플리케이션 • 동적 웹 앱 • 복잡한 웹 앱 • Flask 및 Express 앱 • 블로그 데이터 처리 • 실시간 스트리밍 • 맵리듀스 • 배치 작업 • 미디어 변환 챗봇 • 챗봇 로직 백엔드 • 앱 및 서비스 • 모바일 • IoT </></> Amazon Alexa • 음성 지원 앱 • Alexa Skills Kit IT 자동화 • 정책 엔진 • AWS 서비스 확장 • 인프라 관리
  • 9. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 배포
  • 10. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 배포를 위한 릴리즈 프로세스 지속적 통합: Continuous integration 지속적 전달: Continuous delivery 지속적 배포: Continuous deployment 소스 빌드 테스트 프로덕션
  • 11. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AWS Code 서비스를 활용한 보통의 배포 방법 소스 빌드 테스트 프로덕션 AWS CodeDeploy타사 도구AWS CodeBuildAWS CodeCommit AWS CodePipeline AWS CodeStar 코드 저장소 빌드/테스팅 배포 파이프라인 모델링 손 쉬운 구성
  • 12. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. !
  • 13. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 새 버전의 코드 배포 방법에 대한 고민 새 버전 기존 버전
  • 14. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 서버리스 배포를 위한 고려사항 사용자에게 미치는 영향 최소화 롤백 기술 실행 모델 요소 배포 속도
  • 15. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 서버리스 배포 패턴 All-at-once 모든 트래픽은 이전 버전에서 새 버전으로 즉시 이동. Blue/Green 프로덕션 트래픽을 처리하기전에 새 버전은 배포되고 테스트됨. 유효성을 검사 한 후 모든 트래픽이 이전 버전에서 새 버전으로 즉시 변경. Canary/Linear 프로덕션 트래픽의 일부분은 새 버전 으로, 나머지는 이전 버전으로 보냄. 유효성 검사를 위해 일정 기간이 지나면 트래픽이 점진적으로 (추가 유효성 검사와 함께) 이동되거나 새 버전으로 완전히 이동.
  • 16. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 서버리스 배포를 위한 도구
  • 17. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AWS CloudFormation 클라우드 인프라 템플릿을 정의하기 위한 언어 - JSON 및 YAML 지원 AWS 리소스 프로비저닝 CI/CD, 개발, 관리 도구와 통합
  • 18. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. CloudFormation 템플릿 AWSTemplateFormatVersion: '2010-09-09' Resources: GetHtmlFunctionGetHtmlPermissionProd: Type: AWS::Lambda::Permission Properties: Action: lambda:invokeFunction Principal: apigateway.amazonaws.com FunctionName: Ref: GetHtmlFunction SourceArn: Fn::Sub: arn:aws:execute-api:${AWS::Region}:${AWS::AccountId}:${ServerlessRestApi}/Prod/ANY/* ServerlessRestApiProdStage: Type: AWS::ApiGateway::Stage Properties: DeploymentId: Ref: ServerlessRestApiDeployment RestApiId: Ref: ServerlessRestApi StageName: Prod ListTable: Type: AWS::DynamoDB::Table Properties: ProvisionedThroughput: WriteCapacityUnits: 5 ReadCapacityUnits: 5 AttributeDefinitions: - AttributeName: id AttributeType: S KeySchema: - KeyType: HASH AttributeName: id GetHtmlFunction: Type: AWS::Lambda::Function Properties: Handler: index.gethtml Code: S3Bucket: flourish-demo-bucket S3Key: todo_list.zip Role: Fn::GetAtt: - GetHtmlFunctionRole - Arn Runtime: nodejs4.3 GetHtmlFunctionRole: Type: AWS::IAM::Role Properties: ManagedPolicyArns: - arn:aws:iam::aws:policy/AmazonDynamoDBReadOnlyAccess - arn:aws:iam::aws:policy/service-role/AWSLambdaBasicExecutionRole AssumeRolePolicyDocument: Version: '2012-10-17' Statement: - Action: - sts:AssumeRole Effect: Allow Principal: Service: - lambda.amazonaws.com ServerlessRestApiDeployment: Type: AWS::ApiGateway::Deployment Properties: RestApiId: Ref: ServerlessRestApi Description: 'RestApi deployment id: 127e3fb91142ab1ddc5f5446adb094442581a90d' StageName: Stage GetHtmlFunctionGetHtmlPermissionTest: Type: AWS::Lambda::Permission Properties: Action: lambda:invokeFunction Principal: apigateway.amazonaws.com FunctionName: Ref: GetHtmlFunction SourceArn: Fn::Sub: arn:aws:execute-api:${AWS::Region}:${AWS::AccountId}:${ServerlessRestApi}/*/ANY/* ServerlessRestApi: Type: AWS::ApiGateway::RestApi Properties: Body: info: version: '1.0' title: Ref: AWS::StackName paths: "/{proxy+}": x-amazon-apigateway-any-method: x-amazon-apigateway-integration: httpMethod: ANY type: aws_proxy uri: Fn::Sub: arn:aws:apigateway:${AWS::Region}:lambda:path/2015-03- 31/functions/${GetHtmlFunction.Arn}/invocations responses: {} swagger: '2.0'
  • 19. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AWS Serverless Application Model (SAM) 서버리스에 최적화된 CloudFormation 확장판 새로운 서버리스 자원 유형: 함수, API, 테이블 CloudFormation이 지원하는 모든 것을 지원 오픈 사양 (Apache 2.0) https://github.com/awslabs/serverless-application-model
  • 20. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. SAM 템플릿 AWSTemplateFormatVersion: '2010-09-09’ Transform: AWS::Serverless-2016-10-31 Resources: GetHtmlFunction: Type: AWS::Serverless::Function Properties: CodeUri: s3://sam-demo-bucket/todo_list.zip Handler: index.gethtml Runtime: nodejs4.3 Policies: AmazonDynamoDBReadOnlyAccess Events: GetHtml: Type: Api Properties: Path: /{proxy+} Method: ANY ListTable: Type: AWS::Serverless::SimpleTable SAM 템플릿임을 명시 IAM 정책, 런타임, 코드를 포함하는 zip 파일 위치, 핸들러와 함께 Lambda 함수 생성 API Gateway를 만들고 필요한 모든 매핑/권한을 처리. 5 읽기/쓰기 유닛으로 DynamoDB 테이블 생성
  • 21. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 복잡한 API를 위한 Swagger 활용 MyApi: Type: AWS::Serverless::Api Properties: StageName: prod DefinitionUri: swagger.yml CacheClusterEnabled: true CacheClusterSize: 28.4 EndpointConfiguration: REGIONAL Variables: VarName: VarValue LambdaFunction: Type: AWS::Serverless::Function Properties: CodeUri: s3://<bucket>/fn.zip Handler: index.handler Runtime: nodejs6.10 Events: MyApi: Type: Api Properties: RestApiId: !Ref MyApi
  • 22. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved.
  • 23. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 서버리스 애플리케이션 배포 기법
  • 24. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Lambda 함수 버전 및 별칭 버전: 변하지 않는(immutable) 함수(코드 및 구성 포함) 별칭: 버전을 가리키는 변하는(mutable) 포인터 둘 모두 고유한 ARN을 가짐 모범 사례 $LATEST 버전을 기반으로 개발 테스팅과 배포를 구분하여 게시 클라이언트 접근을 추상화하기 위해 별칭 활용: • 롤백 • 스테이징 • 클라이언트 별 버전 람다 함수 버전: $LATEST 람다 함수 버전: 123 람다 함수 별칭: PROD 람다 함수 별칭: STG 람다 함수 별칭: DEV
  • 25. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 단계 변수와 Lambda 별칭 API Gateway에서 단계 변수를 Lambda 함수 별칭과 함께 사용하면 여러 환경 단계에 대해 단일 API 구성 및 Lambda 함수를 관리할 수 있습니다 Lambda 함수 API 1 2 3 = prod 4 5 6 = stg 7 8 = dev Prod lambdaAlias = prod Staging LambdaAlias = stg Dev lambdaAlias = dev 단계 변수 = lambdaAlias
  • 26. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Lambda 별칭 트래픽 이동 및 안전한 배포 aws lambda update-alias --name alias name --function-name function- name --routing-config AdditionalVersionWeights={"2"=0.05}
  • 27. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Lambda 별칭 트래픽 이동 Lambda 함수 API 1 2 3 = prod 4 5 6 = prod 5% Prod lambdaAlias = prod 단계 변수 = lambdaAlias aws lambda update-alias --name prod --function-name lambdaFunction --routing-config AdditionalVersionWeights={"6"=0.05}
  • 28. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Lambda 별칭 트래픽 이동 Lambda 함수 API 5 6 = prod Prod lambdaAlias = prod 단계 변수 = lambdaAlias aws lambda update-alias --name prod --function-name lambdaFunction --function-version 6 --routing-config ‘’
  • 29. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. SAM Globals + 안전한 배포 Globals: Function: Runtime: nodejs4.3 AutoPublishAlias: !Ref ENVIRONMENT MyLambdaFunction: Type: AWS::Serverless::Function Properties: Handler: index.handler DeploymentPreference: Type: Linear10PercentEvery10Minutes Alarms: # A list of alarms that you want to monitor - !Ref AliasErrorMetricGreaterThanZeroAlarm - !Ref LatestVersionErrorMetricGreaterThanZeroAlarm Hooks: # Validation Lambda functions that are run before & after traffic shifting PreTraffic: !Ref PreTrafficLambdaFunction PostTraffic: !Ref PostTrafficLambdaFunction
  • 30. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Lambda 별칭 트래픽 이동 및 AWS SAM AutoPublishAlias 이 속성을 추가하고 별칭명을 지정하면 AWS SAM이 다음을 수행 : • Lambda 함수의 Amazon S3 URI의 변경사항을 기반으로 새로운 코드가 배포될 때를 탐지 • 최신 코드로 해당 함수의 업데이트된 버전을 만들고 게시 • 지정한 이름으로 별칭을 만들고 (해당 별칭이 존재하지 않는 한) Lambda 함수의 업데이트된 버전을 가리킴 배포 기본 설정 유형 Canary10Percent30Minutes Canary10Percent5Minutes Canary10Percent10Minutes Canary10Percent15Minutes Linear10PercentEvery10Minutes Linear10PercentEvery1Minute Linear10PercentEvery2Minutes Linear10PercentEvery3Minutes AllAtOnce SAM:
  • 31. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Lambda 별칭 트래픽 이동 및 AWS SAM SAM: Alarms: # A list of alarms that you want to monitor - !Ref AliasErrorMetricGreaterThanZeroAlarm - !Ref LatestVersionErrorMetricGreaterThanZeroAlarm Hooks: # Validation Lambda functions that are run before & after traffic shifting PreTraffic: !Ref PreTrafficLambdaFunction PostTraffic: !Ref PostTrafficLambdaFunction 참고: 최대 10개의 경보(Alarm) 지정 가능
  • 32. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AWS CodeDeploy + Lambda 자동 배포 (EC2/온프레미스), 롤링 배포(Blue/green), 정지와 롤백 지원 AWS SAM을 사용하여 서버리스 애플리케이션 배포 Lambda 별칭을 사용한 트래픽 이동 지원으로 Canary와 Blue/Green 배포 가능 CloudWatch 지표/알람을 기반으로 롤백 가능 트래픽 유입 이전/이후의 트리거를 통해 다른 서비스들간의 통합 가능 (람다 함수 호출도 가능)
  • 33. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AWS CodeDeploy + Lambda 사용자 지정 배포 구성 지원 • 1시간 동안 Canary 5% • 매 1시간 동안 Linear 20% 성공/실패/롤백 시 SNS를 통한 이벤트 알림 콘솔에서 배포 상태, 기록, 롤백을 시각화하여 확인
  • 34. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon API Gateway Canary 지원 Canary 릴리즈 배포를 사용하여 Amazon API Gateway에서 새로운 API를 점차적으로 출시할 수 있습니다 새로운 단계 배포로 이동하는 트래픽 비율 구성 단계 설정과 변수 테스트 가능 API Gateway는 Canary 배포 API에 의해 제어되는 요청들을 위한 추가적인 Amazon CloudWatch Logs 그룹과 CloudWatch 지표를 생성 롤백 가능(배포를 제거 또는 트래픽 비율을 0으로 설정)
  • 35. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon API Gateway Canary 지원 v1API Clients All publicly and privately accessible endpoints Backends in AWS api.mydomain.com/prod 현재 배포된 버전으로 들어오는 모든 트래픽
  • 36. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon API Gateway Canary 지원 API Clients All publicly and privately accessible endpoints Backends in AWS v1 50% v2 50% 새 트래픽의 50%는 새 배포로, 나머지는 이전 버전으로 api.mydomain.com/prod
  • 37. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon API Gateway Canary 지원 API Clients All publicly and privately accessible endpoints Backends in AWS v1 10% v2 90% 트래픽의 90%는 단계의 새 배포로, 나머지는 이전 버전으로 api.mydomain.com/prod
  • 38. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon API Gateway Canary 지원 v2API Clients All publicly and privately accessible endpoints Backends in AWS api.mydomain.com/prod 새로 배포된 버전으로 들어오는 모든 트래픽 변경 사항이 없는 클라이언트
  • 39. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Amazon API Gateway Canary 지원 활용 방법 • API 백엔드에서 새로운 기술을 적용 • 새로운 언어 • 새로운 프레임워크 • Lambda 함수로 특정 기능 구현 후 연결 • 개별 로그 및 지표로 성능 비교/대조 • VPC에서 엔드포인트 통합을 통해 온프레미스에서 AWS로 API를 마이그레이션 • API Gateway à Network Load Balancer (NLB) à 온프레미스 (Direct Connect 또는 VPN 연결을 통해)
  • 40. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Lambda와 API Gateway Canary 배포 비교 Lambda • 단일 함수 수준으로만 제어 • 서비스 호출에 투명성 제공 • 새 버전은 고유 로그 및 지표 가짐 • Weight를 0으로 설정하여 롤백 • SAM을 통해 자동으로 점진적 변경 지원 API Gateway • 전체 단계 수준으로 최대 제어 • 클라이언트에 투명성 제공 • 새 버전은 고유 로그 및 지표 가짐 • Weight를 0으로 설정하거나 Canary를 삭제하여 롤백
  • 41. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 배포 파이프라인 구축
  • 42. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AWS CodePipeline 신속하고 신뢰할 수 있는 애플리케이션 업데이트를 위한 지속적인 전달 서비스 릴리즈 프로세스 모델링 및 시각화 코드가 변경될 때 마다 빌드, 테스트, 배포 AWS와 다양한 도구들과의 통합
  • 43. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 간단한 서버리스 앱 배포 파이프라인 예제 MyBranch-Source Source CodeCommit 서버리스 앱 Build test-build-source CodeBuild MyDev-Deploy create-changeset AWS CloudFormation execute-changeset AWS CloudFormation Run-stubs AWS Lambda 파이프라인 설명 • 3 단계로 구성 • 코드 아티팩트 생성 • 단일 환경 (개발용) • SAM/CloudFormation을 사용하여 아티팩트와 다른 AWS 리소스들 배포 • Lambda 사용자 정의 작업을 통해 테스트 함수 실행 파이프라인 단계 작업 전환
  • 44. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 간단한 서버리스 앱 배포 파이프라인 예제 파이프라인 설명 • 5 단계로 구성 • 코드 아티팩트 생성 • 세 개의 환경에 세 차례 배포 • SAM/CloudFormation을 사용하여 아티팩트와 다른 AWS 리소스들 배포 • Lambda 사용자 정의 행동을 통해 테스트 함수 실행 • 타사 도구/서비스와 통합 • 프로덕션으로 배포하기 전 수동 승인 Source Source CodeCommit 서버리스 앱 Build test-build-source CodeBuild Deploy Testing create-changeset AWS CloudFormation execute-changeset AWS CloudFormation Run-stubs AWS Lambda Deploy Staging create-changeset AWS CloudFormation execute-changeset AWS CloudFormation Run-API-test Runscope QA-Sign-off Manual Approval Review Deploy Prod create-changeset AWS CloudFormation execute-changeset AWS CloudFormation Post-Deploy-Slack AWS Lambda
  • 45. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 배포 패턴 별 테스트 Source 서버리스 앱 Build Deploy Testing Deploy Staging Deploy Prod • Pull 요청에 의한 코드 리뷰 (CodeCommit 에서 가능) • Lint/문법 검사 • 유닛 테스트 • 코드 컴파일 • All-at-once 배포 • Mocked/stubbed 통합 테스트 • All-at-once 배포 • 실제 종속성에 대해 테스트 (프로덕션에 대한 잠재적인 테스트) • 새 버전 배포와 모든 요청 연결 1. 2. 3. 4. 5. All-at-once 패턴
  • 46. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 배포 패턴 별 테스트 Source 서버리스 앱 Build Deploy Testing Deploy Staging Deploy Prod • Pull 요청에 의한 코드 리뷰 (CodeCommit 에서 가능) • Lint/문법 검사 • 유닛 테스트 • 코드 컴파일 • All-at-once 배포 • Mocked/stubbed 통합 테스트 • All-at-once 배포 • 실제 종속성에 대해 테스트 • Green 버전 배포 • Green에서 테스트 수행 및 검증 • 트래픽 전부 Green 연결 1. 2. 3. 4. 5. Blue/Green 패턴
  • 47. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 배포 패턴 별 테스트 Source 서버리스 앱 Build Deploy Testing Deploy Staging Deploy Prod • Pull 요청에 의한 코드 리뷰 (CodeCommit 에서 가능) • Lint/문법 검사 • 유닛 테스트 • 코드 컴파일 • All-at-once 배포 • Mocked/stubbed 통합 테스트 • All-at-once 배포 • 실제 종속성에 대해 테스트 • Canary 배포 • 대기 기간 동안 성공적으로 검증 • 트래픽 전부를 연결할 때 까지 점차 확대 1. 2. 3. 4. 5. Canary 패턴
  • 48. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 환경, 단계, 버전, Canary 관련 모범 사례 • 자동화된 롤백이 가능한 프로덕션 배포를 위해 Blue/Green 또는 Canary를 사용 • 여러 군데에서 호출하기에 다양한 버전을 지원해야할 경우 Lambda의 버전(Versioning)은 매우 유용 • 다양한 API 버전을 지원해야할 경우 API Gateway에서는 단계(Stage)가 Lambda 버전과 비슷하게 작동하며 유용 • 개발, 테스트, 스테이징, 프로덕션 환경을 위해 가능한 항상 분리된 스택을 유지 • 이를 위해 단계나 버전을 사용하지 마세요 • 서로 다른 환경을 위해 다른 계정을 모두 함께 가지고 있다고 생각해보세요
  • 49. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 운영 (테스트/로깅/모니터링/문제 해결)
  • 50. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 시작 포인트 로컬에서 함수를 테스트 및 디버깅
  • 51. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AWS SAM CLI SAM Local 서버리스 앱을 로컬에서 구축, 검증, 테스트하기 위한 CLI 도구 Lambda 함수와 프록시 스타일 API와 작동 로컬에서 응답 객체와 함수 로그 확인 가능 오프라인에서 작동 오픈소스 docker-lambda 이미지를 사용하여 Lambda의 실행 환경을 흉내 (Timeout, 메모리 제한, 런타임을 에뮬레이팅) https://github.com/awslabs/aws-sam-cli npm install -g aws-sam-local
  • 52. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AWS CodeBuild: 높은 수준의 Lambda 테스트 CodeBuild는 Docker 이미지를 사용하여 빌드/테스트 환경을 구성한 뒤 원하는 작업을 가능하게 함 SAM Local은 Lambda 런타임의 복제본을 포함 바이너리 호환 라이브러리와 실행 파일을 빌드하고 테스트 가능
  • 53. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 전통적인 디버깅 개발자 로컬 테스트 개발자 Breakpoints 추가 로그 항목 추가
  • 54. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 서버리스 애플리케이션 로깅: CloudWatch Lambda • 기본 지표: • Invocations • Duration • Throttles • Errors • Iterator Age put-metric API를 사용하여 애플리케이션에서 사용자 정의 지표 기록 가능 API Gateway • 스테이지 수준의 기본 지표: • Count • 4XXs, 5XXs • Latency (API 및 통합) • Cache count hit/miss 메서드 수준의 세밀성으로 상세한 지표 집계 가능
  • 55. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 서버리스 앱 문제 해결의 접근 • 기본적으로 적절한 로그를 기록하는 것부터 시작 • 기록된 로그는 빠르게 검색 가능해야 함 • 특히 람다 함수가 많다면 로그 기록은 더욱 중요!
  • 56. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 사용자 정의 지표 및 로그 생성 • 타임스탬프를 통한 API Gateway와 Lambda에서 로그를 상호연관 • DynamoDB 호출과 관련된 많은 정보들을 로그로 기록 Amazon API Gateway Amazon DynamoDBAWS Lambda 간단한 서버리스 애플리케이션
  • 57. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 조금 어려운 문제들 • 많은 서비스가 연계되어 특정 홉이 다운되어 이슈가 발생하면 찾기가 쉽지 않음 • 요청 ID와의 상관관계를 찾는 것은 물론 유지하기가 어려움 Amazon API Gateway Amazon DynamoDB AWS Lambda AWS Lambda Amazon Rekognition Amazon SNS
  • 58. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 조금 어려운 문제들 • 많은 서비스가 연계되어 특정 홉이 다운되어 이슈가 발생하면 찾기가 쉽지 않음 • 요청 ID와의 상관관계를 찾는 것은 물론 유지하기가 어려움 Amazon API Gateway Amazon DynamoDB AWS Lambda AWS Lambda Amazon Rekognition Amazon SNS
  • 59. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. AWS X-Ray 성능 병목현상 파악 특정 서비스 문제 핀포인팅 에러 파악 사용자에게 미치는 영향 파악
  • 60. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 서버리스와의 통합 Lambda에서 지원하는 모든 언어에 대한 수신 요청을 처리 SDK를 사용하여 X-Ray 데몬과 통신 var AWSXRay = require(‘aws-xray-sdk-core‘); AWSXRay.middleware.setSamplingRules(‘sampling- rules.json’); var AWS = AWSXRay.captureAWS(require(‘aws-sdk’)); S3Client = AWS.S3();
  • 61. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. X-Ray: 서비스 호출 그래프
  • 62. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. X-Ray: Lambda (초기화, 콜드 스타트)
  • 63. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. X-Ray: Lambda 함수 (기존 컨테이너 사용)
  • 64. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. X-Ray: Lambda 함수 (예외)
  • 65. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. X-Ray: Lambda 함수 (예외 상세)
  • 66. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. X-Ray: Lambda 함수 예외
  • 67. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 확장하고 있는 서버리스 생태계 구축 및 CI/CD 로깅 및 모니터링애플리케이션 및 배포 Chalice 프레임워크 서버리스 자바 컨테이너
  • 68. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 정리 • 다양한 기능들을 활용하여 안전하고 제어된 방식으로 Lambda 함수를 배포 • 자동 롤백은 배포 관련 문제 복구를 위한 가장 빠른 방법 • 이벤트 모델과 워크로드 크기에 따라 적절한 배포 패턴을 선택 • AWS SAM + AWS CodeDeploy를 사용하여 서버리스 애플리케이션을 다양한 배포방식(All-at-once, Blue/Green, Canary)으로 배포 가능 • 서버리스 앱은 로깅과 모니터링 기능이 빌트인으로 포함됨 • 강력한 도구인 X-Ray를 활용하여 문제점을 시각화하여 해결
  • 69. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 참고 • https://aws.amazon.com/serverless 에 참고 아키텍처, 샘플 등 다양한 콘텐츠가 준비되어 있습니다. • https://github.com/awslabs/serverless-application-model 에 준비된 다양한 AWS SAM 사양을 살펴보세요. • Lambda 콘솔에서 원하는 블루프린트를 선택 후 서버리스 앱 개발을 당장 시작할 수 있습니다.
  • 70. © 2018, Amazon Web Services, Inc. or its Affiliates. All rights reserved. Q&A • 세션 후, 설문에 참여해 주시면 행사 후 소정의 선물을 드립니다. • #AWSDevDay 해시 태그로 의견을 남겨주세요!