| Both sides previous revision Previous revision Next revision | Previous revision |
| events:32c3:cdn [2016/03/22 09:40] – ↷ Page moved from 32c3:cdn to events:32c3:cdn v0tti | events:32c3:cdn [2026/07/26 22:17] (current) – external edit 127.0.0.1 |
|---|
| = 32C3 - Streaming CDN | # 32C3 - Streaming CDN |
| |
| == Eckdaten | ## Eckdaten |
| |
| * nginx → HLS, icecast → webm, opus, mp3 | * nginx → HLS, icecast → webm, opus, mp3 |
| [[https://nyx.n621.de/~florolf/fud/32c3-streams.jpg|Transcoding]] | [[https://nyx.n621.de/~florolf/fud/32c3-streams.jpg|Transcoding]] |
| |
| == Fails | ## Fails |
| |
| * missed ''proxy_ignore_headers Cache-Control;'' on master servers | * missed ''proxy_ignore_headers Cache-Control;'' on master servers |
| * m3u8 gziped on chaching server | * m3u8 gziped on chaching server |
| |
| == Hardware-Anforderungen | ## Hardware-Anforderungen |
| |
| * 2 CPU-Cores (mit AES-NI Support) | * 2 CPU-Cores (mit AES-NI Support) |
| ** am besten ohne Firewall, zur Not mit freischaltung für Ports: 22 (SSH), 80 (HTTP), 443 (HTTPS), 1935 (RTMP), 8000 (Icecast) | ** am besten ohne Firewall, zur Not mit freischaltung für Ports: 22 (SSH), 80 (HTTP), 443 (HTTPS), 1935 (RTMP), 8000 (Icecast) |
| |
| == Installer-Image | ## Installer-Image |
| |
| http://c3voc.de/share/32c3/relay/ | http://c3voc.de/share/32c3/relay/ |
| |
| == Checkliste und Meilensteine | ## Checkliste und Meilensteine |
| |
| === bis 01.12.2015 | ### bis 01.12.2015 |
| |
| * <todo @meise #meise:2015-11-28>relay register wieder an den Start bringen</todo> | * <todo @meise #meise:2015-11-28>relay register wieder an den Start bringen</todo> |
| * <todo #florolf:2015-12-01>Install-Image auf Jessie aktualisieren</todo> | * <todo #florolf:2015-12-01>Install-Image auf Jessie aktualisieren</todo> |
| * <todo #florolf:2015-12-01>Preseed-Skript entsprechend anpassen</todo> | * <todo #florolf:2015-12-01>Preseed-Skript entsprechend anpassen</todo> |
| * <todo>ansible checken</todo> | * <todo #derpeter:2017-06-21>ansible checken</todo> |
| * <todo #florolf:2015-12-01>nginx-rtmp, (icecast), etc. für Jessie bauen</todo> | * <todo #florolf:2015-12-01>nginx-rtmp, (icecast), etc. für Jessie bauen</todo> |
| * <todo>Wie viel Platz hat relive das letzte jahr gebraucht?</todo> | * <todo #derpeter:2017-06-21>Wie viel Platz hat relive das letzte jahr gebraucht?</todo> |
| * <todo @meise #meise:2015-11-28>Box von atze anfragen</todo> | * <todo @meise #meise:2015-11-28>Box von atze anfragen</todo> |
| * <todo @florolf>mal mit equi ueber netzwerk reden</todo> | * <todo @florolf #derpeter:2017-06-21>mal mit equi ueber netzwerk reden</todo> |
| * <todo>Konzept für Erzeugung von WEBM und Subformate</todo> | * <todo #derpeter:2017-06-21>Konzept für Erzeugung von WEBM und Subformate</todo> |
| |
| |
| |
| === bis 20.12.2015 | ### bis 20.12.2015 |
| |
| * <todo #meise:2015-12-26>Zertifikate für alle geplanten relays besorgen</todo> | * <todo #meise:2015-12-26>Zertifikate für alle geplanten relays besorgen</todo> |
| * <todo #meise:2015-12-07>Plattenplatz auf den 1und1-Kisten erweitern für unsere Anforderungen</todo> | * <todo #meise:2015-12-07>Plattenplatz auf den 1und1-Kisten erweitern für unsere Anforderungen</todo> |
| * <todo #meise:2015-12-26>live.dus auf jessie neu installieren</todo> | * <todo #meise:2015-12-26>live.dus auf jessie neu installieren</todo> |
| * <todo @ischluff>Encoding-Tests mit verschiedenen Bandbreiten</todo> | * <todo @ischluff #derpeter:2017-06-21>Encoding-Tests mit verschiedenen Bandbreiten</todo> |
| * <todo @ischluff>CDN Monitoring-Skripte anpassen/überarbeiten</todo> | * <todo @ischluff #derpeter:2017-06-21>CDN Monitoring-Skripte anpassen/überarbeiten</todo> |
| * <todo #meise:2015-12-10>HAProxy multi process stats</todo> | * <todo #meise:2015-12-10>HAProxy multi process stats</todo> |
| * <todo #meise:2015-12-10>lb monitoring client einbinden</todo> | * <todo #meise:2015-12-10>lb monitoring client einbinden</todo> |
| * <todo>HAProxy accesslogs noch ohne ip adressen</todo> | * <todo #derpeter:2017-06-21>HAProxy accesslogs noch ohne ip adressen</todo> |
| * <todo>HAProxy: »SSLv3 support requested but unavailable.« oO</todo> | * <todo #derpeter:2017-06-21>HAProxy: »SSLv3 support requested but unavailable.« oO</todo> |
| |
| |
| === am 26.12.2015 | ### am 26.12.2015 |
| * <todo #meise:2015-12-27>0/0 Einträge aus iptables-Regeln entfernen</todo> | * <todo #meise:2015-12-27>0/0 Einträge aus iptables-Regeln entfernen</todo> |
| * <todo #meise:2015-12-27>icecast_relay_on_demand in group_vars/relays auf 0 setzen</todo> | * <todo #meise:2015-12-27>icecast_relay_on_demand in group_vars/relays auf 0 setzen</todo> |
| * <todo>nach TODO imm ansible suchen</todo> | * <todo #derpeter:2017-06-21>nach TODO imm ansible suchen</todo> |
| * <todo>passwörter auf den relays noch einmal durchwechseln z.B. icecast</todo> | * <todo #derpeter:2017-06-21>passwörter auf den relays noch einmal durchwechseln z.B. icecast</todo> |
| * <todo #meise:2015-12-26>usa in colo deployen: 10ge public, 1ge public, 1ge intern</todo> | * <todo #meise:2015-12-26>usa in colo deployen: 10ge public, 1ge public, 1ge intern</todo> |
| * <todo #meise:2015-12-26>fempeg in colo deployen: 10ge public, 1ge intern</todo> | * <todo #meise:2015-12-26>fempeg in colo deployen: 10ge public, 1ge intern</todo> |
| * <todo #meise:2015-12-26>router vm mit sicherheits patches aktualisieren</todo> | * <todo #meise:2015-12-26>router vm mit sicherheits patches aktualisieren</todo> |
| * <todo>usa root passwort auf das keypass pw ändern</todo> | * <todo #derpeter:2017-06-21>usa root passwort auf das keypass pw ändern</todo> |
| * <todo #meise:2015-12-26>subtitles vm auf usa deployen. br-pbl auf 1ge public interface bereits vorhanden</todo> | * <todo #meise:2015-12-26>subtitles vm auf usa deployen. br-pbl auf 1ge public interface bereits vorhanden</todo> |
| |
| === am 27.12.2015 | ### am 27.12.2015 |
| * <todo #meise:2015-12-29>fempeg zertifikat für mirror.32c3.c3voc.de erstellen und hinterlegen, dns record setzen und mirror zum mb hinzufügen, rsync von www-data aktivieren</todo> | * <todo #meise:2015-12-29>fempeg zertifikat für mirror.32c3.c3voc.de erstellen und hinterlegen, dns record setzen und mirror zum mb hinzufügen, rsync von www-data aktivieren</todo> |
| |
| == Bandbreitenbedarf | ## Bandbreitenbedarf |
| |
| === Video | ### Video |
| <code> | <code> |
| 2x 1mbit H264 HQ | 2x 1mbit H264 HQ |
| </code> | </code> |
| |
| === Audio | ### Audio |
| |
| <code> | <code> |
| </code> | </code> |
| |
| === HD | ### HD |
| |
| <code> | <code> |
| |
| |
| === Icecast | ### Icecast |
| |
| <code> | <code> |
| </code> | </code> |
| |
| === Nginx | ### Nginx |
| |
| <code> | <code> |
| 6Mbit + 2Mbit * 5 = 40Mbit pro edge relay | 6Mbit + 2Mbit * 5 = 40Mbit pro edge relay |
| </code> | </code> |
| == Relay register Bandbreitenmessungen | ## Relay register Bandbreitenmessungen |
| |
| <code> | <code> |
| </code> | </code> |
| |
| == Stats | ## Stats |
| |
| === Audio listeners | ### Audio listeners |
| |
| {{:32c3:cdn:32c3_music_listener.png?600|}} | {{:32c3:cdn:32c3_music_listener.png?600|}} |
| |
| === Edges | ### Edges |
| |
| {{:32c3:cdn:32c3_edge_relays.png?600|}} | {{:32c3:cdn:32c3_edge_relays.png?600|}} |
| |
| |
| === Relive | ### Relive |
| |
| {{:32c3:cdn:32c3_relive_usage.png?600|}} | {{:32c3:cdn:32c3_relive_usage.png?600|}} |
| |
| |
| == Master | ## Master |
| |
| {{:32c3:cdn:32c3_master_rx.png?600|}} | {{:32c3:cdn:32c3_master_rx.png?600|}} |
| {{:32c3:cdn:32c3_master_tx.png?600|}} | {{:32c3:cdn:32c3_master_tx.png?600|}} |
| |
| === Viewer | ### Viewer |
| |
| {{:32c3:cdn:32c3_viewers_per_transport.png?600|}} | {{:32c3:cdn:32c3_viewers_per_transport.png?600|}} |
| {{:32c3:cdn:32c3_viewers_per_hall.png?600|}} | {{:32c3:cdn:32c3_viewers_per_hall.png?600|}} |
| |
| === Media Köln | ### Media Köln |
| |
| {{:32c3:cdn:32c3_media_koeln_if_eth1-week.png|}} | {{:32c3:cdn:32c3_media_koeln_if_eth1-week.png|}} |