Oracle Cloud에서 대기시간이 짧은 Watch Party 비디오 스트리밍 플랫폼 배포

라이브 스트리밍 시계 당사자에 대한 수요는 최근 몇 년 동안 급증하여 Red5 Pro와 같은 스트리밍 플랫폼의 시장이 증가하고 있습니다.

스트리밍 제공업체 간의 격렬한 경쟁에도 불구하고 모든 플랫폼이 동일하게 생성되지는 않습니다. 실제로 많은 스트리밍 서비스에는 30-120s 이상의 대기 시간이 제공됩니다. 이러한 지연은 일부 회원이 홈런, 슬램 덩크 또는 녹아웃의 흥분을 경험할 수 있기 때문에 시계 파티를 망칠 수 있으며, 다른 사람들은 행동 자체를보기 전에 공동 감시자 초의 치어를 통해 고통. 그러나 Red5 Pro는 500ms 미만의 대기시간 또는 약 5초 동안 라이브 스트림 비디오를 제공하는 Web Real-Time Communication(WebRTC)을 기반으로 미디어 서버 시스템을 개발하여 시계 당사자의 모든 사람이 동시에 작업을 볼 수 있도록 했습니다.

Red5 Pro는 Oracle Cloud Infrastructure(OCI)에서 플랫폼을 실행하고 KeepBoxingFree.com에서 감시 당사자를 지원합니다. 각 Red5 Pro 배포는 50,000명의 사용자, 6,250명의 감시 당사자 및 감시 당사자당 8명의 사용자를 지원합니다. Red5 Pro는 작은 단위로 확장할 수 있습니다. 단일 노드(확장 가능한 가장 작은 노드)는 사용자 300-1000명의 용량을 추가합니다. 작은 단위로 확장하면 Red5 Pro에서 유휴 인스턴스 없이 필요에 따라 확장할 수 있습니다. 보고 있는 사람 수와 시청 기간에 따라 송신 트래픽이 생성되는 것으로 추정됩니다.

  • 최대 50,000명의 사용자를 위한 4.5 Mbps의 비트레이트
  • 최대 용량 중에도 500ms 미만의 대기 시간

Red5 Pro는 다음 이점을 활용할 수 있도록 Oracle Cloud Infrastructure에서 플랫폼을 실행하기로 결정했습니다.

  • AMD E4 Flex 컴퓨트 구성을 사용하여 버스트 도중 신속하게 확장할 수 있는 유연성
  • 데이터 전송 비용 절감

    인바운드 데이터 전송에 대한 요금이 없습니다. 아웃바운드 데이터 전송의 경우 매월 처음 10TB는 무료입니다.

  • Red5 Pro 노드(인스턴스) 실행 시 일관된 시간

    다른 하이퍼스칼러와 함께, 출시 시간은 이전에 8 ~ 10 시간이 걸렸습니다. OCI를 사용하면 실행 시간이 2시간으로 단축됩니다. 이를 통해 Red5 Pro는 수백 개의 노드/인스턴스가 빠르게 필요할 때 용량을 확장할 수 있습니다.

구조

Red5 Pro Watch Party는 이벤트에 대한 라이브 비디오 피드를 제공하는 일반 대중, 유명 인사 및 방송사가 액세스할 수 있습니다.

이 아키텍처는 스트림 관리자가 관리하는 Oracle Cloud Infrastructure(OCI)의 여러 지역에 있는 Red5 Pro 서버 클러스터로 구성됩니다. 이러한 스트림 관리자는 Red5 Pro 에코시스템의 기본 시작점이며 스트림을 게시하거나 가입할 적절한 서버 인스턴스를 할당합니다. 스트림 관리자도 로드 밸런싱을 수행하며 노드 수명 주기를 모니터링하고 관리합니다.

사용자는 감시 당사자 웹 서버에 액세스하여 계정에 등록합니다. 사용자 계정 정보 및 이벤트 세부정보는 컨퍼런스 데이터베이스를 호스트하는 완전 관리형 Oracle MySQL Database Service 클러스터에 저장됩니다. 그런 다음 계정 소유자는 이벤트에 등록하고 친구를 초대하여 감시 파티에 참가할 수 있습니다. 인증 후 사용자 트래픽은 로드 밸런서 세트를 통과한 다음 OCI 자동 크기 조정을 사용하여 사용자 트래픽 급증을 처리함으로써 확장되는 당사자 웹 서버를 감시합니다.

아키텍처의 모든 가상 인스턴스는 AMD E4 Flex VM(가상 머신)에서 실행됩니다. 이벤트 당일 방송사는 이벤트 피드를 트랜스코더로 전송하여 피드를 다른 변형(다양한 해상도의 적응 비트 전송률 스트림)으로 변환하거나 트랜스코딩이 필요하지 않은 경우 원천 서버로 직접 변환합니다. Red5 Pro는 두 가지 유형의 스트림을 지원합니다. 즉, 방송사에 의해 생성되는 라이브 스트림과 웹 카메라를 통해 화상 채팅에 참여하는 시청 당사자 가입자가 생성하는 웹 스트림입니다.

스트림 관리자는 원본 서버로 브로드캐스트 트래픽을 전달하고 에지 서버로 구독자 트래픽을 전달합니다. 또한 스트림 관리자는 WebRTC 연결에서 피어 간에 웹 소켓을 프록시하는 신호 서버 역할을 합니다. 스트리밍 정보는 스트림 관리자가 유지한 다음 컨퍼런스 데이터베이스를 나타내는 Oracle MySQL Database Service 클러스터에 저장됩니다. 짧은 대기 시간을 보장하기 위해 Red5 Pro에는 원본 및 에지 서버에 대한 로드 밸런서가 없으므로 게시자와 구독자 간의 홉이 최소화됩니다. NSG(Network Security Group)는 리소스 간의 네트워크 트래픽을 제어합니다.

다음 다이어그램은 웹 당사자 및 브로드캐스트 연결 프로세스를 보여 줍니다.



red5-oci-data-flow-oracle.zip

웹 인터페이스의 고가용성은 가용성 도메인의 로드 밸런싱 서버에서 3개의 장애 도메인으로 유지 관리됩니다. 두 Oracle MySQL Database Service 데이터베이스 모두 고가용성 클러스터에 있습니다. {\f2732 primary database}에 기록되는 데이터도{\f2732 standby database}에 복제{\f2732 (replicate)}됩니다{\f2732 .} 스트림 관리자는 로드 변경을 지원하기 위해 원본 서버 및 에지 서버를 자동 스케일링합니다. 스트림 관리자는 지형 코드를 사용하여 자동 크기 조정을 위해 노드를 동적으로 프로비저닝 및 프로비저닝 해제합니다. 확장은 원본 및 에지 노드에 대한 연결 수에 따라 Red5 Pro 정책을 통해 구성되고 트리거됩니다. 예를 들어, 기본적으로 각 구성 요소에 대해 60% 알람이 트리거됩니다. 에지 서버에 대해 400개의 연결 정책이 설정된 경우 241개의 연결이 있는 경우 추가 사용자를 수용하도록 새 에지 서버가 배포됩니다. 필요에 따라 크기를 조정하는 대신 서버를 미리 준비하도록 정책을 설정할 수 있습니다. Oracle Cloud Infrastructure 도메인 이름 서비스는 지원 이벤트에 대한 DNS 영역을 관리하는 데 사용됩니다. OCI Email Delivery 서비스는 Red5 Pro 시스템에서 등록된 사용자에게 이메일을 전송하는 데 사용됩니다.

다음 다이어그램은 이 참조 아키텍처를 보여줍니다.



red5-oci-architecture-oracle.zip

Red5 미래 상태 아키텍처에 대한 Pro의 비전은 다음과 같습니다.

  • 전 세계 여러 OCI 지역에 Red5 Pro 플랫폼 배포
  • 다중 테넌트 구조를 생성하여 서버당 여러 브로드캐스트 채널 지원
  • 음성 및 텍스트 필사 및 언어 번역을 위한 Oracle 인공 지능 음성 및 언어 서비스를 통합하여 방송사와 사용자 모두를 위한 다국어 옵션 지원

이 구조에는 다음과 같은 구성 요소가 있습니다.

  • 테넌트

    테넌시는 Oracle Cloud Infrastructure에 등록할 때 Oracle이 Oracle Cloud 내에서 설정하는 안전하고 격리된 파티션입니다. 테넌시 내 Oracle Cloud에서 리소스를 생성, 구성 및 관리할 수 있습니다. 테넌시는 회사 또는 조직과 동의어입니다. 일반적으로 한 회사는 단일 테넌시를 가지며 해당 테넌시 내에 조직 구조를 반영합니다. 일반적으로 단일 테넌시는 단일 구독과 연결되며, 단일 구독은 하나의 테넌시만 갖습니다.

  • 지역

    Oracle Cloud Infrastructure 지역은 가용성 도메인이라고 하는 하나 이상의 데이터 센터를 포함하는 지역화된 지리적 영역입니다. 지역은 다른 지역과 독립적이며 거리가 멀면 국가 또는 대륙을 가로질러 분리할 수 있습니다.

  • 구획

    구획은 Oracle Cloud Infrastructure 테넌시 내의 지역 간 논리적 분할 영역입니다. 구획을 사용하여 Oracle Cloud에서 리소스를 구성하고, 리소스에 대한 액세스를 제어하며, 사용 할당량을 설정합니다. 지정된 구획의 리소스에 대한 액세스를 제어하기 위해 리소스에 액세스할 수 있는 사용자와 수행할 수 있는 작업을 지정하는 정책을 정의합니다.

  • 가용성 도메인

    가용성 도메인은 한 지역 내에 있는 독립형 독립형 데이터 센터입니다. 각 가용성 도메인의 물리적 리소스는 내결함성을 제공하는 다른 가용성 도메인의 리소스와 격리됩니다. 가용성 도메인은 전원, 냉각 또는 내부 가용성 도메인 네트워크와 같은 인프라를 공유하지 않습니다. 따라서 특정 가용성 도메인에서 장애가 발생하면 해당 지역의 다른 가용성 도메인에 영향을 주지 않습니다.

  • 배스천 서비스

    Oracle Cloud Infrastructure Bastion은 공용 엔드포인트가 없고 베어메탈 및 가상 머신, Oracle MySQL Database Service, Autonomous Transaction Processing(ATP), Oracle Container Engine for Kubernetes(OKE) 및 SSH(Secure Shell Protocol) 액세스를 허용하는 기타 리소스와 같은 엄격한 리소스 액세스 제어가 필요한 리소스에 대해 제한적이고 시간 제한적인 보안 액세스를 제공합니다. Oracle Cloud Infrastructure Bastion 서비스를 사용하면 점프 호스트를 배포하고 유지 관리하지 않고도 전용 호스트에 대한 액세스를 사용으로 설정할 수 있습니다. 또한 ID 기반 권한과 중앙 집중식 감사 및 시간 제한 SSH 세션을 통해 보안 상태를 개선할 수 있습니다. Oracle Cloud Infrastructure Bastion은 배스천 액세스를 위해 공용 IP가 필요하지 않으므로 원격 액세스를 제공할 때 번거롭고 잠재적인 공격 표면을 제거합니다.

  • DNS

    Oracle Cloud Infrastructure DNS(Domain Name System) 서비스는 확장성이 뛰어난 글로벌 애니캐스트 DNS(도메인 이름 시스템) 네트워크로, 향상된 DNS 성능과 복원성 및 확장성을 제공하여 최종 사용자가 어디에 있든 최대한 빨리 고객의 애플리케이션에 연결할 수 있습니다.

  • 정책

    Oracle Cloud Infrastructure Identity and Access Management 정책은 어떤 리소스에 접근할 수 있는지와 방법을 지정합니다. 액세스는 그룹 및 구획 레벨에서 부여됩니다. 즉, 특정 구획 내에서 또는 테넌시에 특정 유형의 액세스 권한을 그룹에 부여하는 정책을 작성할 수 있습니다.

  • 전자메일 전송

    Oracle Cloud Infrastructure 이메일 딜리버리는 수입금, 사기 감지 경고, 다단계 신원 확인, 비밀번호 재설정 등의 미션 크리티컬 마케팅, 통지 및 트랜잭션 통신을 위한 대용량 애플리케이션 생성 이메일을 전송하기 위한 확장성이 뛰어나고 비용 효율적이며 안정적인 이메일 딜리버리 서비스입니다.

  • Terraform

    Oracle Cloud Infrastructure Resource Manager를 통해 Terraform 리소스 프로비저닝 프로세스를 자동화할 수 있습니다. 코드 서비스형 인프라 모델을 사용하여 리소스를 설치, 구성 및 관리할 수 있습니다.

  • VCN(가상 클라우드 네트워크) 및 서브넷

    VCN은 Oracle Cloud Infrastructure 지역에서 설정한 커스터마이징 가능한 소프트웨어 정의 네트워크입니다. 기존 데이터 센터 네트워크와 마찬가지로 VCN은 네트워크 환경을 완벽하게 제어할 수 있습니다. VCN에는 VCN 생성 후 변경할 수 있는 겹치지 않는 여러 CIDR 블록이 있을 수 있습니다. VCN을 서브넷으로 세그먼트할 수 있으며, 지역 또는 가용성 도메인으로 범위를 지정할 수 있습니다. 각 서브넷은 VCN의 다른 서브넷과 겹치지 않는 연속된 주소 범위로 구성됩니다. 생성 후 서브넷의 크기를 변경할 수 있습니다. 서브넷은 공용 또는 전용일 수 있습니다.

  • 보안 목록

    각 서브넷에 대해 서브넷에 들어오고 나가야 하는 트래픽의 소스, 대상 및 유형을 지정하는 보안 규칙을 생성할 수 있습니다.

  • 경로 테이블

    가상 라우팅 테이블에는 일반적으로 게이트웨이를 통해 서브넷에서 VCN 외부의 대상으로 트래픽을 라우팅하는 규칙이 포함됩니다.

  • 인터넷 게이트웨이

    인터넷 게이트웨이는 VCN의 공용 서브넷과 공용 인터넷 간의 트래픽을 허용합니다.

  • 서비스 게이트웨이

    서비스 게이트웨이는 VCN에서 Oracle Cloud Infrastructure Object Storage와 같은 다른 서비스로의 접근을 제공합니다. VCN에서 Oracle 서비스로의 트래픽은 Oracle 네트워크 패브릭을 통해 이동하며 인터넷을 순회하지 않습니다.

  • NSG(Network Security Group)

    NSG(네트워크 보안 그룹)는 클라우드 리소스에 대한 가상 방화벽 역할을 합니다. Oracle Cloud Infrastructure의 제로 트러스트 보안 모델을 사용하면 모든 트래픽이 거부되며 VCN 내의 네트워크 트래픽을 제어할 수 있습니다. NSG는 단일 VCN의 지정된 VNIC 집합에만 적용되는 수신 및 송신 보안 규칙 집합으로 구성됩니다.

  • 로드 밸런서

    Oracle Cloud Infrastructure Load Balancing Service는 단일 시작점에서 백엔드의 여러 서버로 트래픽을 자동으로 배포합니다.

  • 계산

    Oracle Cloud Infrastructure Compute 서비스를 사용하면 클라우드에서 컴퓨트 호스트를 프로비전하고 관리할 수 있습니다. CPU, 메모리, 네트워크 대역폭 및 스토리지에 대한 리소스 요구사항을 충족하는 구성으로 컴퓨트 인스턴스를 실행할 수 있습니다. 컴퓨트 인스턴스를 생성하면 안전하게 액세스하고, 재시작하며, 볼륨을 연결 및 분리하고, 더 이상 필요하지 않을 때 종료할 수 있습니다.

  • Oracle MySQL Database Service

    Oracle MySQL Database Service는 완전 관리형 Oracle Cloud Infrastructure(OCI) 데이터베이스 서비스로, 개발자는 안전한 클라우드 전용 애플리케이션을 신속하게 개발하고 배포할 수 있습니다. Oracle MySQL Database Service는 OCI 및 MySQL 엔지니어링 팀이 100% 구축, 관리 및 지원합니다.

    Oracle MySQL Database Service에는 운영 MySQL 데이터베이스에 대해 직접 정교한 실시간 분석을 실행할 수 있는 통합 고성능 분석 엔진(HeatWave)이 있습니다.

내장 및 배포 기능 받기

Oracle Cloud Infrastructure에서 구축한 것을 보여주고 싶으십니까? 학습 내용, 모범 사례 및 참조 아키텍처를 글로벌 클라우드 아키텍트 커뮤니티와 공유해 보십시오. 시작하도록 도와드리겠습니다.

  1. 템플리트(PPTX) 다운로드

    아이콘을 샘플 와이어프레임으로 끌어 놓아 고유 참조 아키텍처를 설명합니다.

  2. 아키텍처 자습서 보기

    참조 아키텍처 생성 방법에 대한 단계별 지침을 확인하십시오.

  3. 다이어그램 제출

    다이어그램이 포함된 전자메일을 전송해 주십시오. 오라클의 클라우드 설계자는 다이어그램을 검토하고 귀사의 아키텍처에 대해 논의하기 위해 연락을 취할 것입니다.

승인

  • Authors: Robert Huie, Sasha Banks-Louie
  • 기부자: Praveen Coca, Bill Wimsatt, Robert Lies