Programming

    [AWS, Certified Developer Associate] S3 - LifeCycle, 이벤트 알림, 성능, Select 및 Glacier Select, 객체 태그, 메타 데이터

    S3 - LifeCycleTransaction Actions생성한지 60일 후 Standard IA로 이동6개월 후 아카이빙을 위해 Glacier로 이동Expiration Actions일정 기간 후 객체가 삭제되도록 처리ex) 1년 후 액세스 로그 파일 삭제 / 버저닝을 활성화해 이전 버전 삭제특정 접두사 규칙 / 태그에 적용해 버킷 내 특정 경로에만 적용되도록 처리 가능 S3 - 이벤트 알림Event : 객체 생성 / 삭제 / 복원 / 복제이벤트 필터링 가능 (확장자가 jpg)ex) S3에 업로드되는 모든 이미지의 썸네일 생성이벤트 알림 생성 후 SNS / SQS / Lambda 으로 보내 처리 가능IAM 권한 필요S3의 IAM 역할 사용 Xex) SNS에 전송 시 SNS 주제로 SNS Resource..

    [AWS, Certified Developer Associate] S3 - 개요, 버킷 정책, 복제, 스토리지 클래스

    S3 개요무한히 확장 가능한 스토리지사용사례백업 or 스토리지재해 복구 (백업)기록 보관하이브리드 클라우드 스토리지 (온프레미스 스토리지에 대해 클라우드로 확장)데이터 레이크 & 빅데이터 분석소프트웨어 업데이트 S3 - Bucket최상위 디렉터리 개념버킷에 담기는 파일은 객체(Object)전역적으로 유니크한 이름을 가짐리전 단위로 버킷 생성 S3 - Object각각 키를 가짐키는 파일의 전체 경로 (prefix + object name)s3://my-bucket/my_file.txts3://my-bucket/my_folder/test/my_file.txt실제로 S3에는 디렉터리 개념이 없음 (모든것은 하나의 키)객체 최대 크기는 5TB (5000GB)초과 시 멀티 파트로 분할해 저장메타데이터 가질 수 있..

    [AWS, Certified Developer Associate] VPC

    VPC (Virtual Private Cloud) & SubnetsAWS Cloud 내 사설 네트워크리전 별 리소스 (리전 별 각각 다른 리소스를 가짐)각 VPC 내에는 서브넷 존재 (VPC 내 네트워크 분할)서브넷은 AZ 별 리소스public subnet: 인터넷으로부터 접근 가능 (www)private subnet : 인터넷으로부터 접근 불가능VPC는 CIDR Range를 가짐 (VPC에서 허용하는 IP 범위)기본 VPC : AZ마다 하나의 public subnet / Region 마다 하나의 VPC   IGW (Internet Gateway)subnet에 있는 VPC 인스턴스가 인터넷에 연결되도록 지원public subnet은 IGW로 라우팅IGW는 인터넷과 통신하는 방법을 알고있어 public s..

    [AWS, Certified Developer Associate] DNS, Route 53

    Route 53고가용성, 확장성, 완전한 관리, 권한있는 DNS / Domain Registrar권한있는 = 고객이 DNS record 업데이트 가능public IP를 가지고 있는 EC2 인스턴스에 대해 DNS 서비스 제공 (example.com 요청 -> 12.34.56 응답)리소스에 대한 상태 체크 가능100% SLA (고객이 공급업체로부터 기대하는 서비스 수준) 가용성을 제공하는 유일한 AWS 서비스53은 유일한 DNS 포트 DNS Record TypeA - 호스트이름과 IPv4 매핑AAAA - 호스트이름과 IPv6 매핑CNAME - 호스트이름과 다른 호스트이름 매핑NS - 호스팅 존의 이름 서버. 서버의 DNS 이름 or IP 주소로, 호스팅존에 대한 DNS 쿼리에 응답 Hosted Zone도메인..

    [AWS, Certified Developer Associate] Aurora, RDS 프록시, ElastiCache

    AuroraAWS의 독점 기술 (오픈소스 X)Postgre / MySQL과 호환 (드라이버 호환 O)클라우드 최적화, 기능을 통해 RDS에서 MySQL 대비 5배 / Postgre 대비 3배 높은 성능스토리지 자동 스케일링 (10GB up to 128TB)15개 Read Replica 가능 및 복제 속도 빠름 (MySQL은 5개)리전 간 복제 지원즉각적인 장애 복구 (MySQL의 다중 AZ 장애 조치보다 훨씬 빠름)Master 장애 발생 시 평균 30초 이내 장애조치클라우드 네이티브로 고가용성 제공다른 RDS보다 20% 더 많은 비용 고효율 Aurora의 고가용성 및 읽기 확장성, DB 클러스터데이터에 대해서 3개의 AZ에 6개의 사본이 저장됨쓰기에 대해서는 6개 중 4개 사본 필요 (하나의 AZ가 다..

    [AWS, Certified Developer Associate] RDS - Storage Auto Scaling, Read Replica, Multi-AZ

    RDS (Relational Database Service)query language로 SQL을 사용하는 DB를 위한 관리형 DB 서비스PostgreSQLMySQLMariaDBOracleMicrosoft SQL ServerAurora EC2 인스턴스에 DB를 배포하는 것 대신 RDS를 쓰는 이유자동 프로비저닝, OS 구성지속적인 백업 / 특정 타임스탬프로 복원 (특정 시점 복원, Point in Time Restore)읽기 전용 레플리카 제공 (읽기 성능 향상)재해 복구를 위한 다중 AZ 제공업그레이드를 위한 유지관리 기간스케일링 기능(인스턴스 유형 변경 수직 / 레플리카 수평)EBS를 통한 스토리지 기능 지원하지만 SSH 불가능 (EC2 접근 불가) RDS - Storage Auto Scaling스..

    [AWS, Certified Developer Associate] ASG

    ASG (Auto Scaling Group)AWS에서 EC2 인스턴스 생성 API 호출을 통해 빠르게 서버를 생성하고 제거 가능이를 자동화하는 기능ASG 목표스케일 아웃 (EC2 인스턴스 추가)을 통한 증가된 부하 감당스케일 인 (EC2 인스턴스 제거)를 통한 감소된 부하에 대해 자원 세이브최소/최대 EC2 인스턴스 개수 설정 가능새로운 EC2 인스턴스를 LB에 자동으로 등록 가능비정상적인 EC2 인스턴스를 새로운 EC2 인스턴스로 교체 가능무료CloudWatch와 연동하여 스케일링 가능ex) CloudWatch에서 평균 CPU Utilization이 특정 값을 넘어 경보가 전달되면 EC2 인스턴스 추가 스케일링 정책동적 스케일링 정책 (Dynamic Scaling Policies)Target Track..

    [AWS, Certified Developer Associate] Load Balancer

    ELB (Elastic Load Balancer)트래픽을 여러 서버(ex. EC2 인스턴스)에 전달하는 역할EC2 인스턴스로 가는 부하를 분산유저는 어떤 서버로 요청이 전송되는지 알지 못함 (ELB 하나의 엔드포인트에서 부하 분산)LB 보안그룹은 HTTP, HTTPS 모두 허용EC2 보안그룹은 HTTP 트래픽만 허용,Source는 LB 보안그룹만 허용Load Balancer가 필요한 이유부하를 다수의 다운스트림 인스턴스로 분산단일 액세스 포인트 (DNS)를 가질 수 있음상태 확인을 통해 다운된 서버를 알고 이를 핸들링 가능SSL을 붙여 암호화된 웹사이트 -> HTTPS 트래픽을 가질 수 있음고가용성 제공클라우드 내에서 private 트래픽 / public 트래픽 분리 가능 ELB가 필요한 이유관리형 로드..

    [AWS, Certified Developer Associate] EC2 - AMI, Instance Store, EBS, EFS

    EBS Volume네트워크 드라이브 (물리 드라이브 X, 네트워크를 통해 연결된 드라이브)네트워크로 연결되어 있으므로 일시적인 지연이 있을 수 있음네트워크 드라이브이므로 분리 및 다른 인스턴스에 연결 가능CCP 레벨에서는 하나의 EBS는 하나의 EC2 인스턴스에만 마운트 가능하나의 EC2에 여러 EBS는 가능 Associate 레벨에서는 일부 EBS 다중 연결 가능특정 AZ에 고정됨. 다른 AZ로 연결 불가능스냅샷을 이용하면 가능Volume이므로 용량을 미리 결정해야함(GBs, IOPS[단위 초당 전송 수]). 이후 용량 변경 가능EC2 인스턴스 생성 시 콘솔에서 EBS 볼륨을 생성하면 종료 시 삭제 옵션 설정 가능 (Delete on Termination attribute)EC2 인스턴스 종료 시 E..

    [AWS, Certified Developer Associate] EC2 - 정의, 인스턴스 유형, 보안그룹

    EC2 (Elastic Compute Cloud)IaaS (Infrastructure as a Service)가상머신 임대 (EC2 인스턴스)OS 설정CPU 성능 설정RAM 설정스토리지 설정네트워크 연결 스토리지 : EBS, EFS하드웨어 연결 스토리지 : EC2 Instance Store네트워크 유형 설정네트워크 카드 속도, Public IP방화벽 규칙 설정보안그룹부트스트랩 스크립트를 이용해 실행 시 동작 설정EC2 User Data가상 드라이브에 데이터 저장 (EBS)부하 분산 (ELB)자동 서비스 확장 = Auto Scaling (ASG)  EC2 인스턴스 유형m5.2xlargem : 인스턴스 클래스 (범용목적, 네트워크, 스토리지 etc)5 : 세대2xlarge : 인스턴스 클래스의 크기Gener..