Nowoczesny Przełącznik Językowy - Pure HTML/CSS
Infrastruktura serwerów Zbigniew Kulesza zjk.pl

Serdecznie witam na moich prywatnych, domowych serwerach FreeBSD/UNIX, Sieradz. Polska

Dzisiaj jest: 2026-05-30 20:06:58   Aktualizacja dnia: [an error occurred while processing this directive]


Widok
                  aktualny


Filozofia projektu:

Zalety infrastruktury
                        zjk.pl

Parametry infrastruktury:
  • dostępność usług 24/7/365,
  • redundancja wybranych usług i komponentów infrastruktury,
  • OPNsense HA (master/slave + CARP),
  • dwa niezależne łącza ISP,
  • LACP/LAGG dla kluczowych połączeń sieciowych,
  • serwery fizyczne i wirtualne,
  • storage, backup i monitoring,
  • systematyczne aktualizacje sprzętu i oprogramowania (tryb ciągły, restarty po istotnych aktualizacjach bez względu na uptime),
  • możliwość hostowania własnych domen i usług.

Schemat
                    struktury sieci zjk.pl

Powyższy schemat i opis poniżej mają charakter poglądowy (ze względów bezpieczeństwa).


Architektura infrastruktury


Poniższe schematy i opisy mają charakter poglądowy ze względów bezpieczeństwa.


Opis ekosystemu serwerowni zjk.pl: "ekosystem", jak zjk.pl działa jako całość z podkreśleniem najważniejszych technologii.


Schemat główny


Infrastruktura składa się z następujących warstw:

  1. Warstwa brzegowa (Edge Layer) - komunikacja ze światem

  • OPNsense HA (master/slave),
  • CARP failover,
  • dwa niezależne łącza ISP,
  • routing i automatyczne przełączanie awaryjne,
  • firewall / NAT / filtrowanie,
  • HAProxy / reverse proxy,
  • TLS termination,
  • HTTP/3 / QUIC.

Opis:
Warstwa składa się z dwóch modemów różnych dostawców Internetowych, dwóch komputerów z OPNsense - z włączonym CARP i tryblem Master-Slave. Schemat ilustruje ten system: 2 modemy Vectra i Netia, 2 x OPNsense, ale objemuje warstwę następną - sieci: dwa switche zarządzalny i zwykły oraz punkt WiFi.


  1. Warstwa sieciowa (Network Layer) - czysta infrastruktura transportowa

  • switch zarządzalny,
  • switch zapasowy / fallback,
  • LACP / LAGG,
  • VLAN / segmentacja sieci,
  • trunki i agregacja,
  • punkt dostępowy WiFi,
  • sieć LAN.

Opis:
LAGG/LACP łączy serwery ze switchem zarządzalnym 2x1Gb/s, jednak w wybranych miejscach pojawia się jeszcze LAGG w trybie failover oraz loadbalance.

Schemat infrastruktury zjk.pl

  1. Warstwa usług i aplikacji (Service Layer) - oferowane funkcjonalności / usługi

  • rozproszone serwery WWW,
  • poczta Sendmail, Dovecot,
  • Nextcloud, Piwigo,
  • WordPress,
  • Jellyfin,
  • Git / SVN / Forgejo,
  • monitoring - m.in. Monitorix, Mrtg, Ganglia, Symon,
  • logowanie / syslog,
  • DNS,
  • reverse proxy aplikacyjne,
  • HA usług.

Opis poczty:
Dwa serwery pocztowe mail.zjk.pl (mai1.zjk.pl) i mail2.zjk.pl, na obydwu pracują Sendmaile + wszelkie programy bezpieczeństwa: rspamd, Mailscanner, spamassasin oraz fetchmail razem z mechanizmami: DKIM, SPF, openDMARC i kluczami LetsEncrypt. Na poziomie dostępu klienckiego jest to dovecot z bardzo nowoczesnym mdbox (i ciekawostka: poczta działa na montowanym z Moosefs /usr/home z oddzielnym katalogiem szybkich lokalnych indeksów).

Schemat poczty zjk.pl

Opis klastra WWW:
Podaję opis przepływu danych:
a. dane przychodzą na OPNsense,
b. stamtąd HAproxy kieruje je metodą Round-Robin ze sticky connections do
c. 4 serwerów www (sprawdzając, który aktualnie jest dostępny),
d. 4 serwery korzystają z katalogów udostępnionych na MooseFS (1 serwer jeden katalog )
e. lub (tryb testowy/rezerwowy) 4 SeaweedFS (tam podobnie: 1 katalog 1 filler),
f. cache - lokalne przy każdym serwerze: opcache i moduł apache memory/diskcache,
g. oraz redis - redis jest skomplikowany, to jest 6 maszyn z jedną wybraną na master przez 6 sentineli - synchronizacja działania odbywa się przez HAproxy na OPNsense i z wybranego mastera korzystają serwery www,
h. OPNsense dodaje protokół HTTP/3 (w testach) na swoim wyjściu na protokole UDP,
i. wyjaśnienie - katalogi zarówno MooseFS jak SeaweedFS - to tak naprawdę jeden katalog MooseFS montowany na każdym serwerze www i podobnie SeaweedFS - katalog jest jeden, ale są 4 oddzielne cache przechowujące kopie tego katalogu na każdym komputerze oddzielnie.

Klaster www z redis cache zjk.pl

Opis DNS:
a. DNS zewnętrzny: 3 dostawców home.pl seohost.pl porkbun.com - wpisy nie tylko standard, ale SPF, DKIM, DMARC itp - dla kilku domen obsługiwanych przez serwery zjk.pl,
b. DNS wewnętrzny BIND9: 4 maszyny: jedna master + 3 slave, opisujące pełny schemat wewnętrznej struktury serwerowni zjk.pl.

DNS w zjk.pl

  1. Warstwa storage i danych (Storage & Data Layer) - przechowywanie danych i backend

  • ZFS + RAID ZFS,
  • MooseFS,
  • SeaweedFS,
  • PostgreSQL cluster,
  • MySQL cluster,
  • backup,
  • repliki danych,
  • object storage,
  • snapshoty i backup,

Opis ZFS:
System plików obecny głównie na dyskach magazynach danych (czyli MooseFS korzysta z dysków ZFS, także wszystkie dyski archiwów, backupu), w jeden pool typu raidz2-0 – odpowiednik RAID 6 (toleruje awarię 2 dysków).
Dyski systemowe z drobnymi wyjątkami (na ZFS) to UFS2.

ZFS w zjk.pl

Opis klastra Moosefs:
a. 1 master - to wersja Community Edition,
b. ale 2 serwery mogą przejąc skryptem rolę mastera,
c. 12 chunkserwerów,
d. ok. 30 punktów montowania, w tym warto zaznaczyć - montowanie dla serwerów katalogu /usr/home (co jest dosyć trudną sprawą do utrzymania), a punkty montowania to FreeBSD i Windows,
e. warto podkreślić, że istnieją klasy dysków HDD i SDD (potrójne) oraz specjalna klasa dla 4 dysków, które służą jako lokalne maszyny dostarczające pliki dla 4 serwerów www (dość unikatowe).

MooseFS w zjk.pl

Opis klastra Seaweed:
a. 3 mastery,
b. 7 fillerów,
c. synchronizowane na 4 różnych portach oddzielnie w HAproxy w OPNsense,
d. 4 filery pracują na katalogi www, pozostałe to punkty montowania z 2 i 3 krotnością, ale oddzielnie dla szybkich SSD i zwykłych HDD - uwaga - 3 główne fillery maja po dwa dyski HDD i SSD, filery www maja dyski SSD, w sumie jest zatem 10 dysków,
e. SeaweedFS trzyma metadane w PostgreSQL - 3 oddzielne serwery, które pracują w trybie Hot Redundancy, jeden wybrany na mastera - wybór oraz transmisja danych bazy metadane odbywa się przez HAproxy, które pracuje na OPNsense.

SeaweedFS w zjk.pl

Opis baz danych:
a. PostgreSQL w trybie Hot Redundancy: 3 serwery z czego jeden wybrany na master, jego wybór odbywa się poprzez HAproxy na OPNsense - z dostępem do bazy danych przez wspólny port na OPNsense - ta baza danych przechowuje metadane SeaweedFS i m.in. dane z backupu Bareosa,
b. MySQL - 5 serwerów w trybie Cluster Replication, komunikują się z OPNsense do wyboru jednego mastera i jednocześnie na OPNsense jest udostępniony wspólny port dostępu do danych. MySQL to głównie bazy danych dla www,
c. uwaga - bazy danych są backupowane z pomocą systemowych narzędzi jako zrzuty z retencją min. 15 dni.

Bazy danych w zjk.pl

Opis backupu:
a. każdy z 8 serwerów ma dwa dyski: SSD główny i HDD z lokalnymi dumpami (robione moim własnym skryptem - miesięczne),
b. dane trafiają na wspólny dysk sieciowy (NFS nie MooseFS),
c. a z niego na dysk zewnętrzny archiwum,
d. backupy Bareosa (klasyka codzienne, tydzień i miesiąc) na oddzielnych dyskach NFS,
e. Urbackup - oddzielny dysk nfs
e. dyski MooseFS i SeaweedFS trafiają na wspomniany zewnętrzny dysk archiwum,
f. backupy /etc /usr/local/etc konfiguracji - etckeep (testowo).

Backup w zjk.pl

  1. Warstwa użytkowników i klientów (Client Layer) - kto korzysta z infrastruktury

  • komputery domowe,
  • laptopy,
  • urządzenia mobilne,
  • urządzenia IoT,
  • systemy testowe,
  • urządzenia sieciowe użytkowników,
  • stacje robocze.

  1. Warstwa systemów pomocniczych i operacyjnych (Operations Layer) - zwykle nie pokazują tego homelaby, jest w zjk.pl

  • monitoring,
  • alerting,
  • log aggregation,
  • backup orchestration,
  • automatyzacja,
  • skrypty HA,
  • synchronizacja konfiguracji,
  • dokumentacja infrastruktury.

  1. Warstwa zasilania i niezawodności (Power & Reliability Layer) - w zjk.pl zasługuje na własną warstwę

  • UPS #1,
  • UPS #2,
  • dystrybucja DC 12 V,
  • bufor akumulatorowy,
  • redundancja PSU,
  • monitoring zasilania,
  • OR-ing / Schottky,
  • failover energetyczny,

Opis warstwy zasilania:
a. dwa UPS Fideltronik KI PRO 2000,
b. ich wyjściu jest jeszcze podwójny przełącznik wykrywający zanik zasilania - czyli wybór linii zasilania jest kaskadowy, jeśli jeden UPS wyłączy się, przejmuje zasilanie drugi,
c. zasilanie trafia do dwóch linii - jedna jest główna do zasilacza 660 W 80Platinum - dającego główną linię zasilania 12 V do wszystkich serwerów,
d. serwery (wszystkie) mają na pokładzie zasilacze Picopsu (znajdź opis w Internecie),
e. drugi zasilacz mini-ITX 80Platinum generuje drugą linię zasilania 12 V ,
f. obie linie 12 V za pośrednictwem diod Schottkiego łączą się na linii zasilania serwerów i innych zasobów wrażliwych, jak OPNsense, switch, WiFi itp - żeby zasilanie do nich zawsze było dostępne,
g. trzeci zasilacz dużej mocy generuje 12 V, ale już tylko do komputerów użytkowych - aby były odseparowane .

Zasilanie w zjk,pl

  1. Podsumowanie: wyróżniające technologie i bezpieczeństwo
  • FreeBSD,
  • OPNsense,
  • HAProxy,
  • MooseFS,
  • SeaweedFS,
  • PostgreSQL HA,
  • Mysql Cluster,
  • Redis,
  • HTTP/2 oraz HTTP/3,
  • SPF / DKIM / DMARC,
  • monitoring bezpieczeństwa,
  • systematyczne aktualizacje.

Różne informacje o serwerach:

Usługi: http://www.zjk.pl/serwery/serwer_uslugi.html
Sprzęt: http://www.zjk.pl/serwery/serwer_sprzet.html
Oprogramowanie: http://www.zjk.pl/serwery/serwer_oprogramowanie.html
Aktualizacje: http://www.zjk.pl/serwery/serwer_aktualizacje.html
Technologie: http://www.zjk.pl/serwery/serwer_technologie.html
IPNsense: http://www.zjk.pl/serwery/serwer_ha_opnsense.html




Dawna nazwa "ciasteczkowy serwer" (nie mylić ze współczesnymi obudowami mini-ITX). Angielska nazwa subminiaturowych komputerów to "biscuit computer". Biscuit to po polsku herbatnik, sucharek (także ang. "rusk"). Jednocześnie można zauważyć, że "ciasteczko" to raczej angielskie "cookie". Jednak po polsku "herbatnikowy serwer" albo "sucharkowy serwer" brzmi tak sobie... Dlatego ostatecznie zostawiłem "ciasteczkowy serwer". Więcej o tych niezwykle małych. pobierających mało energii komputerkach w dziale "sprzęt". Zapraszam... UWAGA - dawne "ciasteczka" zostały zastąpione nowocześniejszymi konstrukcjami, ale również o bardzo niskim poborze mocy - opis także w dziale sprzęt.

Łącza internetowe

Infrastruktura wykorzystuje dwa niezależne łącza operatorów dla zwiększenia dostępności usług.

1. Aktualny dostawca Internetu - Vectra oddział Sieradz - łącze Vectra biznes
(od 18.VI.2021r.): 600/60 Mb/s (czyli 75 MB/s i 7,5 MB/s)
IP: 88.156.77.167 dawniej 232
2. Drugie łącze: Netia na BSA Orange, światłowód
(od 11.V.2021): 1000/300 Mb/s (czyli 125 MB/s i 37,5 MB/s) - promocja Netia
IP: 83.238.166.222

Serwer posiada rejestrację nazwy w NASK, aktualnie home.pl -
oficjalnie: zjk.pl

Welcome to our website

This is a modern language section designed specifically for high performance and strict SEO optimization. Web browsers render the layout seamlessly without being slowed down by external script execution.

Feel free to paste massive text blocks here. Search engine crawlers will process this entire language variant immediately, ensuring all your keywords are fully indexed without hidden obstacles.

Willkommen auf unserer Webseite

Dies ist ein moderner Sprachbereich, der speziell für hohe Leistung und SEO-Optimierung entwickelt wurde. Der Webbrowser rendert das Layout nahtlos, ohne durch die Ausführung externer Skripte verlangsamt zu werden.

Hier können Sie riesige Textmengen einfügen. Suchmaschinen-Crawler verarbeiten diesen gesamten Sprachbereich sofort und stellen sicher, dass alle Ihre Keywords ohne versteckte Hindernisse vollständig indexiert werden.



zjk.pl


Powrót na stronę główną - Informacje o stronie, prawa autorskie, legalność itd. tutaj
Informacje o przetwarzaniu i ochronie danych osobowych, kontakt i zapytania itd. tutaj
Prywatne serwery Zbigniewa Kuleszy zjk.pl. Aktualny dostawca Internetu - Vectra.pl, Wszelkie prawa zastrzeżone. Zespół redakcyjny zjk.pl: zjk7@wp.pl
W sprawie treści i działania strony oraz w sprawie funkcjonowania i udostępniania treści na serwerach zjk.pl - kontakt z administratorem: webmaster@zjk.pl lub zjk7@wp.pl

Valid HTML 4.01 TransitionalValid XHTML 1.0 TransitionalPoprawny CSS!Poprawny CSS!

Copyright (c): Zbigniew Kulesza, Sieradz 2002-2026