AWS Key Management Service

AWS KMS는 데이터의 암호화를 위해서 사용하는 관리형 서비스다. KMS는 고가용성의 키 저장소와 관리 감사 기능을 제공한다. 이를 이용해서 애플리케이션에서 사용하는 데이터를 암호화 할 수 있으며, AWS 서비스에 저장되는 데이터(예를들어 S3에 저장되는 파일)을 암호화하기 위한 키를 (안전하게)관리 할 수 있다. AWS KMS에서 생성한 마스터 키는 F...

Aurora RDS 백업과 복구

데이터베이스를 복원하는 것은 쉬운일이 아니다. 복원하는 방법을 찾기전에, (가능한)복원할 일이 없도록 시스템과 운영정책을 만드는게 우선이다. 애플리케이션 권한을 분리한다. 프러덕트 영역의 데이터베이스로의 접근을 엄격히 제한한다. 접근이 필요한 경우 필요한 권한만 준다. 상태를 모니터링하러 접속하는데 DELETE, UPDATE 권한을 모두 줄 필요는 없다...

Serverless Aurora

는 컴퓨팅 노드와 스토리지를 분리하는 것으로 확장성과 성능, 유연성을 확보했다. 그래도 여전히 컴퓨팅을 담당하는 EC2 인스턴스는 필요했다. AWS는 2018년 서버노드가 전혀 필요 없는 말 그대로의 서버리스(Serverless) Aurora 서비스를 출시했다. Aurora 서버리스는 온디맨드 방식으로 제공되며, 자동으로 크기가 조정되는 서버리스 Auror...

VPC Private link를 이용한 SaaS 개발

PrivateLink는 VPC 내부에서 외부에 있는 다른 서비스를 연결하기 위한 기술이다. PrivateLink를 이용하면, 퍼블릭 네트워크(인터넷)을 거치지 않고도 AWS의 서비스와 다른 서비스(다른 계정의 네트워크, 다른 VPC에 존재하는)를 호출 할 수 있다.PrivateLink는 아래와 같은 장점이 있다. 트래픽보호 간단한 네트워크 구성 마이그레...

클라우드 개요

클라우드 컴퓨팅은 컴퓨터 시스템의 구성 요소들을 모아서 하나의 풀로 만든다. 그리고 어떤 유저가 컴퓨터 자원을 요청 할 때, 풀에서 일부분을 떼어내서 대여하는 서비스를 클라우드 서비스라고 한다.사용자는 직접 물리적인 인프라를 구성, 운영하는 대신에, 마치 "전기나 수도"처럼 필요한 필요한 만큼 빌려서 사용 할 수 있다. 때문에 다른 복잡한 것들에 신경쓰지 ...

AWS Elastic Beanstalk

AWS Elastic Beanstalk는 EC2, S3, SNS, CloudWatch, Auto Scaling, Elatic Load Balancer과 같은 다양한 AWS 서비스를 조율해서 배치 할 수 있도록 제공되는 오케스트레이션 서비스다. Beanstalk는 운영체제를 추상화 한다. 즉 운영체제를 신경 쓸 필요 없이, 미리 구축된 환경에서 애플리케이션을...

Web Architecture ABC With AWS

예전에 를 다룬적이 있다. 인터넷 웹 서비스에서 일반적으로 사용 할 수 있는 아키텍처를 묘사하고 구성요소들에 대해서 간단히 살펴봤다. 이 아키텍처를 AWS 기반으로 다시 만들어 보려 한다. 웹 서비스 아키텍처 ABC 에서 설명했던 아키텍처는 아래와 같다.위 아키텍처는 Joinc 서비스에서 사용하고 있는 아키텍처다. Joinc는 wiki 문서의 작성과 관리...

웹 서비스 아키텍처 ABC

원문 웹 서비스를 개발 할 때 참고 할 수 있는 기본 아키텍처다. 실 서비스에서는 구성요소들이 복잡해지고 다뤄야 하는 내용이 깊어질 수는 있겠지만 많은 서비스들은 여기에서 소개한 아키텍처를 확장 & 응용하는 것만으로 큰 틀을 잡을 수 있을 것이다. 위 그림은 운영중인 joinc 웹 서비스 아키텍처를 묘사하고(개인 사이트이기 때문에, 실제 위의 구성요소를 모...

ElasticCache 기반 메시징 애플리케이션 개발

AWS에서 제공하는 인프라와 서비스들을 이용해서 대량의 메시지를 교환하는 메시징 애플리케이션을 만들어보려 한다. 메시지는 을 이용한다. 아래와 같은 구성을 가질 것이다.PUB/SUB은 REDIS 고유의 기능으로 구현에 어려움은 없다. 1. 채팅방에 해당하는 Topic을 만든다. 1. 메시지 수신자는 해당 Topic을 구독(REDIS SUBSCRIBE)한다...

AWS SAMLocal

AWS는 서버리스 환경에서의 애플리케이션 구현 모델인 AWS SAM을 개발하고 있다. 여기에는 SAM 사양과 SAM 템플릿을 AWS CloudFormation으로 변환하는 코드, 프로그래밍 예제 등을 포함하고 있다. SAM Local은 SAM의 구현체다. 서비리스 응용 프로그램을 만들려면, 람다함수에 대한 사양을 저장하는 JSON이나 YAML 형식의 SAM...