본문 바로가기

728x90

AWS

(99)
AWS Elastic Beanstalk AWS Elastic Beanstalk : AWS 컴퓨팅 서비스의 또 다른 옵션 AWS 클라우드에서 웹 애플리케이션을 손쉽게 시작하고 실행할 수 있는 방법을 제공 인프라 프로비저닝 배포 로드 밸런싱 자동 조정 상태 모니터링 분석, 디버깅 로깅 코드를 업로드하면 Elastic Beanstalk가 용량 프로비저닝부터 로드 밸런싱, 자동 조정, 애플리케이션 상태 모니터링 등 전체 배포를 자동으로 처리 - 추가 비용 X - 애플리케이션을 생성하고 저장하고 실행하기 위해 사용하는 EC2나 S3 버킷과 같은 AWS 리소스에 대한 비용만 지불하면 됨 - 사용한만큼만 지불 AWS 콘솔, AWS CLI, 비주얼 스튜디오, 이클립스를 통해 코드를 배포할 수 있다 Java, .NET, PHP, Node.js, Python,..
서버리스 serverless : AWS Lambda 서버 프로비저닝 또는 관리가 불필요한 컴퓨팅은 서버리스 컴퓨팅 AWS Lambda : 이벤트 중심 서버리스 컴퓨팅 서비스 - 서버를 프로비저닝하거나 관리할 필요 없이 코드 실행 가능 - 실행하려는 코드를 포함하는 AWS 리소스인 Lambda 함수를 생성한 다음 일정에 따라 또는 이벤트에 대한 응답으로 Lambda 함수가 트리거되도록 설정 - 코드는 트리거될 때만 실행됨 - 사용한 컴퓨팅 시간에 대해서만 비용을 지불함 - 코드를 실행하지 않을 때는 요금 부과X 장점 ○ Lambda를 사용하면 새로운 언어나 도구, 프레임워크를 배울 필요가 없음 - Java, Go, PowerShell, Node.js, C#, Python, Ruby 등 여러 프로그래밍 언어 지원 ○ Lambda에서 관리는 완전 자동화됨 - ..
컨테이너 | 도커 | 쿠버네티스 | 가상머신 컨테이너 : 운영체제를 가상화하는 방식 중 하나 - 가상머신보다 작으며 전체 운영 체제를 포함하지 않음 - 가상화된 운영체제를 공유하며 리소스가 격리된 프로세스로 실행됨 1. 반복성 지원 2. 독립형 실행 환경 - 애플리케이션의 코드, 구성, 패키징되기 때문에 환경의 일관성이 보장됨 3.소프트웨어가 서로 다른 환경에서 동일하게 실행됨 - 종속성이 독립적인 실행 환경 - 애플리케이션을 배포 환경에 관계 없이 빠르고 안정적으로 일관되게 배포할 수 있도록 해줌 4. 컨테이너 이미지는 가상 머신보다 훨씬 작음 - 컨테이너 스핀업은 수백 밀리초 안에 이루어지므로 기존 가상 머신보다 빠르게 시작됨 Docker란? : 애플리케이션을 신속하게 구축, 테스트, 배포할 수 있는 소프트웨어 플랫폼 도커는 컨테이너를 호스팅할..
Amazon EC2 요금 모델 EC2는 인스턴스 생성 시 요금 모델을 선택할 수 있다 온디맨드 인스턴스 - AWS 프리티어 적용 - 선결제 금액이 가장 낮고 가장 유연 - 사전 약정이나 장기 계약이 없음 - 워크로드 용량이 들쭉날쭉 하거나 테스트를 실행해야 하는 경우, 개발이나 테스트를 위한 애플리케이션을 단기간 실행해야 하는 경우 적합 전용 호스트 - 고객을 위해 EC2 인스턴스 용량을 완전히 전용으로 사용하는 물리적 서버 - MS SQL Server 라이선스와 같은 기존 소프트웨어 라이선스 사용 가능 - 기존 소켓당, 코어당, VM당 라이선싱을 사용 중, 특정 기업의 규제 준수를 충족해야 하는 경우 적합 전용 인스턴스 - 단일 고객을 위한 전용 하드웨어의 VPC(가상 프라이빗 클라우드)에서 실행되는 인스턴스 - 라이선스 제한이 있..
가상머신을 그냥 준다고? Amazon EC2 보통의 경우, 온프레미스 서버를 생각해보자. 이를 실행하려면 서버를 구입하고 데이터센터를 구축하고, 직원을 배치하고, 유지관리를 수행해야한다.. 피크 워크로드 즉, 서버가 최대로 처리할 수 있는 만큼의 하드웨어를 영구적으로 프로비저닝 해야한다 그러면 하루 대부분의 시간 동안 서버 용량이 사용되지 않아 서버가 낭비된다(돈 아까워!) 이와 다른 우리의 AWS EC2를 살펴보자 Amazon Elastic Compute Cloud : Amazon EC2 - 온프레미스 서버에서 실행하는 것과 동일한 애플리케이션을 호스팅할 수 있는 가상머신을 제공한다 - 안전하고 크기 조정이 가능한 컴퓨팅 용량을 클라우드에서 사용할 수 있다 - 사용 사례 : 애플리케이션 서버, 웹 서버, 데이터베이스 서버, 게임 서버 등등 수많은..
AWS의 컴퓨팅 서비스 정리 AWS에서 제공하는 컴퓨팅 서비스는 매우 많다 대표적인 것은 EC2, Elastic Beanstalk, ECR, EKS, ECS, Lambda, Fargate 등등.. 서비스 주요 개념 특성 Amazon EC2 - IaaS(서비스형 인프라) - 인스턴스 기반 - 가상머신 - 원하는 방식으로 관리할 수 있는 가상 머신 프로비저닝 - 유연성 제공 - 운영체제, 서버 크기, 리소스 기능 등 서버 관리 작업의 많은 부분을 사용자가 맡아야 함 AWS Lambda - 서버리스 컴퓨팅 - 함수 기반 - 저렴한 비용 - 서버를 프로비저닝하거나 관리하지 않아도 코드 실행 가능 - 일정에 따라 실행되거나 이벤트에 의해 트리거될 수 있는 코드 작성, 배포 - 가능하면 사용 - 클라우드 네이티브 아키텍처 지원 Amazon E..
AWS의 데이터베이스 정리 AWS의 데이터베이스 서비스를 비교해보자 RDS vs DynamoDB vs RedShift vs Amazon Aurora RDS 관계형 데이터베이스를 사용할 때, mySQL, mariaDB와 같은 것. 사용자가 관계형 데이터베이스를 쓰고 있으면 그냥 편리하게 쓰던 거 쓸 수 있도록 함 DynamoDB noSQL로, 키-값일 경우 사용 요새 나오는 게임회사에서 쓴다고 함 RedShift 데이터 웨어 하우스를 사용할 때 기업의 전문가 시스템에서 주로 사용한다 Amazon Aurora RDS 엔진 중 하나로 AWS의 클라우드 기반 DB이다. 아마존에서 만든 것으로, 리드 리플리카를 여러 개 생성할 수 있다
컴퓨터 용량을 자동으로 조정하는 방법 : Amazon EC2 Auto Scaling 조정(scaling)은 어떤 컴퓨터의 용량을 줄이거나 늘리는 기능 어떤 특정 시간에 가장 높은 수요를 충족하도록 컴퓨터 용량을 프로비저닝 한다고 하자. 그러면 대부분의 다른 시간에 활용도가 낮은 상태로 리소스를 실행하게 된다 -> 이러면 비용이 최적화되지 않는다 혹은 더 적은 용량을 할당하여 비용을 줄이는 것인데, 이러면 특정 시간에는 용량이 부족하게 된다 이를 막기 위한게 자동 용량 조정 위 그림처럼 유동적인 서비스 수요를 지원하는데 필요하다 조정 기능이 없다면 애플리케이션의 성능이 저하되거나 사용자가 전혀 사용할 수 없을지도 모른다 클라우드에서 컴퓨팅 파워는 프로그래밍 방식의 리소스이다 -> 유연한 방식으로 조정할 수 있다는 소리 Amazon EC2 Auto Scaling : 애플리케이션의 가용성을 ..

728x90