Indeks dnevnikaDockup / bilješka s terena
Note / self-host-beszel

Kako samostalno hostati Beszel u 2026.: agenti, privatno umrežavanje i sigurnosne kopije

Praktični vodič za samostalno hostanje Beszela koji obuhvaća Docker, portove, trajne podatke, TLS, sigurnost, sigurnosne kopije i probleme koji onemogućuju produkcijsku upotrebu. Korak po korak.

Najkraći Beszel demo dokazuje da proces sluša na portu 8090. Produkcija zahtijeva čvršće dokaze. Sustav mora proći ovaj scenarij čak i nakon zamjene containera: registrirati agenta, prikazati grafikone CPU-a, memorije i diska, aktivirati upozorenje za prekoračenje praga te ponovno povezati agenta nakon ponovnog pokretanja huba.

Beszel se postavlja s jasnom svrhom: lagano nadziranje poslužitelja u malom containeru. Najčešći problem pri implementaciji jest to što hub ne može dohvatiti port 45876 na agentu ili se njegov SSH ključ promijenio, pa rukovanju javnim URL-om i trajnim stanjem treba posvetiti jednaku pozornost kao i pokretanju imagea.

Nacrtajte granicu Beszel runtimea

Stanje procesa i stanje proizvoda dvije su odvojene stvari u Beszelu. Port 8090 može odgovarati dok transakcija vidljiva korisniku i dalje ne uspijeva. Mrežni ugovor za Beszel podrazumijeva Beszel agenta na svakom nadziranom računalu. Privatne endpointe držite na internom DNS-u, dopustite samo potrebne odlazne pozive i Beszelu dodijelite servisne vjerodajnice ograničenog opsega.

Ovu provjeru spremnosti provedite nakon značajnih promjena konfiguracije: registrirajte agenta, prikazujte grafikone CPU-a, memorije i diska, aktivirajte upozorenje za prekoračenje praga te ponovno povežite agenta nakon ponovnog pokretanja huba. Skupe vanjske provjere izostavite iz liveness probeova kako prekid rada pružatelja usluge ne bi uzrokovao petlju ponovnog pokretanja. Pri planiranju kapaciteta pratite broj agenata, zadržavanje metrika, pohranu huba i mrežnu dostupnost svakog agenta na njegovom namjenskom portu — to je bliže stvarnom opterećenju Beszela nego zahtjevi za stranicama.

Učinite javni origin nedvosmislenim

Browser, API klijent i Beszel moraju se slagati oko jednog origina. Da biste to postigli, usmjerite hub kroz HTTPS i portove agenata zadržite privatnima. Očuvajte izvorni host i protokol, a port 8090 nemojte učiniti dostupnim kao konkurentnu javnu adresu.

Vodič za otklanjanje problema kada je stranica nedostupna pomaže razlikovati nedostupnu rutu od aplikacije koja odgovara. Ta je razlika ovdje važna: hub ne može dohvatiti port 45876 na agentu ili se njegov SSH ključ promijenio. Promjene na ingressu rješavaju samo prvi problem; za drugi su potrebni pregled Beszel logova, stanja ili workloada.

Pokrenite prvu instancu oblikovanu za produkciju

Prvi container treba biti jednostavno obrisati i ponovno stvoriti. Podatke držite izvan writable layera, port 8090 vežite samo ondje gdje mu proxy može pristupiti i konfiguraciju proslijedite tijekom runtimea.

docker run -d \
  --name beszel \
  --restart unless-stopped \
  -p 127.0.0.1:8090:8090 \
  -v beszel-data:/beszel_data \
  henrygd/beszel:latest

Nakon početnog testa pinajte image. Pročitajte najraniju startup grešku umjesto završne poruke o ponovnom pokretanju, provjerite svaki mount naredbom docker inspect i pratite logove dok registrirate agenta, prikazujete grafikone CPU-a, memorije i diska, aktivirate upozorenje za prekoračenje praga te ponovno povezujete agenta nakon ponovnog pokretanja huba. Taj slijed razlikuje neispravnu naredbu imagea od problema s dependencyjem ili dozvolama.

Logovi koji daju odgovor na sljedeće pitanje

Zeleni container nužan je, ali nije dovoljan. SLI na razini servisa uspješan je završetak radnje „registrirati agenta, prikazati grafikone CPU-a, memorije i diska, aktivirati upozorenje za prekoračenje praga te ponovno povezati agenta nakon ponovnog pokretanja huba“, dok su vjerojatni pokazatelji opterećenja broj agenata, zadržavanje metrika, pohrana huba i mrežna dostupnost svakog agenta na njegovom namjenskom portu.

Upravljanje promjenama važno je jer hub i agent verzije treba testirati zajedno: promjene protokola mogu izgledati kao neprimjetni prekidi u nadzoru. Sačuvajte prethodni image, migracije testirajte na kopiranom stanju i dokumentirajte podržava li se rollback nakon promjene sheme. Ako hub ne može dohvatiti port 45876 na agentu ili se njegov SSH ključ promijenio, dijagnosticirajte prvu granicu koja se razlikuje od radnog okruženja.

Produkcijska provjera prihvaćanja za Beszel

Prije dolaska stvarnih korisnika izradite release worksheet za Beszel. U njemu moraju biti navedeni pinani image, port 8090, kanonski origin, trajne putanje i vlasnik Beszel agenta na svakom nadziranom računalu. Priložite očekivani rezultat ove transakcije: registrirati agenta, prikazati grafikone CPU-a, memorije i diska, aktivirati upozorenje za prekoračenje praga te ponovno povezati agenta nakon ponovnog pokretanja huba.

Worksheet koristite nakon uobičajene zamjene i nakon čistog restorea. Oporavak je prihvaćen samo ako se vrate sustavi, povijest i upozorenja te svaki obnovljeni agent nastavi slati aktualne metrike. Prikupite i kratki resource trace koji obuhvaća broj agenata, zadržavanje metrika, pohranu huba i mrežnu dostupnost svakog agenta na njegovom namjenskom portu; držite ga uz release kako bi se buduće promjene kapaciteta uspoređivale s istim workloadom.

Uključite jedan kontrolirani kvar: privremeno uskratite testnom identitetu pristup Beszel agentu na svakom nadziranom računalu. Potvrdite da Beszel prijavljuje problem na ispravnoj granici, vratite valjano stanje i ponovno pokrenite transakciju. Time provjeravate vidljivost grešaka, a ne samo uspjeh, te sprječavate da sučelje koje izgleda zdravo prikrije neispravan worker, callback ili vezu s bazom podataka.

Dizajnirajte Beszel restore prije pokretanja

Popišite svaki trajni artefakt: podatke huba, korisnike, sustave i konfiguraciju upozorenja. Mountajte /beszel_data prije bootstrapa, upišite bezopasne ogledne podatke i zamijenite container kako biste dokazali da je ta putanja doista trajna. Uključite konfiguraciju koja mijenja način interpretacije pohranjenih podataka, a ne samo najveći direktorij.

Postavite retention, kopirajte sigurnosne kopije izvan hosta i provedite restore u čistom okruženju. Beszelova provjera oporavka završena je kada se vrate sustavi, povijest i upozorenja te svaki obnovljeni agent nastavi slati aktualne metrike. Ako su snapshoti dio plana, upotrijebite smjernice za PITR u odnosu na snapshot kako biste dokumentirali što svaki mehanizam može vratiti.

Zatvorite privremeni pristup za postavljanje

Izradite threat model za radnju koju Beszel obavlja, a ne samo za njegov login obrazac. Ovdje je najrizičnija pogreška izlaganje listenera agenata internetu bez mrežnih kontrola. Uspostavite ovu granicu: listenere agenata držite na privatnim mrežama i zaštitite račun huba te ključeve za registraciju.

Beszel u ovoj osnovnoj konfiguraciji nema obaveznu bootstrap tajnu; zaštitite njegov stvarni administratorski račun ili upstream autentikaciju. Pogrešku s dozvolama nemojte rješavati pokretanjem containera kao root ili širokim mountanjem hosta. Ograničenja resursa također pripadaju sigurnosnom dizajnu kada korisnici mogu utjecati na broj agenata, zadržavanje metrika, pohranu huba i mrežnu dostupnost svakog agenta na njegovom namjenskom portu.

Premjestite ponovljivi infrastrukturni posao u Dockup

Za Beszel je Dockup najkorisniji na granici između imagea i trajnog servisa. Održava rutu do porta 8090, TLS, vrijednosti tajni i pohranu povezane tijekom zamjena containera, neovisno o tome pripada li compute Dockupu ili vašem povezanom poslužitelju.

Završite poznavanjem aplikacije: usmjerite hub kroz HTTPS i portove agenata zadržite privatnima; povežite i testirajte Beszel agenta na svakom nadziranom računalu; zatim provedite ovu provjeru: registrirajte agenta, prikazujte grafikone CPU-a, memorije i diska, aktivirajte upozorenje za prekoračenje praga te ponovno povežite agenta nakon ponovnog pokretanja huba. Rezultat zadržite kao deployment check kako bi se sljedeće ažuriranje imagea procjenjivalo prema ponašanju, a ne prema statusu containera.

Često postavljana pitanja

Što je Beszelu potrebno za produkcijsku implementaciju?

Usmjerite Beszel container na portu 8090 kroz jedan HTTPS origin. Prateći mrežni zahtjev jest Beszel agent na svakom nadziranom računalu. Beszel nemojte smatrati spremnim dok ne možete registrirati agenta, prikazati grafikone CPU-a, memorije i diska, aktivirati upozorenje za prekoračenje praga te ponovno povezati agenta nakon ponovnog pokretanja huba.

Koji Beszelovi podaci trebaju biti obuhvaćeni sigurnosnom kopijom?

Učinite /beszel_data trajnim i u isti recovery manifest uključite podatke huba, korisnike, sustave i konfiguraciju upozorenja. Čisti Beszel restore uspješan je samo kada se vrate sustavi, povijest i upozorenja te svaki obnovljeni agent nastavi slati aktualne metrike.

Zahtijeva li Beszel HTTPS iza reverse proxya?

Za javni Beszel origin koristite HTTPS, a port 8090 zadržite na internoj ruti. Ispravno primijenite Beszelovu postavku: usmjerite hub kroz HTTPS i portove agenata zadržite privatnima. HTTPS za Beszel štiti vjerodajnice ili korisnički sadržaj tijekom prijenosa i održava dosljedno ponašanje klijenta ovisno o originu.

Kako treba testirati nadogradnju Beszela?

Vratite trenutačno Beszelovo stanje u izoliranu implementaciju, primijenite kandidate verzije i ponovite njegovu transakciju prihvaćanja. Posebnu pozornost obratite na to da hub i agent verzije treba testirati zajedno: promjene protokola mogu izgledati kao neprimjetni prekidi u nadzoru. Prethodni Beszel image zadržite dok ne razjasnite granice migracije podataka i rollbacka.