유연한 로드 밸런싱 및 네트워크 로드 밸런서 서비스를 통해 최고 SSL 트래픽 처리
Oracle Cloud Infrastructure Load Balancing 서비스는 TCP 및 HTTP 트래픽에 대해 한 시작점에서 VCN(가상 클라우드 네트워크) 에서 연결 가능한 여러 서버로 프록시 기반 자동 트래픽 분배를 제공합니다. 이 서비스는 사용자가 선택한 공용 또는 전용 IP 주소와 프로비전된 대역폭을 로드 밸런서에 제공합니다.
Oracle Cloud Infrastructure 유연한 네트워크 로드 밸런싱 서비스(네트워크 로드 밸런서) 는 백엔드 집합의 한 시작점에서 여러 서버로 트래픽 분배를 자동화합니다. TCP, UDP 및 ICMP 트래픽 분배를 지원합니다.
두 패턴을 결합하면 SSL 오버헤드의 로드 밸런싱을 오프로드하여 백엔드 인증서 분배 필요성을 없애고 백엔드 리소스에 대한 전체 로드를 줄일 수 있는 동시에 대규모의 SSL 접속이 허용됩니다.
순 결과는 작업 로드에 대한 단일 시작점을 유지하면서 사용 가능한 용량을 기하급수적으로 늘리는 여러 가변 로드 밸런서로 확장할 수 있습니다.
구조
이 구조는 유연한 로드 밸런싱 서비스 및 네트워크 로드 밸런서를 사용하여 단일 끝점과의 SSL 접속을 가로로 확장할 수 있는 방법을 보여줍니다.
공용 서브넷의 네트워크 로드 밸런서는 피크 요청 중 항상 애플리케이션을 사용할 수 있도록 공용 IP 주소를 제공합니다. 네트워크 로드 밸런서는 IP 프로토콜 데이터를 기반으로 백엔드 서버에 대한 수신 SSL 접속의 균형을 조정합니다. 전용 서브넷의 유연한 로드 밸런서는 백엔드 서버를 조정하고 수요를 충족할 수 있도록 자동 크기 조정을 사용하여 단일 인스턴스 풀에 접속됩니다. 이 아키텍처에서는 수신 트래픽 패턴을 기반으로 트래픽이 감소함에 따라 트래픽이 증가하거나 트래픽이 감소함에 따라 사용 가능한 대역폭이 최소한에서 확장됩니다.
다음 다이어그램은 이 참조 구조를 보여 줍니다. horizontal-scaling-using-lbaas.png에 대한 설명
구조는 다음과 같은 구성 요소로 구성됩니다:
- 지역
Oracle Cloud Infrastructure 지역은 가용성 도메인이라고 하는 하나 이상의 데이터 센터를 포함하는 지역화된 지역입니다. 지역은 다른 지역과 독립적이며 방대한 거리는 국가 또는 대륙에서 분리할 수 있습니다.
- VCN(가상 클라우드 네트워크) 및 서브넷
VCN는 Oracle Cloud Infrastructure 지역에서 설정하는 사용자정의 가능한 소프트웨어 정의 네트워크입니다. VCN은 기존 데이터 센터 네트워크와 마찬가지로 네트워크 환경을 완벽하게 제어할 수 있습니다. VCN 에는 VCN를 생성한 후 변경할 수 있는 겹치지 않는 CIDR 블록이 여러 개 있을 수 있습니다. 영역 또는 가용성 도메인으로 범위를 지정할 수 있는 서브넷으로 VCN를 세그먼트화할 수 있습니다. 각 서브넷은 VCN의 다른 서브넷과 겹치지 않는 연속적인 주소 범위로 구성됩니다. 서브넷을 생성한 후 서브넷 크기를 변경할 수 있습니다. 서브넷은 공용 또는 전용일 수 있습니다.
- 로드 밸런서
Oracle Cloud Infrastructure Load Balancing 서비스는 단일 시작점에서 백엔드의 여러 서버로 자동화된 트래픽 분배를 제공합니다.
- 인스턴스 풀
인스턴스 풀은 동일한 인스턴스 구성에서 생성되고 그룹으로 관리되는 영역 내의 인스턴스 그룹입니다.
- 자동 스케일링
자동 크기 조정을 사용하면 CPU 활용률과 같은 성능 측정 단위를 기반으로 인스턴스 풀의 컴퓨트 인스턴스 수를 자동으로 조정할 수 있습니다.
인스턴스 풀이 스케일 아웃 또는 스케일 인하면 연관된 로드 밸런서의 백엔드 집합이 자동으로 업데이트됩니다.
- 네트워크 로드 밸런서
Oracle Cloud Infrastructure 유연한 네트워크 로드 밸런싱 서비스는 한 시작점으로부터의 트래픽 분포를 자동화하지만 TCP, UDP 및 ICMP 트래픽 분포를 지원하는 비최대 패스스루인 로드 밸런서입니다.
권장 사항
- VCN
VCN를 생성할 때 VCN의 서브넷에 연결할 리소스 수에 따라 필요한 CIDR 블록 수 및 각 블록의 크기를 결정합니다. 표준 전용 IP 주소 공간 내에 있는 CIDR 블록을 사용합니다.
전용 접속을 설정하려는 다른 네트워크(Oracle Cloud Infrastructure, 온-프레미스 데이터 센터 또는 다른 클라우드 제공자) 와 겹치지 않는 CIDR 블록을 선택합니다.
VCN를 생성한 후 CIDR 블록을 변경, 추가 및 제거할 수 있습니다.
서브넷을 디자인할 때 트래픽 플로우 및 보안 요구사항을 고려하십시오. 특정 계층 또는 롤 내의 모든 리소스를 동일한 서브넷에 연결합니다. 이 서브넷은 보안 경계 역할을 할 수 있습니다.
- 네트워크 로드 밸런서
백엔드에서 여러 로드 밸런서 인스턴스를 활용하면서 공용 서브넷에 단일 네트워크 로드 밸런서를 배치합니다.
- Oracle Cloud Infrastructure Load Balancing 서비스
전용 서브넷에 Oracle Cloud Infrastructure Load Balancing 인스턴스를 배치합니다. 백엔드 서버에 대한 오버헤드를 줄이려면 로드 밸런싱 인스턴스에서 SSL 종료를 수행하는 것이 좋습니다.
- 인스턴스 풀
모든 로드 밸런싱 인스턴스는 애플리케이션별 구성으로 구성된 단일 인스턴스 풀에 연결됩니다. 이렇게 하면 모든 로드 밸런싱 인스턴스가 모든 밸런서에서 세션 지속성을 허용하기 위해 동일한 백엔드 IP 및 포트 조합을 갖게 됩니다.
- 자동 스케일 구성
개인 서브넷의 대역폭 및 연결 요구사항을 충족하도록 여러 인스턴스를 배포하도록 자동 스케일링을 구성해야 합니다.
- 소스 보존
로드 밸런싱 오류 및 액세스 로그가 정확한 소스 클라이언트 IP 주소를 반영하도록 네트워크 로드 밸런서에서 소스 보존을 구성합니다.
- 로그
이 구조는 로드 균형 조정 서비스 및 VCN 플로우 로그에서 로그를 캡처합니다. VCN에 연결된 각 컴퓨트 인스턴스, 로드 밸런싱 및 네트워크 로드 밸런서에는 VNIC(가상 네트워크 인터페이스 카드) 가 하나 이상 있습니다. VCN 플로우 로그를 사용하여 보안 규칙 문제를 해결하고 VNIC에 대한 트래픽을 감사합니다. 로드 밸런싱 오류 및 액세스 로그를 사용하여 모니터할 수도 있습니다.
- 액세스 제어
보안 목록, NSG 및 로드 밸런서 액세스 제어 목록의 조합을 사용하여 애플리케이션을 제대로 작동하는 데 필요한 가장 세부적인 수준의 액세스를 제공하는 데 필요한 최소한의 권한의 원칙을 따릅니다.
고려 사항
이 구조를 구현할 때 다음 요인을 고려하십시오.
- 성능
대역폭 및 접속 요구 사항을 충족하기 위해 로드 밸런싱 인스턴스의 양과 크기를 충분히 배치합니다. 또한 특정 애플리케이션 요구사항에 따라 자동 스케일링 구성에서 적절한 스케일 인, 스케일 아웃 및 스케일링 제한을 구성합니다.
- 가용성
백엔드 리소스의 가용성을 보장하기 위해 특정 애플리케이션 요구사항에 따라 스케일 인, 스케일 아웃 및 스케일 아웃 제한을 생성합니다.
- 로그
로드 밸런싱 오류 및 액세스 로그의 소스 IP가 올바른지 확인하려면 네트워크 로드 밸런서에서 소스 보존을 사용으로 설정해야 합니다.
- 세션 지속성
네트워크 로드 밸런서에서 경로 지정 정책을 설정할 때 2-5 튜플 해싱을 선택하여 원하는 지속성 레벨을 구성할 수 있습니다.
로드 밸런싱 서비스 세션 지속성을 사용으로 설정하는 경우 모든 로드 밸런싱 인스턴스에서 로드 밸런서 쿠키 이름 및 공통 인스턴스 풀에 대한 공통 이름을 사용해야 합니다. 이렇게 하면 전체 환경에서 백엔드 지속성이 허용됩니다.