AWS

· AWS
Kinesis Data Stream으로 로그를 전송하는 기본적인 방법은 Kinesis Agent를 이용하는 것입니다. Kinesis Agent는 Kinesis Data Stream이나 Kinesis Data Firehose에 데이터를 전송할 수 있으며 CloudWatch Metrics로 지표도 보낼 수 있습니다. 1. 준비 Kinesis Data Stream 하나를 생성합니다. 데이터를 확인하기 위해 Kinesis Data Firehose까지 생성해도 좋습니다. 로그를 생성할 EC2 Instance(Amazon Linux) 하나를 생성합니다. EC2 Instance가 사용하는 IAM Role에 다음과 같은 Policy가 있어야 합니다. { "Version": "2012-10-17", "Statement"..
· AWS
AWS Lambda는 많은 용도로 사용되며, 많은 기능이 있습니다. 그 중 Lambda Function URL 기능을 이용하면 Lambda 함수에 대한 전용 HTTPS 엔드포인트를 제공받을 수 있습니다. Function URL은 단일 기능 마이크로서비스를 구현해야 하는 양식 유효성 검사기, 모바일 결제 처리, 광고 배치 등에 적합합니다. Function URL을 CloudFront와 연결하면 가장 짧은 지연 시간을 제공하는 엣지 로케이션을 통해 서비스를 최적의 성능으로 제공할 수 있습니다. 오늘은 Lambda Function URL과 CloudFront를 연결해봅시다. 1. Lambda Create a function을 누릅니다. Function 이름을 입력하고, Runtime을 Python 3.11로 ..
· AWS
Terraform의 Module은 함께 사용되는 여러 리소스에 대한 컨테이너로서 .tf 및 .tf.json 파일 등으로 구성됩니다. Module을 통해 리소스 구성을 패키징하고 재사용할 수 있습니다. 또한, Terraform Registry를 통하여 다른 사람이 게시한 Module도 사용할 수 있습니다. 오늘은 Terraform Registry에 게시된 Module 중 VPC Module을 사용해봅시다. 1. tf 파일 작성 작업 디렉토리 하나를 생성하고, 설정 파일(config.tf) 하나를 생성합니다. 설정 파일에서는 provider 정보를 명시합니다. terraform { required_providers { aws = { source = "hashicorp/aws" version = "~> 5.0..
· AWS
웹서비스는 국내뿐만 아니라 해외에도 빠른 연결을 제공해야 합니다. 그러나 데이터를 보관하는 데이터베이스가 국내에만 있을 경우, 해외에서는 Read / Write가 느려질 것입니다. 이 문제를 해결하려면 다른 리전에도 Read Replica를 놓는 등의 조치를 해야합니다. 오늘은 2가지 방법을 통해 해외에도 빠른 Read / Write를 제공해봅시다. 0. 사전 준비 Seoul 리전과 Tokyo 리전에 2개의 public subnet, 2개의 private subnet을 가진 VPC가 생성되어야 합니다. 두 리전 모두 private subnet 2개를 포함하는 subnet group을 생성합니다. 다음 링크를 참고하여 Seoul 리전에 Aurora Database를 생성합니다. https://arcozz...
· AWS
RDS의 DB 엔진으로 MySQL, PostgreSQL을 선택해도 되지만, 아마존이 클라우드에 최적화되게 개발하여 성능이 좋은 Aurora를 선택해도 됩니다. 오늘은 DB 엔진 Aurora에 대해 알아봅시다. 1. Aurora MySQL과 PostgreSQL에서 호환됩니다. 여러가지 최적화를 통해 RDS의 MySQL보다 5배 높은 성능, Postgres보다 3배 높은 성능을 가집니다. 자동으로 스토리지를 확장합니다. 10GB에서 시작하여 128TB까지 확장 가능합니다. CPU 96vCPU와 메모리 768GB까지 증가 가능합니다. 최대 15개의 Read Replicas를 더 빠른 복제 속도로 생성 가능합니다. 즉각적인 장애 조치와 높은 가용성을 가지고 있습니다. RDS에 비해 약 20% 정도 높은 비용이지..
· AWS
RDS Database의 고가용성을 위하여 Read Replicas와 Multi AZ 기능을 이용하는 것이 좋습니다. 오늘은 이 두 기능에 대해 알아봅시다. 1. Read Replicas Read(읽기)를 스케일링하여 DB의 부하를 분산시킵니다. MySQL, MariaDB, PostgreSQL DB 엔진은 최대 15개를 생성할 수 있습니다. Oracle, Microsoft SQL Server DB 엔진은 최대 5개를 생성할 수 있습니다. 동일한 가용 영역 또는 가용 영역이나 리전을 걸쳐서(Cross AZ, Cross Region) 생성이 가능합니다. DB Instance와 Read Replicas 간 비동기식(Async) 복제가 발생하여 Read가 일관적으로 유지됩니다. DB Instance로 승격시킬 ..
· AWS
웬만한 애플리케이션은 데이터베이스를 사용합니다. 데이터베이스 중에서도 수요가 많은 것은 관계형 데이터베이스 (RDB)입니다. 관계형 데이터베이스는 데이터가 하나 이상의 열과 행의 테이블(또는 '관계')에 저장되어 서로 다른 데이터 구조가 어떻게 관련되어 있는지 쉽게 파악하고 이해할 수 있도록 사전 정의된 관계로 데이터를 구성하는 정보 모음입니다. 관계는 이러한 테이블 간의 상호작용을 기반으로 설정되는 여러 테이블 간의 논리적 연결입니다. 이러한 관계형 데이터베이스를 EC2에서 직접 설치하여 운영할 수도 있지만, AWS에서 관리해주는 RDS를 사용하는 것이 좋은 선택입니다. 오늘은 RDS에 대해 간단하게 알아보고 작은 실습을 해봅시다. 1. RDS란? RDS는 Relational Database Servi..
· AWS
EKS에서 Service를 생성할 때마다 외부 트래픽을 받기 위해 ALB나 NLB를 생성해야 합니다. 이것은 매우 귀찮은 일이고, AWS WAF 같은 리소스가 추가로 붙으면 더 까다로워질 것입니다. 이것을 해결하기 위해 AWS Load Balancer Controller가 나왔습니다. AWS Load Balancer Controller는 EKS 클러스터의 Elastic Load Balancer 관리를 돕는 Controller입니다. Ingress를 통하여 ALB, Service를 통하여 NLB를 생성할 수 있습니다. 쿠버네티스 리소스를 이용해 ELB를 생성하므로 yaml 파일로 생성과 제거가 가능하여 관리또한 쉬워집니다. 오늘은 AWS Load Balancer Controller를 설치하고, ALB와 N..
KimJeongTae
'AWS' 태그의 글 목록 (2 Page)