ݺߣ

ݺߣShare a Scribd company logo
아마존 웹서비스 서버 이전기
서버의 ㅅ자도 몰랏던 스타트업 인턴의
INDEX
• 발표자 소개
• 웹서비스란 ?
• 기존 서버의 문제점
• Why AWS
• AWS 소개
• 시작해보기 / 시연
• 맺음말과 부록
성준영
경희대학교 컴퓨터공학과 3학년
T.G.WinG
노마드스타 서버개발 인턴
Contact - wnsdud1861@gmail.com
웹 서버란?
Database API storage
웹서비스 환경?
Database API storage
웹서비스 환경?
데이터 베이스와 이미지 저장소에서
클라이언트에서 요구한 정보를
API 를 통해 건네줍니다
웹서비스 환경?
Server Client
“서버야 사용자 이름이 ‘성준영’ 인 사람
학교하고 휴대폰번호 정보좀 찾아줘”
웹서비스 환경?
Server Client
“데이터베이스야 성준영이라는 사람 검색해봐”
웹서비스 환경?
Server Client
“_id: 123Dfe / name: 성준영 / pw: asdfnklsdklf /
school: 경희대학교 / phone: 010-7758-1837”
웹서비스 환경?
Server Client
“성준영 / 경희대학교 / 010-7758-1837 이래!”
웹서비스 환경?
Client
이름 : 성준영
학교 : 경희대학교
HP : 010-7758-1837
라는걸 회사가서 알았어요
간단한 서비스 소개
반려동물 용품리뷰 SNS,
다운로드 10000, 평균 접속자 10명 내외
기존 서비스의 구성
Server
Client
Web Hosting
기존 서비스의 구성
Client
Web Hosting
기존 서비스의 구성
Server
Client
What’s wrong?
기존 서비스의 문제점 1 - 확장성
Server
Client
기존 서비스의 문제점 1 - 확장성
Server
Client
기존 서비스의 문제점 1 - 관리문제
Server
Client
Scale UP
기존 서비스의 문제점 1 - 관리문제
Server
서버셋팅
데이터베이스 마이그레이션
업로드 이미지 동기화
서비스 중지
…
Scale UP
기존 서비스의 문제점 2 – 확장에 따른 비용
Scale
Cost
기존 서비스의 문제점 3 – 시간당 과금으로 인한 손실
Server
NO USAGE
일 더할수있는데……
그래서!
Amazon Web Services 란?
2006년 경부터 아마존닷컴에서 서비스 중인 클라우드 컴퓨팅 플랫폼으로,
아마존닷컴 쇼핑몰에서 추수감사절이나 크리스마스 같은 시즌마다
몰리는 트래픽을 감당하기 위해 왕창 증설해둔 서버들이 평소엔 남아도니,
이걸 밖에서 쓸 수 있는 서비스를 만들어 팔아보자는 의도로 시작했는데,
지금은 세계 1위의 클라우드 플랫폼이 되어버렸다.(...) - 나무위키
맛만 볼까요?
Why AWS ? – 확장성
Setting Server
On Service
Why AWS ? - 확장성
Setting Server AMI
On Service
Why AWS ? - 확장성
Setting Server
On Service
AMI
Large Instance!
Why AWS ? - 확장성
Old Server
On Service
New Server
몇번의 클릭만으로
Why AWS ? - 확장성 On Service
New Server
Scale UP
Why AWS ? - 확장성
Setting Server
On Service
Why AWS ? - 확장성
Setting Server
On Service
AMI
Why AWS ? - 확장성
Setting Server
On Service
Setting Server
On Service
Elastic Load Balancer
Scale OUT
몇번의 클릭만으로
Why AWS ? - 비용 절감
Setting Server
On Service
Setting Server
Off
Why AWS ? - 비용 절감
Stop 상태에선 과금 X!
Why AWS ? - 비용 절감
Setting Server
On Service
Auto Scaling
트래픽에 따라 서버가 자동으로 증감
Setting Server
On Service
Setting Server
On Service
Setting Server
On Service
Why AWS ? - 비용 절감
Setting Server
On Service
Setting Server
On Service
즉, 사용자가 많지 않다면, 작은 서버를 쓰면 된다!
작은서버 -> 작은 비용 -> 비용 절감
Why AWS ? - 비용 절감
https://aws.amazon.com/ko/solutions/case-studies/devsisters/
AutoScaling으로 서버가
2대에서 60대까지 늘엇다줄엇다!
Devsisters (쿠키런) 의 사례
Why AWS ? - 기능별 분리
API Server : EC2 Instance / Lambda
Database : RDS / DynamoDB
Storage : S3
Why AWS ? - 기능별 분리
분할관리로 효율 UP
Why AWS ?
Why AWS ?
등등 넘나 많은 서비스
서버이전 결정!
그런데… 어떻게…?
겶색하고검색하고검색하…
Elastic Compute Cloud
쉽게말해, 한대의 컴퓨터를 대여해주는 서비스
사용 목적에 따라 네트워킹 특화 등 옵션 선택 가능
OS 선택가능
일단 옮겨보기
일단 옮겨보기
기존이랑 다를게 없잖아?
EC2
“AWS 인프라를 적극 활용해 보자!”
옮긴 후
Simple Storage Service
쉽게말해 파일 저장소, 용량 제한이 사실상 없다.
커맨드라인이나 EC2에 마운트 하여
쉽게 파일쓰기, 삭제, 수정이 가능함
Amazon S3
Simple Storage Service
S3 를 쓰려면..
-> AWS php sdk
-> 이미 구축되어있는 API
-> 업로드관련 모듈화 X
-> 파일업로드관련 모든 함수변경
-> 사진을 공유하는 어플
겶색하고검색하고검색하…
Simple Storage Service
Goofys
Go 언어를 이용해
S3 를 파일시스템처럼
사용할 수 있도록 만든
Open Source!
Simple Storage Service
AWS PHP SDK
AWS-CLI
API 수정
GOOFYS
업로드 이미지 저장소 분리하기
images
Amazon S3
S3 로 이미지서버 분리
“이미지도 옮겻는데, DB도 따로 두자!”
옮긴 후
Amazon S3
Relational Database Service
쉽게말해 클라우드 데이터베이스 서버,
시간 소모적인 데이터베이스 관리작업을
자동으로 관리해준다.
RDS
RDS 로 데이터베이스 서버 분리
옮긴 후… 그럴듯 한데..?
Amazon S3 Amazon RDS
“AWS의 진가는 지금부터!”
하지만
AMI ( Server Image )
클라우드의 가상 서버인 인스턴스를 시작하는데
필요한 정보를 제공하는 머신 이미지
AMI ( Server Image )
이건 또 뭐야
삽질로 얻은 결과
알려드립니다!
AMI ( Server Image )
그리고 사양은 이만큼입니다.
여기 서버 A가 있습니다.
AMI ( Server Image )
이것은 서버 A의 AMI 입니다.
이것만 있으면..
AMI ( Server Image )
원하는데로 서버를 찍어낼수 있습니다.
AMI ( Server Image )
AMI에서 서버를 하나 찍어내고..
AMI ( Server Image )
서버사양을 이만큼 크게만들고..
AMI ( Server Image )
찍어낸 서버를 넣으면..
AMI ( Server Image )
Scale UP!
EC2
AMI 만들어보기
New Server!
인스턴스 생성!
인스턴스 생성을 누르고,
My AMIs 에서 방금 생성한 이미지를 선택
AMI 로 무엇을 할까?
Elastic Load Balancer Auto Scaling
집중되는 부하를 여러 곳으로 나누어 처리
병렬 운영되는 장비들에 부하를 균등 배분하는 일
Load Balancing
덤벼라ㅏㅏ
AWS Elastic Load Balancer
AWS Elastic Load Balancer
AMI 를 사용해 클릭 몇번으로 구현가능
강력한 네트워킹 및 보안기능
자동 장애조치
ELB
AMI ( Server Image )
다시 AMI에서 서버를 하나 찍어내고..
AMI ( Server Image )
원래서버와 찍어낸 서버를
AMI ( Server Image )
(클릭 몇번으로) 묶어줍니다.
Load Balancer
Auto Scaling
BEST!
Auto Scaling ( low traffic )
Amaazon S3
Amazon RDS
ELB
Auto Scaling ( High traffic )
Amaazon S3
Amazon RDS
ELB
비용 절감 !
기존 호스팅 업체 AWS
21,2000
7,8000
“어떻게” 사용하냐에 따라 천차만별
직접 해봅시다 !
AWS Free Tier
AWS Free Tier
여러분, 삽질하세요!
여러분, 재미있게 삽질하세요!
삽질은 여러분을 배신하지 않습니다:)
부록 - Serverless Architecture
With AWS Lambda
AWS Lambda를 사용하면 서버를
프로비저닝하거나 관리할 필요 없이
코드를 실행할 수 있습니다.
사용한 컴퓨팅 시간만큼만 비용을 지불하고,
코드가 실행되지 않을 때는 요금이 부과되지 않습니다.
부록 - Serverless Architecture Example
https://aws.amazon.com/ko/blogs/korea/serverless-architecture-by-korean-developers/
Lambda 시연
THANK YOU
경 청 해 주 셔 서 감 사 합 니 다 : )

More Related Content

성준영 소프트콘 발표