Fabio van der Burg

Microsoft Certified Trainer

Technical Consultant

Microsoft Speaker

Modern Workplace Specialist

NERD

Nerdfluencer

Blog Post

Privé streamingdienst op Azure

Aug 28, 2023 Blog

Tegenwoordig lijkt het wel alsof er elke maand een nieuwe streamingdienst bij komt. Hoewel variëteit een groot belang heeft bij entertainment, wordt het wel een dure hobby. Als je echt een volledig aanbod aan films, series en documentaires wilt, zit je al gauw vast aan abonnementen bij twee, drie of zelfs meer diensten. En delen? Vergeet het maar.

Maar wat als je de touwtjes zelf in handen neemt?

Zie het voor je: Jouw content die je met iedereen en ieder scherm kan delen. Dat is waar Plex om de hoek komt kijken.

Plex in een notendop

Plex is meer dan alleen een mediaserver; het is jouw eigen, persoonlijke streamingdienst. Het is al jaren dé keuze van de echte Nerd die zijn eigen content willen hosten. Je hebt geen mega-server nodig, want de meeste van ons delen content met een selecte groep of gewoon voor persoonlijk gebruik. Ideaal dus, zeker voor een Nerd zoals ik die al wat kleinere hardware in huis heeft.

Hier een klein voorbeeldje: na mijn vakantie stond mijn oma natuurlijk te popelen om de foto’s te zien. Het gevoel van vroeger, dia’s kijken in de huiskamer, dat wil ik ze niet ontnemen. Maar om nou mijn volledige telefoonalbum te laten zien, met die rare plaatjes uit de groepsapp? Uhh nee…

Dus, wat deed ik? Ik besloot mijn eigen contentplatform op te zetten. Geen afleidingen, geen rare foto’s, gewoon de content die ik wil laten zien. Met behulp van mijn Proxmox Hypervisor heb ik een Ubuntu container opgetuigd en daar draait nu via Plex alles soepel op.

Plex geeft ons de vrijheid terug die we bij traditionele streamingdiensten missen.

Nu denk je: “Fabio, houdt het daar op?” Natuurlijk niet! Ik ben een nerd in hart en nieren. Ik wil geen lokale server die altijd aanstaat en constant onderhoud nodig heeft. Nee, de cloud roept!

En zo begon mijn Plex avontuur op Azure tijdens een live Twitch-stream. Je krijgt te maken met zaken als Storage accounts, VM’s, Virtual networks, Network Security groups, en natuurlijk het prijskaartje. Maar als tech-nerd is dat juist een deel van de fun, toch? Het opzetten, optimaliseren en, ja, ook het kosten besparen.

Hierbij de Instructie voor de echte Nerds!

We hebben aller eerst een Azure subscription nodig. Hier gaan we beginnen met het aanmaken van een resource group voor het contentplatform:

image

Hier maken we een VM aan en ik heb gekozen voor geen extra poespas en zo goedkoop mogelijk. Het mooie is dat ik altijd kan opschalen indien gewenst.

image

Zorg dat je wel in kan loggen op de machine ander kom je niet heel ver. Hoe je dit zelf wil doen is aan jou. Ik heb voor het gemak even gekozen voor het volgende:

image

Gezien de VM enkel host is en geen data gaat dragen. Dit ga ik namelijk in een storageaccount neerzetten. Heb ik wederom niet veel resources nodig:

image

Maak meteen een v-net aan en geef deze een PIP. De NSG houden we even op Basic voor het gemak

image

De volgende stappen slaan we over gezien er voor de test niet meer nodig is. Nu wordt meerendeel al aangemaakt. en kan je met een ssh client verbinding maken met je server die je net hebt aangemaakt.

Connecting

Om te verbinden openen we op Windows11 de applicatie Terminal en vullen we de volgende cmdlet in

ssh <username>@<serverip>

Nu wordt je gevraagd om het wachtwoord op te geven en wordt je ingelogd.

Updating

Het is tijd om de VM even volledig bij te werken en daar zijn admin privileges voor nodig. Om overal sudo voor te zetten is niet handig. Dus maak gebruik van:

sudo -i

Laten we gaan bijwerken

apt update && apt upgrade -y

Install Plex

Om plex te kunnen installeren moeten we eerst ervoor zorgen dat de repo toegevoegd kan worden en hiervoor hebben we een stukje authentication voor nodig dus:

apt install curl gnupg -y

Laten we nu de gpg key ophalen met curl:

curl -sS https://downloads.plex.tv/plex-keys/PlexSign.key | gpg --dearmor | tee /usr/share/keyrings/plex.gpg > /dev/null 

Nu voegen we plex repo toe aan de apt sources:

echo "deb [signed-by=/usr/share/keyrings/plex.gpg] https://downloads.plex.tv/repo/deb public main" > /etc/apt/sources.list.d/plexmediaserver.list

Eindelijk kunnen we Apt gebruiken om Plex te installeren

apt update && apt install plexmediaserver -y

Nu zou het zo moeten zijn dat het geïnstalleerd is. Een reboot is verstandig. Maak hierna opnieuw verbinding met ssh en log hierna weer in en maak gebruik van sudo -i.

Laten we controleren of de service draait op de server:

systemctl status plexmediaserver

image Het werkt als je in het groen active ziet staan

Claimen van server

Om een server te claimen in je plex account moet in lokaal verbinden. Dus niet over WAN. Dit kunnen we doen door een SSH tunnel neer te zetten. Je kan hier verschillende apps voor gebruiken. Ik vind Terminal nog steeds het handigste.

ssh -L 8888:127.0.0.1:32400 <username>@<serverip>

Je wordt nog gevraagd om je wachtwoord op te geven. Tada de tunnel is klaar. Nu dan echt de claim uitvoeren door in je browser te gaan naar:

http://127.0.0.1:8888/web

je wordt hiermee doorverwezen naar app.plex.tv waar je gevraagd wordt om in te loggen in je plex account. Ik gebruik hier mijn gmail voor en tada! image

De setup kunnen we nu in de browser afronden. image

Na het geven van een mooie naam wordt ik gevraagd mijn bibliotheek toe te voegen, maar die hebben we nog niet…… image

Storage account aanmaken

Storage op Azure is best prijzig als ik kies voor bepaalde disks. Daar heeft Microsoft ook over nagedacht en kwam met het idee: Storage account. Hiermee kunnen we een Fileshare aanmaken en koppelen middels een scriptje aan welke machine met internet we ook maar willen.

Dus op azure maken we een Storage account aan. De eerste pagina stel ik in en de rest laat ik even default voor het gemak. Dit kan je zelf aanpassen/tweaken naar je gebruik en verbruik. In het begin is het handig dit op default te laten zodat je de storage kan gaan vullen. image

File Share aanmaken

image image

Koppelen aan VM

Klik op connect en rechts verschijnt een menu klik op linux en show script zodat je het script kan uitvoeren in de VM.

image

Open de terminal waar je de tunnel actief hebt gemaakt en voer het script uit als sudo -i

Nu heb je de File Share gekoppeld aan de VM

Laten we snel nog een map maken op de share en een bestand uploaden

image image

Media inladen

image

Nu kunnen we eindelijk die bibliotheek toevoegen:

image image

Nu kun je zelf via de browse functie je content erop plaatsen. Ideaal voor Privé gebruik en het is best een leuk projectje geweest. Ideaal voor de echte nerd.

Nadat alles is ingesteld altijd nog even opruimen! Dus vergeet niet even te kijken naar je porten die je open hebt staan. Dit kun je zelf instellen zoals je wilt. De server is al geclaimd dus meerendeel kan dicht voor inkomend verkeer.

Wil je toch dit zakelijker en professioneler aanpakken raad ik toch een zakelijke TV dienst aan met bijvoorbeeld narrowcasting. Zo toon je niet alleen tv, maar ook snel je eigen content met speciaal hiervoor ontwikkelede hardware zonder te veel poespas.