내결함성과 고가용성
이 동영상에서는 내결함성과 고가용성 아키텍처에 대해 살펴보겠습니다.
우선 내결함성과 고가용성의 의미에 대해 살펴보겠습니다.
내결함성이란 시스템의 일부 구성 요소가 작동하지 않더라도 계속 작동할 수 있는 기능을 말합니다. 애플리케이션 구성 요소의 내장된 중복 기능이라고 볼 수 있습니다.
다음으로 고가용성입니다. 고가용성은 전체 시스템에 대한 개념입니다. 그 목표는 사람이 개입하지 않아도 시스템이 항상 작동하며 액세스 가능하며 가동 중지를 최소화하도록 보장하는 것입니다, 사이트를 단 1분이라도 사용할 수 없으면 비즈니스가 중대한 손상을 입을 수 있습니다. 그러나 Amazon Web Services에서는 이렇게 필요한 때 지원 도구를 제공합니다.
AWS 플랫폼은 사용자가 가용성이 높은 내결함성 시스템과 아키텍처를 구축할 때 제공됩니다. AWS는 사용자가 사람의 개입과 선결제 투자를 최소화하여 이러한 시스템을 구축할 수 있으며 이 모든 것을 요구에 따라 사용자 지정할 수 있다는 점에서 고유합니다.
그럼 AWS의 온프레미스 위치의 가용성을 비교해보겠습니다. 기존에는 로컬 데이터 센터의 고가용성을 확보하려면 매우 비싸기 때문에 미션 크리티컬 애플리케이션에서만 보장되는 것이 일반적이었습니다. 그러나 AWS에서는 어떤 서버를 선택하더라도 가용성을 확장하고 기능을 복구할 수 있습니다. 고가용성은 여러 대의 서버, 각 리전 내에 여러 개의 가용 영역, 여러 개의 리전, 내결함성 서비스에 대한 액세스를 확보하여 원하는 대로 사용할 수 있습니다.
고가용성 도구
그럼 특정 서비스가 고가용성을 제공할 때 도움이 되는 방법에 대해 살펴보겠습니다. Elastic load balancers(ELB), 탄력적 IP 주소, Amazon Route 53, Auto Scaling, Amazon CloudWatch를 살펴보겠습니다.
Amazon ELB
먼저, Amazon Elastic Load Balancing 즉 ELB는 인스턴스 가운데 수신 로드 또는 트래픽을 배포하는 서비스입니다. ELB는 관리형 모니터링 서비스인 Amazon CloudWatch로 지표를 전송할 수 있습니다. 이 내용은 이 모듈의 후반부에서 더 자세히 설명하겠습니다. 따라서 ELB는 지연 시간이 길거나 서버가 과다 사용되는 경우 이를 알리는 트리거가 될 수 있습니다. ELB를 사용자 지정할 수도 있습니다. 예를 들어 비정상적인 EC2 인스턴스를 인식하도록 구성할 수 있습니다. 퍼블릭 또는 내부 솔루션이 될 수 있습니다. 마지막으로, 여러 개의 서로 다른 프로토콜을 사용할 수 있습니다.
탄력적 IP 주소
그 다음, 탄력적 IP 주소가 있습니다. 탄력적 IP 주소는 애플리케이션의 내결함성을 향상시킬 때 유용합니다. 탄력적 IP는 동적 클라우드 컴퓨팅을 위해 고안된 동적 IP 주소입니다. 탄력적 IP는 동적 클라우드 컴퓨팅을 위해 고안된 고정 IP 주소입니다. 이 도구를 사용하면 사용자가 대체 리소스와 동일한 IP 주소를 사용할 수 있으므로 인스턴스 또는 소프트웨어의 실패를 마스킹할 수 있습니다. 탄력적 IP 주소를 사용하면 인스턴스가 실패하더라도 클라이언트가 애플리케이션에 액세스할 수 있으므로 고가용성이 보장됩니다.
Amazon Route 53
또 다른 서비스는 Amazon Route 53입니다. Route 53은 AWS에서 제공하는 신뢰할 수 있는 DNS 서비스입니다. 이 서비스는 도메인 이름을 IP 주소로 변환하는 데 사용됩니다. Amazon Route 53은 시장에서 최고 수준의 가용성으로 설계되고 유지됩니다. 그것은 단순 라우팅, 지연 시간에 따른 라우팅, 상태 확인, DNS 장애 조치, 그리고 지리 위치 라우팅을 지원하기 위해 개발되었습니다. 이러한 모든 특성을 통해 고객 대면 애플리케이션의 가용성이 증가합니다.
Auto Scaling
Auto Scaling에서는 특정 조건에 따라 인스턴스를 시작하거나 종료합니다. 이러한 서비스는 고객 요구의 변화에 따라 조정하고 수정할 수 있는 유연한 시스템을 구축하는 데 도움을 주기 위해 마련되었습니다. Auto Scaling을 사용하면 새 리소스를 수동으로 만드는 제한이 사라질 수 있습니다. 그 대신, 필요에 따라 리소스를 만들거나 프로비저닝을 예약합니다. 이것은 부하가 무엇이든 애플리케이션과 시스템을 계속 실행하는 데 사용됩니다. 또한 정책에 따라 확장하거나 축소할 프로비저닝을 설정할 수 있다는 사실을 명심해야 합니다.
Amazon CloudWatch
마지막으로, Amazon CloudWatch가 있습니다. Amazon CloudWatch는 분산 통계 수집 시스템입니다. 그것은 AWS 인프라의 지표를 수집하고 추적합니다. 또 다른 기능은 사용자 지정 지표를 만들고 사용할 수 있는 기능입니다. 설정된 임계값을 통과한 지표가 있는 경우 Auto Scaling과 함께 CloudWatch가 자동으로 확장되어 아키텍처의 고가용성을 보장할 수 있습니다.
내결함성 도구
이제 몇 가지 내결함성 도구를 살펴보겠습니다.
Amazon SQS
첫 번째는 Amazon Simple Queue Service(Amazon SQS)입니다. 이것은 내결함성 애플리케이션의 백본으로 사용할 수 있습니다. 이는 매우 안정적인 분산 메시징 시스템입니다. SQS는 대기열을 항상 사용할 수 있도록 도와줍니다.
Amazon S3
그 다음에 Amazon Simple Storage Service 즉 Amazon S3이 있습니다. 이것은 내구성과 결함성이 뛰어난 데이터 스토리지를 제공합니다. Amazon S3은 리전 내 여러 시설에서 여러 다른 디바이스의 모든 데이터를 중복 저장합니다. 따라서 고장이 발생하더라도 모든 정보에 액세스할 수 있습니다.
Amazon RDS
그 다음에 Amazon Relational Database Service 즉 Amazon RDS가 있습니다. 이것은 관계형 데이터베이스를 설정, 운영 및 확장하는 또 다른 웹 서비스 도구입니다. 중요한 데이터베이스의 안정성을 향상시키는 몇 가지 기능을 제공하여 고가용성과 내결함성을 제공합니다. 이러한 기능 중 몇 가지는 자동 백업, 스냅샷, 여러 가용 영역 지점을 포함합니다.
요약
이러한 모든 다양한 서비스는 애플리케이션이 고가용성과 내결함성 시스템을 보장할 수 있는 안정성과 내구성이 높은 내결함성 도구입니다. 내결함성 및 고가용성 아키텍처를 빌드하는 것은 어려울 필요가 없습니다. AWS 플랫폼을 사용하면 제공된 서비스와 도구를 이용하여 애플리케이션과 시스템의 고가용성을 확보하고 내결함성을 높일 수 있습니다.
고가용성 및 내결함성 서비스 아키텍처에 대한 자세한 내용을 알아보려면 aws.amazon.com/architecture를 방문하십시오.