Acasă
» ADMIN. REȚEA
»
Remediază blocările serverului media BigBlueButton Kurento sub sarcină
Remediază blocările serverului media BigBlueButton Kurento sub sarcină
Un proces Kurento Media Server (KMS) care se încheie în timpul întâlnirilor BigBlueButton aglomerate poate întrerupe înregistrarea sau, în cazul instalărilor mai vechi, sunetul și videoclipul live. Primul rezultat util nu este pur și simplu un serviciu care pornește din nou: este vorba de a ști ce stivă media gestionează funcția afectată, ce resursă sau eroare precede încheierea și dacă remedierea menține stabilă următoarea întâlnire comparabilă.
Începeți prin a confirma versiunea BigBlueButton și rolul pe care Kurento îl joacă pe acest server. BigBlueButton 2.5 și versiunile ulterioare utilizează mediasoup în mod implicit pentru media WebRTC live; Kurento poate fi încă prezent pentru înregistrare sau pentru că un administrator a păstrat o configurație veche/personalizată. Prin urmare, eroarea „Kurento s-a prăbușit” nu dovedește în sine că KMS are camerele web supraîncărcate. Consultați ghidul oficial de depanare BigBlueButton pentru a distinge între versiuni. Remediile KMS detaliate de mai jos sunt extrase din ghidul de personalizare a serverului BigBlueButton 2.7 versionat ; verificați documentația corespunzătoare versiunii instalate înainte de a le aplica.
Se utilizează sudo bbb-conf --checkpentru a stabili versiunea instalată de BigBlueButton și a verifica configurația înainte de a modifica stiva de media.
Mai întâi confirmați ce a eșuat
Colectați dovezi înainte de a reporni serviciile în mod repetat. Înregistrați momentul în care utilizatorii au observat prima dată problema, întâlnirea afectată, dacă au eșuat sunetul, camera web, partajarea ecranului sau înregistrarea și dacă întregul server sau doar o funcție media s-a degradat. O repornire a unui serviciu poate restaura temporar un proces, ștergând în același timp indiciile de temporizare care disting o eroare de o problemă de rețea sau de client.
Pe gazda BigBlueButton, începeți cu verificări doar pentru citire:
sudo bbb-conf --check
sudo systemctl status kurento-media-server --no-pager
sudo journalctl -u kurento-media-server --since "1 hour ago" --no-pager
sudo ls -lt /var/log/kurento-media-server/ | head
Folosește numele unității relevant pentru lansare și implementare. Dacă serviciul este împărțit în mai multe unități KMS, inspectează unitatea și jurnalul pentru procesul care a eșuat. Comparați marcajul temporal al jurnalului systemd cu cel mai recent jurnal KMS. Caută o ieșire explicită, o buclă de repornire, o conductă media eșuată sau un mesaj legat de resurse; o linie de „avertisment” fără o eroare corespondentă nu este suficientă pentru a identifica o cauză.
Confirmați dacă utilizatorii folosesc de fapt Kurento pentru traficul care a eșuat. În Firefox, about:webrtcpoate expune detaliile conexiunii peer; Chrome oferă chrome://webrtc-internals. Documentația de depanare BigBlueButton descrie verificarea detaliilor sesiunii negociate pentru mediasoup. De asemenea, verificați serviciile media configurate și fluxul de lucru de înregistrare. Dacă media live este pe mediasoup și înregistrarea se oprește doar atunci când KMS se închide, reglați calea de înregistrare/Kurento în loc să modificați orbește setările camerei web live.
Comparați presiunea CPU și a memoriei pentru procesul media relevant cu momentul în care serviciul se încheie; acest panou este o vizualizare schematică a monitorului, nu date live ale serverului.
Găsiți presiunea care apare înainte de ieșire
„Subsarcină” poate însemna mai multe blocaje diferite. Eșantionați gazda în timp ce o întâlnire reprezentativă este activă și comparați eșantionul cu ora evenimentului. Verificările utile includ:
free -hși vmstat 1pentru memoria disponibilă, swapping și presiunea cozii de execuție;
mpstat -P ALL 1pentru saturația CPU per nucleu, dacă sysstatinstrumentele sunt instalate;
df -hși iostat -xz 1pentru o latență completă a sistemului de fișiere sau a stocării, acolo unde este disponibilă;
journalctl -k --since "1 hour ago"pentru mesajele kernelului, inclusiv o închidere din cauza memoriei insuficiente;
jurnalele de stare systemd și KMS pentru ieșiri repetate, erori ale canalului și operațiunea media activă.
Nu vă bazați doar pe CPU-ul mediu al serverului. Un proces media poate fi restricționat de un nucleu ocupat, în timp ce alte nuclee par inactive, sau presiunea memoriei poate declanșa o întrerupere fără o perioadă lungă de utilizare ridicată a CPU-ului. În schimb, poate apărea un raport de tip „înghețare a camerei” al unui utilizator în timp ce KMS rămâne funcțional, deoarece UDP-ul este blocat sau browserul nu poate stabili o cale WebRTC. BigBlueButton documentează TURN ca remediu pentru rețelele restrictive; TURN poate îmbunătăți conectivitatea, dar nu adaugă capacitate de calcul KMS. Dacă serviciul rămâne activ și jurnalele nu arată niciun eveniment de resurse, investigați ICE, firewall-ul și conectivitatea clientului înainte de a crește limitele media.
Capacitatea depinde de combinația reală de fluxuri și procesare, nu doar de numărul de participanți la întâlnire. Numărul de camere web publicate și primite, partajările de ecran, sesiunile audio, înregistrarea, calitatea negociată și aspectul întâlnirii sunt toate importante. De aceea, o limită sustenabilă ar trebui măsurată cu propriul model de întâlnire al organizației, mai degrabă decât copiată de pe un server independent.
Observați împreună tendințele CPU, memoriei, I/O-urilor pe disc și rețelei în timpul unei reproduceri controlate; liniile ascendente ilustrează categoriile de monitorizat, nu performanța BigBlueButton măsurată.
Alegeți un remediu care corespunde dovezilor
Pentru o implementare KMS moștenită, sarcini de lucru media separate
Ghidul de personalizare BigBlueButton 2.7 documentează rularea a trei procese KMS, câte unul pentru fiecare proces audio doar de ascultare, cameră web și partajare ecran. Avantajul declarat este de a distribui pornirea/oprirea fișierelor media în procese separate și de a limita impactul atunci când un proces KMS se blochează. Configurarea ghidului utilizează enableMultipleKurentossetarea scriptului de configurare BigBlueButton și apoi repornește BigBlueButton. Urmați instrucțiunile pentru versiunea exactă și inspectați unitățile de serviciu și jurnalele rezultate după repornire.
Această separare este o măsură de izolare și distribuție, nu un substitut pentru suficient CPU, memorie sau stocare. De asemenea, poate crește utilizarea resurselor de bază, deoarece rulează procese suplimentare. Programați o fereastră de întreținere: sudo bbb-conf --restartîntrerupe sesiunile active. Nu editați manual fișierele de service generate și nu presupuneți că o comandă documentată pentru versiunea 2.7 se aplică neschimbată unei instalări mai noi sau modificate de furnizor.
Setați praguri media atunci când serverul are nevoie de o limită de admitere
Pentru versiunile bazate pe KMS care acceptă opțiunea documentată, BigBlueButton permite mediaThresholdsvalori pentru global, perRoomși perUser. Ghidul 2.7 le prezintă în /etc/bigbluebutton/bbb-webrtc-sfu/production.yml, un fișier de suprascriere destinat să supraviețuiască actualizărilor pachetului. Un zero înseamnă că nu există limită în exemplul documentat. Atingerea unui prag configurat poate cauza o eroare „Resursele media nu sunt disponibile (2002)” atunci când un participant încearcă să partajeze o cameră web.
Alegeți valori din capacitatea măsurată și calitatea serviciului necesară; nu lipiți exemplul ilustrativ din documentație ca limită universală sigură. Un prag face supraîncărcarea mai previzibilă prin refuzul suporturilor media suplimentare, dar nu repară o eroare cauzată de o eroare, o scurgere de memorie sau o limită a sistemului de operare fără legătură. Confirmați numele setărilor și comportamentul din documentația pentru versiunea dvs. înainte de a o implementa.
Exemplul de configurare identifică doar cheile de prag; selectați valori compatibile cu versiunea din sarcina măsurată și din documentația BigBlueButton corespunzătoare.
Reduceți cererea de media înainte de a crește estimările privind capacitatea
Când monitorizarea arată saturație a resurselor, reduceți mai întâi volumul maxim de lucru pe care serviciul trebuie să îl efectueze. Solicitați moderatorilor să activeze selectiv camerele web, să evite partajările simultane inutile ale ecranului sau să împartă o sesiune interactivă foarte mare în săli mai mici, dacă acest lucru se potrivește formatului de predare. Pe versiunile care expun paginarea camerei web sau limitele de flux acceptate, reglați-le prin mecanismul de suprascriere documentat. Un număr mai mic de fluxuri primite poate reduce fan-out-ul, în timp ce scăderea rezoluției camerei sau a ratei de biți poate reduce cererea de procesare și lățime de bandă. Aceste modificări schimbă detaliile vizuale sau spontaneitatea în favoarea stabilității; explicați compromisul gazdelor întâlnirii și validați dacă experiența rezultată este acceptabilă.
Luați în considerare o actualizare sau o modificare a arhitecturii atunci când revin limitele
Dacă versiunea instalată este veche, confirmați calea de actualizare acceptată și arhitectura media înainte de a investi suplimentar în optimizarea KMS. Începând cu BigBlueButton 2.5, mediasoup este implicit pentru media live, în timp ce rolul lui Kurento diferă de versiunile mai vechi. Prin urmare, o eroare persistentă a KMS pe un server curent poate indica înregistrarea, o stivă media personalizată sau o integrare specifică. Pentru o implementare moștenită care atinge în mod repetat plafonul măsurat după limite rezonabile și modificări ale volumului de lucru, actualizarea sau reproiectarea implementării poate fi mai eficientă decât creșterea pragurilor. Costul operațional este reprezentat de testarea compatibilității, planificarea migrării și o fereastră de întreținere.
Validați modificarea în cadrul unei întâlniri comparabile
Schimbați câte o setare sau o practică de încărcare a muncii pe rând, apoi testați folosind o întâlnire controlată care seamănă cu utilizarea normală în perioadele de vârf. Rețineți lansarea BigBlueButton, numărul de participanți, numărul aproximativ de camere web active, partajările ecranului și dacă înregistrarea este activată. Aceasta oferă o comparație utilă fără a trata numărul de participanți ca singura variabilă de încărcare.
Confirmați că unitatea KMS relevantă rămâne activă și nu intră într-o buclă de repornire.
Comparați CPU per nucleu, memoria disponibilă și swap-urile, activitatea discului și jurnalele înainte și în timpul testului.
Verificați separat sunetul, camera web, partajarea ecranului și înregistrarea, în funcție de rolul pe care îl îndeplinește efectiv Kurento.
Verificați dacă erorile din 2002, configurarea media eșuată sau rapoartele utilizatorilor se modifică; nicio metrică nu dovedește remedierea.
Repetați în perioada de aglomerare așteptată înainte de a declara modificarea capacității reușită.
Dacă serviciul persistă, capturați jurnalul KMS exact și fereastra jurnalului, mesajele kernelului, versiunile BigBlueButton/Kurento instalate și suprascrierile configurației active pentru administrator sau echipa de asistență. Dacă serviciul rămâne funcțional, dar utilizatorii tot nu se pot conecta, mutați investigația către candidații ICE, regulile firewall-ului, disponibilitatea TURN și diagnosticarea WebRTC din partea browserului. Rezultatul corect este o sarcină de lucru media stabilă, cu limite înțelese - nu un număr nelimitat de fluxuri sau o garanție că o configurație se potrivește fiecărui server.
Documentația a fost revizuită pe 5 octombrie 2026. Exemplele detaliate de sarcini de lucru și praguri Kurento de mai sus sunt legate explicit de documentația BigBlueButton 2.7; verificați notele de lansare corespunzătoare și ghidul administratorului înainte de a aplica setările în altă parte.