Stellen Sie eine Live Streaming- und Video-on-Demand-(VOD-)Plattform auf Oracle Cloud bereit
Egal ob Sie ein A-List-Feier, ein Content-Produktionshaus, ein unabhängiger Filmemacher oder Musiker sind, In.Live hilft Entwicklern, ihr künstlerisches Schicksal zu kontrollieren.
Durch die Ausführung der Live-Streaming- und Video-On-Demand-(VOD-)Plattform auf Oracle Cloud Infrastructure (OCI) kann die In.Live-Plattform alle Arten von Live- und On-Demand-Performances in jede Art von formal erstellten Medien integrieren.
Die 2020 gegründete In.Live in San Francisco hat eine Streaming-Media-Plattform entwickelt, mit der Entwickler ihre Live-Streaming- und On-Demand-Inhalte direkt an ihre Fans und Partner vermarkten, verteilen und monetarisieren können, während sie gleichzeitig die Kontrolle über ihre Kunst-, Marken- und Benutzerdaten behalten. Die zunehmende Dynamik von Kryptowährungen und nicht-pilzierbaren Token (NFTs) hat neue Türen für Schöpfer aller Arten geöffnet, die ihnen helfen, Geld zu erhöhen, Gemeinschaften zu bauen und immersive Metaverse-Erfahrungen mit der In.Live-Plattform zu entwerfen.
In.Live arbeitete mit Oracle Cloud-Ingenieuren zusammen, um eine Architektur zu entwerfen, die:
- Stellt eine OCI Center for Internet Security-(CIS-)Landing Zone bereit, die als sichere Baseline für das anfängliche Mandantendesign verwendet werden soll
- Stellt Oracle Cloud Infrastructure Container Engine for Kubernetes-(OKE-)Cluster, -Knoten und -Pods auf Bare-Metal- und Virtual-Machine-(VMs-)Instanzen bereit
- Automatisiert das OKE-Provisioning mit Terraform
- Stellt acht VMs für Streamaufnahme, Anwendungen und Services bereit
- Stellt eine VM für die Installation und Konfiguration der Postgres-Datenbank bereit
Die aktuelle Statusarchitektur von In.Live umfasst folgende Highlights:
- Ampere Altra A1 Compute-Instanzen
- Kubernetes-Cluster werden von Ampere-Instanzen unterstützt
- Datenbankinstanzen PostgreSQL und MySQL
- Kafka, Prometheus und Grafana werden zur Überwachung und Protokollierung verwendet
- Ein GitLab-Server wird für DevOps bereitgestellt
Architektur
In.Live hat seine Streamingplattform mit Ampere Altra A1 Compute-Instanzen und einer Kombination aus PostgreSQL- und MySQL-Instanzen erstellt und bereitgestellt.
Es gibt zwei Kategorien von Benutzern der In.Live-Streamingplattform: Inhaltsersteller und Inhaltsverbraucher. Ersteller können ihre Inhalte live oder per Video-on-Demand (VOD) streamen. Ersteller senden ihre Videoinhalte an die In.Live-Stream-Cloud, in der der Videostream mit einem K3S-Cluster transcodiert wird, das von Ampere-Instanzen unterstützt wird. Das Cluster K3S verwendet derzeit vier Worker und ermöglicht bis zu 8 bis 10 Anzeigen. K3S skaliert die Plattform, indem die Anzahl der Instanzen nach Bedarf angepasst wird. Schnelles Content Distribution Network (CDN) liefert den Live-Stream. Videos werden im Objektspeicher für den VOD-Zugriff gespeichert.
Ein anderes K3S-Cluster wird für das Backend der Plattform bereitgestellt und unterstützt die Ticketing- und Integrationsfeatures der In.Live-Plattform. Mit Arm-Instanzen können Ersteller mit der Anwendungsplattform ihre Inhalte mithilfe von Ticketverkäufen planen und monetarisieren. Die Plattform lässt sich in verschiedene Handelsplattformen (Zahlung), Customer Relationship Management (CRM), Website und Web3 integrieren. Sowohl die Anwendungsplattform als auch die Stream-Cloud verwenden PostgreSQL als Datenbankspeicher.
Stripe wird für Zahlung und Monetarisierung verwendet. Google Cloud Platform (GCP) Firebase wird für Chat und Data Warehouse verwendet. Analysen werden über BigQuery ausgeführt. BigQuery wird auch zur Erfassung und Analyse von Social Media-Interaktionen, Anwendungsdaten, Website-Traffic und Produktionsvideostatistiken verwendet. Verbraucher verwenden die In.Live-Plattform für das Anzeigenmanagement, das Anzeigen des Surfens und das Anzeigen von Ticketing. Verbraucher kaufen Tickets, um auf den Inhalt zugreifen zu können, der von der schnellen CDN geliefert wird. Wenn Ersteller mit Web3 integriert sind, können Verbraucher auch auf NFT- und Metaverse-Inhalte zugreifen.
Neben dem Erfassen und Analysieren von Daten hat In.Live Kafka, Prometheus und Grafana für Monitoring und Logging bereitgestellt. Ein GitLab-Server wird für DevOps bereitgestellt. MySQL-Instanzen werden für Datenbanken verwendet, um die Überwachungs- und Loggingtools zu unterstützen.
Das folgende Diagramm zeigt die Architektur:
live-oci-architecture-oracle.zip
Die Plattform wird derzeit in einer einzelnen Availability-Domain mit drei Faultdomains bereitgestellt. OCI Region - Sydney wird für eine Edge-Site verwendet. In der Roadmap für In.Live werden Optionen für High Availability und Disaster Recovery untersucht, indem zusätzliche Availability-Domains und Regionen genutzt werden.
Die Architektur umfasst die folgenden Komponenten:
- Mandant
Ein Mandant ist eine sichere und isolierte Partition, die Oracle bei der Registrierung für Oracle Cloud Infrastructure in Oracle Cloud einrichtet. Sie können Ihre Ressourcen in Oracle Cloud in Ihrem Mandanten erstellen, organisieren und verwalten. Ein Mandant ist synonym zu einem Unternehmen oder einer Organisation. In der Regel verfügt ein Unternehmen über einen einzelnen Mandanten und spiegelt dessen Organisationsstruktur in diesem Mandanten wider. Ein einzelner Mandant ist in der Regel mit einem einzelnen Abonnement verknüpft, und ein einzelnes Abonnement hat in der Regel nur einen Mandanten.
- Region
Eine Oracle Cloud Infrastructure-Region ist ein lokalisierter geografischer Bereich, der mindestens ein Data Center enthält, das als Availability-Domains bezeichnet wird. Regionen sind unabhängig von anderen Regionen, und große Entfernungen können sie voneinander trennen (innerhalb von Ländern oder sogar Kontinenten).
- Availability-Domain
Availability-Domains sind eigenständige, unabhängige Data Center innerhalb einer Region. Die physischen Ressourcen in jeder Availability-Domain sind von den Ressourcen in den anderen Availability-Domains isoliert, was eine Fehlertoleranz sicherstellt. Availability-Domains haben keine gemeinsame Infrastruktur wie Stromversorgung oder Kühlung oder das interne Availability-Domainnetzwerk. Aus diesem Grund ist es wahrscheinlich, dass ein Fehler in einer Availability-Domain sich auf die anderen Availability-Domains in der Region auswirkt.
- Virtual Cloud Network (VCN) und Subnetze
Ein VCN ist ein anpassbares, Software-definiertes Netzwerk, das Sie in einer Oracle Cloud Infrastructure-Region einrichten können. Wie herkömmliche Data Center-Netzwerke erhalten Sie mit VCNs vollständige Kontrolle über Ihre Netzwerkumgebung. Ein VCN kann mehrere sich nicht überschneidende CIDR-Blöcke aufweisen, die Sie nach dem Erstellen des VCN ändern können. Sie können ein VCN in Subnetze segmentieren, die sich auf eine Region oder eine Availability-Domain beschränken. Jedes Subnetz besteht aus einem Bereich zusammenhängender Adressen, die sich nicht mit anderen Subnetzen im VCN überschneiden. Sie können die Größe eines Subnetzes nach der Erstellung ändern. Ein Subnetz kann öffentlich oder privat sein.
- Route-Tabelle
Virtuelle Routentabellen enthalten Regeln, mit denen Traffic von Subnetzen zu Zielen außerhalb eines VCN, normalerweise über Gateways, weitergeleitet wird.
- Sicherheitsliste
Für jedes Subnetz können Sie Sicherheitsregeln erstellen, die Quelle, Ziel und Typ des Traffics angeben, der in das und aus dem Subnetz zugelassen werden muss.
- Internetgateway
Das Internetgateway lässt Traffic zwischen den öffentlichen Subnetzen in einem VCN und dem öffentlichen Internet zu.
- Servicegateway
Das Servicegateway ermöglicht den Zugriff von einem VCN auf andere Services wie Oracle Cloud Infrastructure Object Storage. Der Datenverkehr vom VCN zum Oracle-Service durchläuft die Oracle-Netzwerkfabric und nie das Internet.
- Load Balancer
Der Oracle Cloud Infrastructure Load Balancing-Service ermöglicht automatisierte Trafficverteilung von einem einzelnen Einstiegspunkt zu mehreren Servern im Backend.
- Compute
Mit dem Oracle Cloud Infrastructure Compute-Service können Sie Compute-Hosts in der Cloud bereitstellen und verwalten. Sie können Compute-Instanzen mit Ausprägungen starten, die Ihren Ressourcenanforderungen für CPU, Arbeitsspeicher, Netzwerkbandbreite und Speicher entsprechen. Nach dem Erstellen einer Compute-Instanz können Sie sicher auf die Compute-Instanz zugreifen, sie neu starten, Datenträger anhängen und trennen und sie beenden, wenn Sie sie nicht mehr benötigen.
- Object Storage
Mit Object Storage erhalten Sie schnellen Zugriff auf große Mengen an strukturierten und unstrukturierten Daten eines beliebigen Inhaltstyps, darunter Datenbankbackups, Analysendaten und umfangreiche Inhalte, wie Bilder und Videos. Sie können Daten sicher und geschützt speichern und dann direkt aus dem Internet oder aus der Cloud-Plattform abrufen. Sie können den Speicher nahtlos skalieren, ohne dass die Performance oder Servicezuverlässigkeit beeinträchtigt wird. Verwenden Sie Standardspeicher für "Hot Storage", auf den Sie schnell, sofort und häufig zugreifen müssen. Verwenden Sie Archivspeicher für "Cold Storage", den Sie über lange Zeiträume beibehalten möchten und auf den Sie nur selten zugreifen.
Integrierte und bereitgestellte Features bereitstellen
Möchten Sie zeigen, was Sie auf Oracle Cloud Infrastructure erstellt haben? Möchten Sie Ihre Erkenntnisse, Best Practices und Referenzarchitekturen mit unserer globalen Community aus Cloud-Architekten teilen? Wir helfen Ihnen bei den ersten Schritten.
- Laden Sie die Vorlage (PPTX) herunter
Erstellen Sie eine eigene Referenzarchitektur, indem Sie die Symbole in den Beispiel-Drahtrahmen ziehen und ablegen.
- Architektur-Tutorial ansehen
Schritt-für-Schritt-Anweisungen zum Erstellen einer Referenzarchitektur.
- Diagramm einreichen
Senden Sie uns eine E-Mail mit Ihrem Diagramm. Unsere Cloud-Architekten überprüfen Ihr Diagramm und kontaktieren Sie, um Ihre Architektur zu besprechen.