| Both sides previous revision Previous revision Next revision | Previous revision Next revisionBoth sides next revision |
| 32c3:cdn [2015/12/30 21:51] – [Viewer] meise | events:32c3:cdn [2017/06/21 10:41] – ToDo checked: HAProxy: »SSLv3 support requested but unavailable.« oO derpeter |
|---|
| | = 32C3 - Streaming CDN |
| | |
| | == Eckdaten |
| | |
| | * nginx → HLS, icecast → webm, opus, mp3 |
| | * HTTPS support auf allen Edge-Relays |
| | * 2x haproxy für Loadbalancing und Webseite |
| | * Relive in HD |
| | * fempeg als Media mirror |
| | |
| | [[https://c3voc.de/32c3/register|Relay register]] |
| | [[https://nyx.n621.de/~florolf/fud/32c3-streams.jpg|Transcoding]] |
| | |
| | == Fails |
| | |
| | * missed ''proxy_ignore_headers Cache-Control;'' on master servers |
| | * icecast soft limit for ''max open files'' was overwritten by init script |
| | * not enough bandwith calculated (fnord news show drops) |
| | * Mail ''Passwords in pad?'' |
| | * disk space on media mirrors (fempeg) |
| | * m3u8 gziped on chaching server |
| | |
| | == Hardware-Anforderungen |
| | |
| | * 2 CPU-Cores (mit AES-NI Support) |
| | * mind. 2GB Ram |
| | * mind. 100GB Festplatte |
| | * Netzwerk: |
| | ** 1x GBit Netzwerkinterface mit IPv4 und IPv6 Konnektivität |
| | ** am besten ohne Firewall, zur Not mit freischaltung für Ports: 22 (SSH), 80 (HTTP), 443 (HTTPS), 1935 (RTMP), 8000 (Icecast) |
| | |
| | == Installer-Image |
| | |
| | http://c3voc.de/share/32c3/relay/ |
| | |
| | == Checkliste und Meilensteine |
| | |
| | === bis 01.12.2015 |
| | |
| | * <todo @meise #meise:2015-11-28>relay register wieder an den Start bringen</todo> |
| | * <todo @florolf #meise:2015-11-22 #florolf:2015-11-22>Hetzner anschreiben</todo> |
| | * <todo #meise:2015-12-09>https Konfiguration im ansible finalisieren</todo> |
| | * <todo #florolf:2015-12-01>Install-Image auf Jessie aktualisieren</todo> |
| | * <todo #florolf:2015-12-01>Preseed-Skript entsprechend anpassen</todo> |
| | * <todo #derpeter:2017-06-21>ansible checken</todo> |
| | * <todo #florolf:2015-12-01>nginx-rtmp, (icecast), etc. für Jessie bauen</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 @florolf #derpeter:2017-06-21>mal mit equi ueber netzwerk reden</todo> |
| | * <todo #derpeter:2017-06-21>Konzept für Erzeugung von WEBM und Subformate</todo> |
| | |
| | |
| | |
| | === bis 20.12.2015 |
| | |
| | * <todo #meise:2015-12-26>Zertifikate für alle geplanten relays besorgen</todo> |
| | * <todo #meise:2015-12-26>Grundinstallation der Relays vornehmen</todo> |
| | * <todo #meise:2015-12-05>lb1.het.c3voc.de auf jessie aktualisieren</todo> |
| | * <todo #meise:2015-12-10>webseite auf lb1.fem + lb1.het deployen</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 @ischluff #derpeter:2017-06-21>Encoding-Tests mit verschiedenen Bandbreiten</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>lb monitoring client einbinden</todo> |
| | * <todo #derpeter:2017-06-21>HAProxy accesslogs noch ohne ip adressen</todo> |
| | * <todo #derpeter:2017-06-21>HAProxy: »SSLv3 support requested but unavailable.« oO</todo> |
| | |
| | |
| | === am 26.12.2015 |
| | * <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>nach TODO imm ansible suchen</todo> |
| | * <todo>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>fempeg in colo deployen: 10ge public, 1ge intern</todo> |
| | * <todo #meise:2015-12-26>router vm mit sicherheits patches aktualisieren</todo> |
| | * <todo>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> |
| | |
| | === 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> |
| | |
| | == Bandbreitenbedarf |
| | |
| | === Video |
| | <code> |
| | 2x 1mbit H264 HQ |
| | 2x 1mbit WebM |
| | ---------------- |
| | ~ 5Mbit * 4 = 25Mbit pro edge relay |
| | </code> |
| | |
| | === Audio |
| | |
| | <code> |
| | 2x 128kbit Mp3 |
| | 2x 96kbit Opus |
| | -------------- |
| | ~ 0.5 Mbit * 5 = 2,5Mbit |
| | </code> |
| | |
| | === HD |
| | |
| | <code> |
| | 2x 3Mbit H264 (geschätzt) |
| | ------------ |
| | ~ 6Mbit * 1 = 6Mbit |
| | </code> |
| | |
| | |
| | === Icecast |
| | |
| | <code> |
| | 2x 3Mbit Webm |
| | 2x 1mbit WebM |
| | 2x 128kbit Mp3 |
| | 2x 96kbit Opus |
| | --------------- |
| | 6Mbit + 2Mbit + 0.5 * 5 = 43Mbit pro edge relay |
| | </code> |
| | |
| | === Nginx |
| | |
| | <code> |
| | 2x 3Mbit HD |
| | 2x 1mbit SD |
| | --------------- |
| | 6Mbit + 2Mbit * 5 = 40Mbit pro edge relay |
| | </code> |
| | == Relay register Bandbreitenmessungen |
| | |
| | <code> |
| | ruby measure_bw.rb 31.172.30.138 195.54.164.164 46.4.3.195 141.24.40.53 217.160.107.68 74.208.155.193 5.9.196.94 |
| | </code> |
| | |
| | == Stats |
| | |
| | === Audio listeners |
| | |
| | {{:32c3:cdn:32c3_music_listener.png?600|}} |
| | |
| | === Edges |
| | |
| | {{:32c3:cdn:32c3_edge_relays.png?600|}} |
| | |
| | |
| | {{:32c3:cdn:32c3_edge_relays_max_bw.png?600|}} |
| | |
| | |
| | === Relive |
| | |
| | {{:32c3:cdn:32c3_relive_usage.png?600|}} |
| | |
| | |
| | == Master |
| | |
| | {{:32c3:cdn:32c3_master_rx.png?600|}} |
| | |
| | {{:32c3:cdn:32c3_master_tx.png?600|}} |
| | |
| | === Viewer |
| | |
| | {{:32c3:cdn:32c3_viewers_per_transport.png?600|}} |
| | |
| | {{:32c3:cdn:32c3_viewers_per_quality.png?600|}} |
| | |
| | {{:32c3:cdn:32c3_viewers_per_hall.png?600|}} |
| | |
| | === Media Köln |
| | |
| | {{:32c3:cdn:32c3_media_koeln_if_eth1-week.png|}} |
| | |
| | {{:32c3:cdn:32c3_media_koeln_diskstats_throughput-week.png?|}} |
| | |
| | {{:32c3:cdn:32c3_media_koeln_diskstats_utilization-week.png?|}} |
| | |
| | {{:32c3:cdn:32c3_media_koeln_if_eth1-week.png?|}} |
| | |
| | {{:32c3:cdn:32c3_media_koeln_if_eth1-year.png?|}} |
| | |
| | {{:32c3:cdn:32c3_media_koeln_memory-week.png?|}} |
| |