Oracle Cloud에서 라이브 스트리밍 및 VOD(Video-on-Demand) 플랫폼 배포

A-list 유명 인사, 콘텐츠 제작소, 독립 영화 제작사, 음악가 등 In.Live를 통해 제작자는 예술적 운명을 제어할 수 있습니다.

Oracle Cloud Infrastructure(OCI)에서 라이브 스트리밍 및 온디맨드 비디오(VOD) 플랫폼을 실행하면 In.Live 플랫폼이 모든 종류의 라이브 및 온디맨드 성능을 모든 종류의 공식적으로 생성된 미디어와 통합할 수 있습니다.

2020년에 설립된 샌프란시스코 기반 In.Live는 제작자가 라이브 스트리밍 및 온디맨드 콘텐츠를 팬과 파트너에게 직접 마케팅, 배포, 수익 창출하는 동시에 예술, 브랜드 및 사용자 데이터를 제어할 수 있는 스트리밍 미디어 플랫폼을 개발했습니다. 암호 화폐와 NFT(Non-fungible tokens)는 In.Live 플랫폼을 사용하여 자금을 모금하고 커뮤니티를 구축하며 몰입형 메타버스 경험을 설계할 수 있도록 모든 유형의 제작자에게 새로운 문을 열었습니다.

In.Live Oracle Cloud 엔지니어와 협력하여 다음과 같은 아키텍처를 설계했습니다.

  • 초기 테넌시 설계를 위한 보안 기준으로 사용할 OCI CIS(Center for Internet Security) 랜딩존 배치
  • 베어메탈 및 가상 머신(VM)에 Oracle Cloud Infrastructure Container Engine for Kubernetes(OKE) 클러스터, 노드 및 포드를 프로비저닝합니다.
  • Terraform을 사용하여 OKE 프로비저닝 자동화
  • 스트림 수집, 애플리케이션 및 서비스를 위해 8개의 VM 프로비저닝
  • Postgres 데이터베이스 설치 및 구성을 위해 하나의 VM을 프로비전합니다.

In.Live의 현재 상태 아키텍처의 주요 특징은 다음과 같습니다.

  • Ampere Altra A1 컴퓨팅 인스턴스
  • Ampere 인스턴스로 구동되는 Kubernetes 클러스터
  • PostgreSQL 및 MySQL 데이터베이스 인스턴스
  • Kafka, Prometheus 및 Grafana는 모니터링 및 로깅에 사용됩니다.
  • DevOps에 대해 GitLab 서버가 배치됩니다.

구조

In.Live Ampere Altra A1 컴퓨팅 인스턴스와 PostgreSQL 및 MySQL 인스턴스의 조합을 사용하여 스트리밍 플랫폼을 구축하고 배포했습니다.

In.Live 스트리밍 플랫폼에는 콘텐츠 생성자와 콘텐츠 소비자라는 두 가지 범주의 사용자가 있습니다. 제작자는 주문형 비디오(VOD)를 통해 콘텐츠를 실시간으로 스트리밍할 수 있습니다. 제작자는 비디오 콘텐츠를 In.Live의 스트림 클라우드로 전송하며, Ampere 인스턴스 기반의 K3S 클러스터를 사용하여 비디오 스트림을 트랜스코딩합니다. K3S 클러스터는 현재 네 명의 작업자를 사용하며 최대 8~10개의 쇼를 허용합니다. K3S는 필요에 따라 인스턴스 수를 조정하여 플랫폼을 확장합니다. CDN(Fastly Content Distribution Network)은 라이브 스트림을 제공합니다. 비디오는 VOD 액세스를 위해 오브젝트 스토리지에 저장됩니다.

In.Live 플랫폼의 티켓팅 및 통합 기능을 지원하는 또 다른 K3S 클러스터가 플랫폼의 백엔드에 배포됩니다. 애플리케이션 플랫폼인 Arm 인스턴스를 사용하면 작성자가 티켓 판매를 사용하여 콘텐츠를 예약하고 수익을 창출할 수 있습니다. 이 플랫폼은 다양한 상거래(지불), CRM(고객 관계 관리), 웹 사이트 및 Web3 플랫폼과 통합됩니다. 애플리케이션 플랫폼과 스트림 클라우드 모두 데이터베이스 스토리지에 PostgreSQL를 사용합니다.

분할은 지불 및 수익화에 사용됩니다. Google Cloud Platform(GCP) Firebase는 채팅 및 데이터 웨어하우스에 사용되며 분석은 BigQuery를 통해 실행됩니다. BigQuery는 소셜 미디어 상호 작용, 애플리케이션 데이터, 웹 사이트 트래픽 및 프로덕션 비디오 통계를 수집하고 분석하는 데도 사용됩니다. 소비자는 쇼 관리, 쇼 브라우징 및 쇼 티켓팅을 위해 In.Live 플랫폼을 사용합니다. 소비자는 티켓을 구입하여 Fastly CDN에서 제공되는 콘텐츠에 액세스할 수 있습니다. 제작자가 Web3과 통합된 경우 소비자는 NFT 및 메타버스 콘텐츠에 액세스할 수 있습니다.

In.Live는 데이터 수집 및 분석 외에도 모니터링 및 로깅을 위해 Kafka, Prometheus 및 Grafana를 배포했습니다. GitLab 서버는 DevOps용으로 배치됩니다. MySQL 인스턴스는 모니터링 및 로깅 툴을 지원하는 데이터베이스에 사용됩니다.

다음 다이어그램에는 아키텍처가 설명되어 있습니다.



라이브-oci-아키텍처-oracle.zip

이 플랫폼은 현재 3개의 장애 도메인이 있는 단일 가용성 도메인에 배포되어 있습니다. OCI 리전 - 시드니는 에지 사이트에 사용됩니다. In.Live 로드맵에서는 추가 가용성 도메인 및 지역을 활용하여 고가용성 및 재해 복구 옵션을 살펴봅니다.

아키텍처에는 다음과 같은 구성 요소가 있습니다.

  • 테넌시

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

  • 지역

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

  • 가용성 도메인

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

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

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

  • 경로 테이블

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

  • 보안 목록

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

  • 인터넷 게이트웨이

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

  • 서비스 게이트웨이

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

  • 로드 밸런서

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

  • 계산

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

  • 객체 스토리지

    객체 스토리지를 사용하면 데이터베이스 백업, 분석 데이터, 이미지 및 비디오와 같은 리치 콘텐츠 등 모든 콘텐츠 유형의 대량의 구조적 및 비구조적 데이터에 빠르게 액세스할 수 있습니다. 인터넷 또는 클라우드 플랫폼 내에서 직접 안전하고 안전하게 데이터를 저장하고 검색할 수 있습니다. 성능 또는 서비스 안정성의 저하 없이 스토리지를 원활하게 확장할 수 있습니다. 빠르고 즉각적이며 자주 액세스하는 데 필요한 "핫" 스토리지에 표준 스토리지를 사용합니다. 장기간 보존하고 거의 액세스하지 않는 "콜드" 스토리지에 아카이브 스토리지를 사용합니다.

구축 및 배포에 소개하기

Oracle Cloud Infrastructure에서 구축한 것을 표시하시겠습니까? 학습한 교훈, 모범 사례 및 참조 아키텍처를 오라클의 글로벌 클라우드 아키텍처 커뮤니티와 공유하십시오. 시작할 수 있도록 도와드리겠습니다.

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

    아이콘을 샘플 와이어프레임으로 드래그 앤 드롭하여 고유한 참조 아키텍처를 보여줍니다.

  2. 아키텍처 튜토리얼 보기

    참조 아키텍처 생성 방법에 대한 단계별 지침을 가져옵니다.

  3. 다이어그램 제출

    다이어그램으로 전자메일을 전송해 주십시오. Oracle의 클라우드 설계자는 다이어그램을 검토하고 아키텍처에 대해 논의하기 위해 연락을 드릴 것입니다.

추가 탐색

이 아키텍처의 기능 및 관련 아키텍처에 대해 자세히 알아보십시오.

수락

  • Authors: Robert Huie, Sasha Banks-Louie
  • Contributors: Greg Thurston, Dave Swanson, Robert Lies

    Partner Team: In.Live Team: Eswar Priyadarshan, Javad Mustafayev