AWS(Amazon Web Service) 115

[AWS] RDS Proxy

RDS Proxy완전 관리형 RDS 데이터베이스 프록시도 배포할 수 있다.애플리케이션이 데이터베이스 내에서 데이터베이스 연결 풀을 형성하고 공유할 수 있다.  (RDS 데이터베이스에 바로 액세스하면 되는데 왜 프록시가 필요한지에 대한 답변이라고 볼 수 있다)  - 애플리케이션을 RDS 데이터베이스 인스턴스에 일일이 연결하는 대신 프록시에 연결하면 프록시가 하나의 풀에 연결을 모아 RDS 데이터베이스 인스턴스로 가는 연결이 줄어들게 된다.(RDS 데이터베이스 인스턴스에 연결이 많은 경우) CPU와 RAM 등 데이터베이스 리소스의 부담을 줄여 데이터베이스 효율성을 향상시킬 수 있고, 데이터베이스에 개방된 연결과 시간초과를 최소화할 수 있다.완전한 서버리스로 오토 스케일링이 가능해 용량을 관리할 필요가 없고,..

[AWS] RDS & Aurora Security

RDS & Aurora SecurityRDS 및 Aurora 데이터베이스에 저장된 데이터를 암호화 한다. = 데이터가 볼륨에 암호화된다.At-rest encryption - AWS KMS를 사용하여 데이터베이스 마스터 및 복제본 암호화가 이루어진다.      : 데이터베이스를 처음 실행할 때 정의된다. - 마스터(주 데이터베이스)가 암호화되지 않은 경우 읽기 복제본도 암호화 할 수 없다. - 암호화되지 않은 기존 데이터베이스를 암호화하려면 데이터베이스 스냅샷을 통해 암호화된 데이터베이스 형태로 데이터베이스 스냅샷을 복원해야 한다. 따라서, 스냅샷 생성 및 복원 작업을 거쳐야 한다.전송중의 데이터 암호화(In-flight encryption) - 기본적으로 전송 중 데이터 암호화 기능은 RDS와 Auror..

[AWS] RDS & Aurora 백업

RDS BackupsAutomated backups(자동화된 백업) - RDS 서비스가 자동으로 매일 데이터베이스의 전체 백업을 수행한다.(데이터베이스 백업기간동안) - 5분마다 트랜잭션 로그가 백업된다. (즉, 가장 빠른 백업은 5분 전의 백업이다.) - 자동 백업을 통해, 언제라도 5분 전으로 복원할 수 있다. - 자동 백업 보존 기간은 1~35일 사이로 설정 가능하다.      : 이 기능을 사용하지 않으려면 0으로 설정하여, 자동 백업을 사용하지 않도록 설정하면 된다.Manual DB Snapshots(수동 데이터베이스 스냅샷) - 사용자가 수동으로 트리거한다. - 수동으로 한 백업을 원하는 기간동안 유지할 수 있다.     (자동 백업은 만료되는 반면, 수동 DB 스냅샷은 원하는 기간 동안 보관..

[AWS] Aurora Replicas(복제본)

Aurora Replicas - Auto Scaling클라이언트가 있고, 우리에게 세 개의 Aurora 인스턴스가 있는 상황을 가정해보자.한 개는 라이터 엔드포인트로 쓰고 있을 것이고, 나머지 두 개는 리더 엔드포인트로 읽고 있을 것이다.그리고 지금 리더 엔드포인트에 아주 많은 읽기 요청이 들어오고 있다고 해보자.그러면 Amazon Aurora 데이터베이스의 CPU 사용량이 증가한다. 이 경우에 복제본 Auto Scaling을 설정할 수 있게되는데, 자동적으로 리더 엔드포인트는 새로운 레플리카들을 위해 확장될 것이다. 그러면 새 레플리카들은 트래픽을 받기 시작할 것이고, 읽기는 더 많이 분배되는 방식으로 일어날 것이다. 전체적인 CPU 사용량을 낮출 수 있다. Aurora - Custom Endpoint..

[AWS] Amazon Aurora

AuroraAWS 고유의 기술이다.오픈 소스는 아니지만, Postgres 및 MySQL과 호환되도록 만들었다.Aurora 데이터베이스에 호환 가능한 드라이버가 있는데, Postgres 및 MySQL 데이터베이스에 연결하면 작동함을 의미한다.클라우드에 최적화되어 있고, 여러 가지 최적화를 통해서 RDS의 MySQL보다 5배 높은 성능이며, Postgres보다는 3배 높은 성능이다.오로라의 스토리지는 자동으로 확장한다.  : 10GB에서 시작하지만 데이터베이스에 더 많은 데이터를 넣을수록 자동으로 128TB까지 커진다.  : DB나 SysOps로써, 저장 디스크를 신경 쓰지 않아도 된다는 것이다.(신경 쓰지 않아도 자동으로 커지니깐!)읽기 전용 복제본의 경우 15개의 복제본을 둘 수 있다.  : MySQL에..

[AWS] Amanzon RDS

RDS(Relational Databases Service)관계형 데이터 베이스 서비스의 약자이다.SQL을 쿼리 언어로 사용하는 데이터베이스에 대한 관리형 데이터베이스 서비스를 의미한다. (cf : SQL은 데이터베이스를 쿼리하는 구조화된 언어이다.)클라우드에서 RDS 서비스인 데이터베이스를 만들 수 있다. 이러한 데이터베이스는 AWS에서 관리된다.AWS에서는 밑의 다양한 유형의 데이터베이스 엔진을 관리한다.  - PostgreSQL  - MySQL  - Oracale  - Microsoft SQL Server  - IBM DB2  - Aurora(AWS의 독점 데이터베이스) EC2 인스턴스 위에 자체 데이터베이스 서비스를 구축하는 대신 RDS를 사용하는 이유는 무엇일까?왜냐면 RDS는 관리형 서비스이기..

[AWS] ASG(Auto Scaling Group)

ASG(Auto Scaling Group)웹사이트나 애플리케이션을 배포할 때, 웹사이트 방문자가 갈수록 많아지면서 로드가 바뀔 수 있다. 그리고 클라우드(ASW)에서 EC2 인스턴스 생성 API 호출을 통해 서버를 빠르게 생성하고 종료할 수 있다고 알고 있다. → 이를 자동화하는 것이 ASG이다.목표  : 스케일 아웃(증가한 로드)에 맞춰 EC2 인스턴스를 추가하거나 그리고 스케일 인(감소한 로드)에 맞춰 EC2 인스턴스를 제거하는 것이다. 따라서 ASG 크기는 시간이 지나면서 변할 것이다.ASG에서 실행되는 EC2 인스턴스의 최소 및 최대 개수를 보장하기 위해 매개변수를 전반적으로 정의할 수도 있다.로드 밸런서와 페어링하는 경우, ASG에 속한 모든 EC2 인스턴스가 로드 밸런서에 연결된다.한 인스턴스..

[AWS] ELB의 연결 드레이닝

Connection Draining(연결 드레이닝)CLB에서 사용할 경우에는 "연결 드레이닝"이라고 부르고, ALB나 NLB를 사용할 경우에는 "등록 취소 지연"이라고 부른다.인스턴스가 등록 취소, 혹은 비정상인 상태에 있을 때 인스턴스에 어느 정도의 시간을 주어 "in-flight requests"(인-플라이트 요청), 즉 활성 요청을 완료할 수 있도록하는 기능이다.연결이 드레이닝되면(인스턴스가 드레이닝되면) ELB는 등록 취소 중인 EC2 인스턴스로 새로운 요청을 보내지 않는 것이다.연결 드레이닝 파라미터는 매개변수로 표시할 수 있다. 1부터 3,600초 사이의 값으로 설정할 수 있는데 기본적으로는 300초, 즉 5분이다.그리고 이 값을 0으로 설정하면 전부 다 비활성화 할 수 있다.(값이 0이면 드..

[AWS] SSL(TLS)인증서

SSL(TLS)인증서클라이언트와 로드 밸런서 사이에서 트래픽이 이동하는 동안 암호화해준다. = 전송 중(in-flight) 암호화라고 한다.     (cf : 데이터는 네트워크를 이동하는 중에는 암호화되고, 송신자와 수신자 측에서만 이를 복호화할 수 있다.)"보안 소켓 계층"을 의미하고, 연결을 암호화하는데 사용한다.TLS는 새로운 버전의 SSL로, "전송 계층 보안"을 의미한다. (그래서 사실 SSL이 아니라 이제는 TLS라고 불러야되는데, 여전히 SSL로 불린다)Public SSL  : 인증 기관(CA)에서 발급한다.    (인증 기관 - Comodo, Symantec, GoDaddy, GlobalSign, Digicert, Letsencrypt,... 등등)  : 이 SSL를 로드 밸런서에 추가하면..

[AWS] ELB의 교차 영역 밸런싱

Cross-Zone Load Balancing(교차 영역 밸런싱)교차 영역 밸런싱을 사용하면, 모든 영역에 있는 EC2 인스턴스에 트래픽이 고르게 분배된다.ALB(Application Load Balancer) : 교차 영역 로드 밸런싱이 기본으로 활성화되어 있다.    (대상 그룹 설정에서 비활성화할 수 있다.) : 데이터를 다른 가용 영역으로 옮기는 데 비용이 들지 않는다.    (교차 영역 로드 밸런싱이 기본으로 활성화 되어있기 때문이다.      일반적으로 AWS에서는 데이터를 다른 가용 영역으로 옮길 때 비용을 지불해야 합니다.)NLB(Network Load Balancer) & GLB(Gateway Load Balancer)  : 기본으로 교차 영역 로드 밸런싱이 비활성화 되어 있다.     ..