10. AWS EC2 + Spring boot (2) - AMI, Scalability

2021. 2. 18. 17:01프로젝트/Salle(살래) 중고거래 웹

728x90

프로젝트를 업로드 하는 실용적인 개념부터 알아야 하는데 우선 강의가 얼마 안되는 것 같으니 듣기 시작했습니다. 이 다음부터 S3(Simple Server Storage)  전 까지 Scale 강의인데 바로 규모있는 프로젝트를 할 것도 아니라서 최대한 실용적인 부분을 골라들을 생각입니다. 

 

AWS EC2 AMI

  • Amazon Machine Image

    • 컴퓨터 OS, 프로그램을 그대로 복제해서 가져오는 Image(틀)

    • EC2 인스턴스 복제가 가능하다

    • 용도: 백업(ex.서버 쪽 하드한 작업 시)


AWS Marketplace

  • 다른 사람이 만들어 놓은 Instance를 사용할 수 있음(틀이 만들어져 있음)

  • Wordpress(Global blog website platform) 만들어보기 실습


AWS EC2 Scalability

  • 클라우드 컴퓨팅(cloud computing)의 특징은 가상화, 종량제. 

  • 가상머신은 SW로 만든 컴퓨터(물리적 컴퓨터가 아님)

https://www.opentutorials.org/course/2717/11294

  • 종량제: 필요한 스펙과 비용에 따라 사이즈, 비용 선택이 가능하다.

https://www.opentutorials.org/course/2717/11294


Scale 테스트

  • 공격(클라이언트) 컴퓨터, 수비(서버) 컴퓨터가 필요함

  • 가상머신 2개 인스턴스를 만들어 줌

  • XShell로 리눅스 ab 명령어 사용(benchmark apache server command) ab -n [request] -c [concurrency] [url] 

  • 부하 확인은 server 쪽 linux 명령어 top로 확인할 수 있다. 

  • Concurrency가 커질수록 time per request가 길어진다.(==사용자 경험UX가 나빠진다)

  • 이런 과부하를 해결할 수 있는 방법이 바로 Scale Up이다.

  • 참고사항: 인스턴스를 중지했다가 리부트하면 할당된 IP가 변경돼 있는데 이는 고갈현상을 막기위해 중지됐을 때 AWS가 내 IP를 누군가에게 재할당해줬기 때문이다. 이게 싫다면 Elastic IP를 통해 고정 IP를 사용할 수도 있다. 유료임