Weitere ähnliche Inhalte Ähnlich wie 데브옵스 엔지니어를 위한 신규 운영 서비스 - 김필중, AWS 개발 전문 솔루션즈 아키텍트 / 김현민, 메가존클라우드 솔루션즈 아키텍트 :: AWS re:Invent re:Cap 2021 (20) Mehr von Amazon Web Services Korea (20) 데브옵스 엔지니어를 위한 신규 운영 서비스 - 김필중, AWS 개발 전문 솔루션즈 아키텍트 / 김현민, 메가존클라우드 솔루션즈 아키텍트 :: AWS re:Invent re:Cap 20211. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
데브옵스 엔지니어를 위한
신규 운영 서비스
김필중
개발 전문 솔루션즈 아키텍트
AWS Korea
2. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
데브옵스 엔지니어를 위한
신규 업데이트
김필중
개발 전문 솔루션즈 아키텍트
AWS Korea
3. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
소프트웨어 워크플로
작성 + 리뷰 빌드 + 테스트 배포 측정 향상
4. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
코드형 인프라 (Infrastructure as Code)
AWS Cloud Development Kit
(AWS CDK)
AWS CloudFormation
• 프로비저닝 프로세스 자동화
• 구성 파일을 사용하여 인프라 인스턴스화
• 구성 파일을 소프트웨어 코드로 취급
• 자동화를 통해 구성 드리프트 감소
AWS 코드형 인프라 솔루션
AWS Serverless Application
Model (AWS SAM)
5. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS CloudFormation
템 플 릿 을 바 탕 으 로 리 소 스 를 프 로 비 저 닝 하 고 관 리 하 는 엔 진
클라우드 인프라 템플릿을 정의하기 위한 언어
- JSON 및 YAML 지원
AWS 리소스 프로비저닝
AWS가 제공하는 거의 모든 리소스를 지원
CI/CD, 개발, 관리 도구와 통합
AWS CloudFormation
6. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS Cloud Development Kit
익숙한 프로그래밍 언어를 사용하여 클라우드 인프라를 정의하는
소프트웨어 개발 프레임워크
친숙한 언어
클래스 및 메서드
자동완성
인라인 문서
기본값
재사용 가능한 클래스
7. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
CDK 앱 개발 워크플로
CDK CLI AWS CloudFormation
Stacks & Constructs
Source Code
Templates + Assets
Cloud Assembly
Cloud Resources
execute synthesize deploy provision
📙 cdk init // 새 프로젝트 생성
🛠 npm run build // 프로젝트 빌드
🔎 cdk diff // 변경 사항 확인
🧬 cdk synth // 템플릿 및 에셋 생성
🚀 cdk deploy // 클라우드에 변경 사항 적용
8. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS Cloud Development Kit (CDK) v2
• 통합 구성 라이브러리 (aws-cdk-lib)
• 실험적인 모듈은 별도로 배포
일반적인 서버리스 애플리케이션
Amazon API Gateway AWS Lambda Amazon DynamoDB
• 개별 라이브러리 설치
• 실험적인 모듈이 포함
"dependencies": {
"@aws-cdk/core": "1.127.0",
"@aws-cdk/aws-apigateway": "1.127.0",
"@aws-cdk/aws-dynamodb": "1.127.0",
"@aws-cdk/aws-lambda": "1.127.0”,
"@aws-cdk/aws-cloudwatch": "1.127.0",
"@aws-cdk/aws-cloudwatch-actions": "1.127.0",
}
import { App, Stack } from “@aws-cdk/core”;
import * as s3 from “@aws-cdk/aws-s3”;
“dependencies”: {
“aws-cdk-lib”: “2.0.0”,
“constructs”: “^10.0.0”,
“@aws-cdk/aws-lambda-alpha”: “2.0.0-alpha.0”
}
import { App, Stack } from “aws-cdk-lib”;
import * as s3 from “aws-cdk-lib/aws-s3”;
9. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS CDK Watch
$ cdk watch ExampleStack
Watching project files for changes...
Changes detected, deploying ExampleStack...
✅ ExampleStack
Outputs:
ExampleStack.RestApiEndpoint = https://abcd1234.execute-api.us-west-2.amazonaws.com/prod
Stack ARN:
arn:aws:cloudformation:us-west-2:123456789012:stack/ExampleStack/abcd-1234
✨ Done in 7.37s.
Watching project files for changes...
^C
$
10. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
CDK Assertions 라이브러리
from constructs import Construct
from aws_cdk import App, Stack
import aws_cdk.aws_s3 as s3
import unittest
from aws_cdk.assertions import Template
class MyStack(Stack):
def __init__(self, scope: Construct, construct_id: str, **kwargs) -> None:
super().__init__(scope, construct_id, **kwargs)
s3.Bucket(self, ‘MyBucket’, bucket_name='my-bucket’)
class CdkTest(unittest.TestCase):
def test_my_stack(self):
app = App()
stack = MyStack(app, 'TestStack')
template = Template.from_stack(stack)
template.has_resource_properties('AWS::S3::Bucket', {
'BucketName': 'my-bucket’,
})
11. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
롤백 비활성화 파라미터
애 플 리 케 이 션 배 포 가 속
이전
• 진행 중인 모든 리소스 프로비저닝 로직이
취소됨
• 모든 리소스에 대해 마지막으로 알려진 안정
상태로 롤백이 시작됨
이후
• 성공적으로 프로비저닝된 리소스에 대해 롤백이
시작되지 않음
• create-stack, update-stack, execute-changeset
에서 --disable-rollback 파라미터를 사용
12. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS CDK Construct Hub
오픈 소스 Construct 라이브러리를 더
많은 클라우드 개발 커뮤니티와 공유
https://constructs.dev/
13. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amazon CodeGuru
코드 품질을 개선하고 애플리케이션에서 가장 리소스를 많이 사용하는
코드 라인을 식별하기 위한 지능형 권장 사항을 제공하는 개발자 도구
14. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amazon CodeGuru
Amazon CodeGuru Profiler
애플리케이션 성능을 최적화하고
가장 리소스를 많이 사용하는 코드
라인을 식별하여 성능 문제를
해결하고 컴퓨팅 비용을 절감
Amazon CodeGuru Reviewer
기계 학습을 사용하여 중요한
문제 및 찾기 어려운 버그를
식별하고, 코드 품질을 개선 및
수정 방법을 권장
15. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amazon CodeGuru Reviewer - 코드 리뷰
Code Review
애플리케이션 배포 전
코드에 맞춤법 검사를
추가하는 것과 유사
Reviewer
AWS
CodeCommit
AWS Cloud9
PULL
REQUEST
CodeGuru
Reviewer
APPROVAL
GitHub
Atlassian
Bitbucket
16. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amazon CodeGuru Reviewer - 리뷰 영역
• AWS 모범 사례: AWS API 및 SDK의 올바른 사용
• 리소스 누출: 올바른 리소스 처리
• 동시성: 동시성 구성의 올바른 구현
• 데이터 마이닝으로 발견된 코드 결함: 찾기 어려운 결함들 (예: 전역 변수 사용 또는
변경 가능한 기본 인자와 함께 반복 함수 호출)
• 보안 웹 애플리케이션: 정제되지 않은 사용자 입력 (예: cross-site scripting, LDAP
주입, 경로 탐색 주입, OWASP Top 10)
• 민감한 정보 누출: 규정 준수 문제 (예: 신용 카드 번호 로깅)
• AWS 보안 모범 사례: 내부 보안 전문 지식 (예: AWS Crypto 권장 사항) 제공
17. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amazon CodeGuru Reviewer
J A V A 와 P Y T H O N 코 드 에 서 하 드 코 딩 된 부 분 을 탐 지
18. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amazon EventBridge
Amazon EventBridge 이벤트 버스
Rule/Filter
Rule/Filter
Rule/Filter
이벤트 소스 대상
19. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amazon EventBridge: S3 데이터 플레인 알림
사용자 정의 소프트웨어 없이 이벤트 기반
애플리케이션을 쉽게 구축 및 배포
S3의 새 데이터에 대해 더 빠르게 작업하고, 중단
없이 이벤트 기반 애플리케이션을 변경하고, 과거
이벤트를 재생하여 디버그
규칙과 일치하는 이벤트에 대해서만 비용 지불
20. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amazon EventBridge: S3 데이터 플레인 알림
고급 필터링 여러 대상 빠르고 안정적인 호출
객체 크기, 키 이름,
시간 범위를 비롯한
많은 추가 메타데이터
필드로 필터링 가능
API 대상을 통해
Step Functions,
Kinesis Firehose 및
HTTP 대상을 포함한
18개의 AWS 서비스
중 선택한 곳으로
동일 이벤트 라우팅
빠르고 직접적인
패턴 매칭 및 대상
호출. 그리고
at-least-once
전달로 인한 안정성
향상
21. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
CloudWatch Real User Monitoring (RUM)
사용자의 경험을 식별하고, 이해하고,
개선하는데 도움이 되는 통찰력을 제공하는
지표를 수집
각 페이지의 헤더에 JavaScript 코드
스니펫을 추가하여 애플리케이션을 등록
22. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Amazon CloudWatch Evidently
애 플 리 케 이 션 코 드 에 서 실 험 및 기 능 관 리 도 입
두 가지 주요 사용 사례 지원 – 기능
플래그라는 다크 출시 및 A/B 테스트
- AWS AppConfig 및 AWS Systems
Manager 역시 플래그 기능을 지원하지만,
CloudWatch Evidently에는 기능의
템플릿 및 대시보드를 포함
- 프론트엔드와 백엔드, 웹 또는 모바일,
그리고 ML 애플리케이션도 지원
- 9개의 프로그래밍 언어 지원
23. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS Control Tower
새로운 AWS 다중 계정 환경 설정을 자동화하는 가장 쉬운 셀프 서비스 솔루션
AWS 모범 사례 및
Blueprint 및
Guardrail 배포
AWS 모범 사례를
기반으로 자동 계정
생성을 제공하는
AWS 서비스
규정 준수 상태
모니터링을 위한
대시보드
다중 계정 환경의
AWS Managed
Service 버전
24. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS Control Tower에 대한 Terraform 지원
Terraform 기반 계정 프로비저닝 파이프라인을 통한 AWS
Control Tower 거버넌스 이점
Terraform Cloud, Terraform Enterprise, Terraform
오픈 소스 지원
계정 생성 및 신규 또는 기존 계정의 사용자화
AWS Control Tower Account Factory for Terraform (AFT)
내부 절차에 맞는 사용자화
25. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
풀 스택 애플리케이션
서버리스 Node –
프런트엔드와
백엔드의
JavaScript
GraphQL을
사용하여
프런트엔드
개발자가 데이터를
쿼리/변경
26. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS Amplify
27. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS Amplify
프 런 트 엔 드 개 발 자 가 앱 을 빌 드 , 배 포 , 확 장 에 사 용 할 수 있 는 도 구 를 제 공
배포 확장
빌드
28. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS Amplify로 구축
1 2 개 의 기 능 카 테 고 리 에 걸 친 풀 스 택 개 발 자 경 험
빌드
AWS
Amplify CLI
AWS
Amplify libraries
기능 카테고리
AWS AppSync (GraphQL API) 및 Amazon Cognito (인증)와 같은 AWS 서비스 기반
29. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
지금까지 AWS Amplify는 프런트엔드 개발자가 앱의 백엔드를 구축하고 연결하는데 도움을 주었습니다
30. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
하지만, 프런트엔드 개발자들은 UI 구축에 시간이 많이 소모되고, 수동 작업이라는 피드백을 주었습니다
31. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS Amplify Studio (Preview)
애플리케이션 코드를 완벽하게 제어하며 기능이 풍부한
앱을 몇 시간 (몇 주가 아닌)만에 시각적으로 구축
32. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS Amplify Studio 새로운 구축
풀스택 앱 개발을 위한
새로운 비주얼 개발 환경
인증 및 권한 부여 설정
AWS 계정 유무와
관계없이 팀 협업
함수, 저장소 등의 추가를
CLI 도구 체인으로 확장
> npm install -g @aws-amplify/cli
> amplify add function
33. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS Amplify Studio 새로운 구축
시 각 적 으 로 프 런 트 엔 드 U I 생 성
시간 절약
코딩 최소화
완전한 사용자화
Figma에서 UI 디자인을 깔끔한
React 코드로 불러옴
디자이너와 개발자의 협업 향상
적은 코딩으로 완벽한 픽셀 디자인
코드에 대한 완전한 제어 유지
Figma
수십 개의 UI 구성 요소
중에서 선택
34. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS Microservice Extractor for .NET
여러 팀이 독립적으로 개발 및 운영할 수 있는 모놀리식 애플리케이션을
마이크로서비스로 전환할 때의 노력을 줄여주는 도구
별도의 코드 프로젝트로
코드 추출 지원
개별 서비스로 분리할 수 있는
애플리케이션의 부분을
신속하게 식별
도메인 주도 설계를 기반으로
한 리팩터링 계획 용이
35. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS SDKs
새로운 SDK:
Swift Kotlin Rust
36. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Slack을 통해 AWS 리소스 관리 (Preview)
Slack을 통한 리소스 관리를 지원
AWS CLI 명령을 실행하여 EC2 인스턴스
확장, AWS Systems Manager runbooks 실행,
AWS Lambda 동시성 제한 변경
37. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
여러분의 소중한 피드백을 기다립니다.
행사 종료 후, 행사 및 강연 평가에 참여해 주세요!
38. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
데브옵스 엔지니어를 위한 신규 운영 서비스
김현민 AWS Community Hero
솔루션즈아키텍트
메가존클라우드
AWS Community Hero에게 듣는다!
39. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
• AWS re:Invent 2021 참석 후기
• DevOps 가장 맘에 들었던 신규 기능
• 추천 세션 소개
Agenda
40. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS re:Invent 2021 참석 후기
😍👍🎰
41. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS re:Invent 2021 참석 후기
• AWS 15주년, re:Invent 10주년
• Adam Selipsky CEO Keynote
• 6번째 리인벤트 참석
42. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS re:Invent 2021 참석 후기
43. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS re:Invent 2021 참석 후기
• AWS Global Usergroup Leaders
Meetup
44. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWS re:Invent 2021 참석 후기
• AWS Hero Lounge
45. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
DevOps 가장 마음에 들었던 신규 기능
• AWS Amplify Studio
• 최소한의 코딩으로 UI개발 속도를
높일 수 있는 서비스
46. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
DevOps 가장 마음에 들었던 신규 기능
• AWS Amplify Studio
• 최소한의 코딩으로 UI개발 속도를
높일 수 있는 서비스
• 3rd Party 도구인 Figma에서 만든
디자인을 사람이 읽을 수 있는 React
UI 컴포넌트 코드로 자동으로 변환
47. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
DevOps 가장 마음에 들었던 신규 기능
• AWS Amplify Studio
• 최소한의 코딩으로 UI개발 속도를
높일 수 있는 서비스
• 3rd Party 도구인 Figma에서 만든
디자인을 사람이 읽을 수 있는 React
UI 컴포넌트 코드로 자동으로 변환
48. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
DevOps 가장 마음에 들었던 신규 기능
• AWS Amplify Studio
• 최소한의 코딩으로 UI개발 속도를
높일 수 있는 서비스
• 3rd Party 도구인 Figma에서 만든
디자인을 사람이 읽을 수 있는 React
UI 컴포넌트 코드로 자동으로 변환
• 백엔드 구성 및 관리를 위해 Amplify
Admin UI의 기존 기능(데이터, 인증,
스토리지 등)도 지원 및 추가될 예정
49. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
DevOps 가장 마음에 들었던 신규 기능
https://sandbox.amplifyapp.com/
AWS Amplify Studio 지금 바로 시작하세요!!
50. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
추천 세션 소개
Build native Apple silicon apps with
EC2 M1 Mac instances, ft. Goldman
Sachs
https://youtu.be/i9b7UtenFlA
Introducing Amazon SageMaker
Canvas
https://www.youtube.com/watch?v=8g
m1TD9TXp0
51. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Build native Apple silicon apps with EC2 M1 Mac
instances, ft. Goldman Sachs
52. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Build native Apple silicon apps with EC2 M1 Mac
instances, ft. Goldman Sachs
53. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Introducing Amazon SageMaker Canvas
54. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Introducing Amazon SageMaker Canvas
55. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Introducing Amazon SageMaker Canvas
56. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
Introducing Amazon SageMaker Canvas
57. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWSKRUG SWAG 퀴즈 이벤트
https://bit.ly/awskrug-swag-quiz
AWS한국사용자모임에서는 AWS 15주년 및 AWS re:Invent 10주년 기념 전천후 바람막이를 선물로 드립니다.
150개
한정 추첨
1회만 응모 가능
58. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
AWSKRUG SWAG 퀴즈 이벤트
https://bit.ly/awskrug-swag-quiz
AWS한국사용자모임에서는 AWS 15주년 및 AWS re:Invent 10주년 기념 전천후 바람막이를 선물로 드립니다.
Q: 개발자가 애플리케이션 코드에 기능 플래그 및 A/B 테스트
같은 실험 및 기능 관리를 쉽게 도입할 수 있게 해주는 Amazon
CloudWatch의 새 기능은 무엇일가요?
1. Amazon CloudWatch Evidently
2. Amazon CloudWatch Synthetics
3. Amazon CloudWatch RUM
4. Amazon CloudWatch Logs Insight
59. © 2022, Amazon Web Services, Inc. or its affiliates. All rights reserved.
감사합니다