☁️ 클라우드 통합 개요 여러가지 응용 프로그램을 배포하기 시작하고 어느 시점이 되면 서로 통신이 필요하게 된다. 응용 프로그램의 통신의 유형에는 응용 프로그램끼리 직접 통신하는 동기 통신 방식과, 응용 프로그램이 큐를 사이에 두고 통신하는 비동기 / 이벤트 기반 통신이 있다. 응용 프로그램끼리 동기 통신을 하는 경우, 갑자기 트래픽이 급증하는 경우 문제가 될 수 있다. 이 경우 큐 모델 SQS, 게시/구독 모델 SNS, 또는 실시간 데이터 스트리밍 모델 Kinesis를 사용하여 응용 프로그램을 분할하는 것이 좋다. 이 서비스들은 응용 프로그램에 대해 독립적으로 확장이 가능하다. 📦 Amazon SQS SQS는 Simple Queue Service의 약어로, 응용 프로그램을 분할하는데 사용하는 완전관리형..
자격증
🌎 Global Application 글로벌 응용 프로그램이란, 여러 리전이나 엣지 로케이션에서 배포되는 응용 프로그램이다. 글로블 응용 프로그램을 만들게 되면 지연시간이 감소하며, 재난 복구가 가능해지고 외부의 공격으로부터 글로벌 인프라를 보호할 수 있다. ✅ AWS의 글로벌 응용 프로그램 Global DNS : Route 53 Global Content Delivery Network (CDN) : CloudFront S3 Transfer Acceleration AWS Global Accelerator 🪧 Route 53 Route 53은 관리형 DNS 서비스이다. ✅ AWS에서 가장 자주 쓰이는 레코드 A 레코드 : 도메인 주소를 IPv4 형식으로 라우팅하는 경우 사용 AAAA 레코드 (IPv6) ..
☁️ AWS CloudFormation CloudFormation이란, 모든 리소스에 대해 AWS 인프라의 개요를 설명하는 선언적 방법이다. CloudFormation 템플릿을 통해 어떤 요소들이 필요한지 설명하면, CloudFormation은 사용자가 특정한 구성을 정확하게 올바른 순서대로 만들어준다. ✅ CloudFormation의 장점 코드로서의 인프라 : 어떠한 리소스도 수동으로 만들지 않으므로 제어하기에 좋으며, 인프라의 변경점은 코드를 통해 검토하게 된다. 비용 측면 : 스택 내부의 각 리소스들은 식별자로 태그되기 때문에, 스택 비용이 얼마나 나오는지 쉽게 확인할 수 있으며, CloudFormation 템플릿을 이용해 리소스의 비용을 추정할 수도 있다. 또한, 저축 전략을 세울 수도 있다. 생..
🐳 Docker 도커는 앱을 배포하기 위한 소프트웨어 개발 플랫폼이다. 도커에서 앱들은 어떠한 운영체제에서도 작동이 가능한 컨테이너로 패키징되어있으며, 컨테이너에서 한 번 실행되면 어디서 실행되던 같은 방식으로 실행되므로 호환성 문제가 없고, 실행 결과가 예측 가능하며 작업량이 줄고 유지와 배포가 쉽다. 또한 도커를 이용해 컨테이너의 스케일을 매우 빠르게 변경할 수 있다. 도커 이미지는 도커 저장소라는 곳에 저장되며, public 저장소인 도커 허브에서는 기본 도커 이미지를 찾아 사용할 수 있고, private 저장소로는 Amazon ECR을 사용할 수 있다. Docker 🆚 Virtual Machines 도커는 일종의 시각화 기술이지만, 정확히는 아니다. 리소스는 호스트와 공유되며, 이는 한 서버에 많..
🛢️ 데이터베이스 개요 EFS, EBS, EC2 인스턴스 스토어, S3과 같이 디스크에 데이터를 저장하는 것은 한계가 있다. 데이터베이스에 데이터를 저장하는 경우, 데이터 구조화, 효율적인 쿼리, 인덱스 생성이 가능하다. 또한 데이터셋 간의 관계를 정의할 수 있다. 데이터베이스는 목적에 맞게 최적화 되어있으며, 각기 다른 기능, 모양, 제약조건을 가진다. 👫🏻 관계형 데이터베이스 행과 열로 이루어진 데이터로, 쿼리에 SQL 언어를 사용한다. 🙅🏻 NoSQL 데이터베이스 비관계형 데이터베이스로, 특정 데이터 모델을 위해 만들어졌으며 유연한 구조를 가진 데이터베이스이다. [장점] 유연성 : 데이터 모델을 발전시키는 것이 쉽다. 확장성 : 분산 서버를 사용해 스케일 아웃을 할 수 있도록 설계되었다. 고성능 :..
📁 Amazon S3 Amazon S3는 무한 스케일링 저장소라고 한다. 많은 웹사이트에서 Amazon S3를 백본으로 사용하고, 많은 AWS 서비스들도 Amazon S3를 통합하여 이용한다. ⚙️ Amazon S3의 Use cases 백업 및 저장소 재난 복구 아카이브 하이브리드 클라우드 저장소 애플리케이션 호스팅 데이터 레이크 & 빅데이터 분석 소프트웨어 제공 정적인 웹사이트 호스팅 🪣 Amazon S3 Buckets 아마존 S3는 객체들을 버킷에 저장하도록 한다. 버킷에는 모든 리전과 모든 계정을 통틀어서 고유한 이름을 사용해야 한다. S3는 글로벌 서비스처럼 보이지만, 버킷은 리전 단위로 생성된다. ✅ 버킷 명명 규칙 대문자나 밑줄을 허용하지 않음 3 ~ 6글자 IP 주소는 안됨 반드시 소문자나 ..