Pi-hole synkronointi (Nebula Sync) – tekninen projektikuvaus

Yleiskuva ja tavoite

Tässä projektissa rakennetaan kahden Pi-hole-instanssin välinen synkronointi, jotta kotiverkon primääri-Pi-hole (LAN) ja VPS:llä ajettava varainstanssi pysyvät yhtenäisinä ilman käsityötä.

Valittu ratkaisu

Synkronointiin käytetään Nebula Sync -työkalua, joka hakee ja päivittää Pi-hole v6 -instanssin asetuksia API:n kautta. Synkronointi ajetaan ajastetusti (cron) ja konfiguroidaan ympäristömuuttujilla (.env), jotta salaisuuksia ei tarvitse kirjoittaa koodiin.

Arkkitehtuuri (käytännön malli)

Käytännössä tämä on tarkoituksella “yksi johtaja, yksi seuraaja” -malli: asiakkaat käyttävät vain LAN-DNS:ää, mutta varakone on valmiiksi synkattu siltä varalta, että LAN-ympäristössä tapahtuu jotain yllättävää (ihmisten suosikki harrastus).

Synkattavat kohteet

Synkronoinnissa kannattaa rajata mukaan vain ne osa-alueet, jotka aidosti halutaan identtisiksi. Tyypillisesti mukaan otetaan:

Sen sijaan esimerkiksi loki- ja query-data pidetään instanssikohtaisena (eli niitä ei yritetä synkata), koska se on sekä turhaa että sotkevaa.

Turvallisuus ja rajaukset

Ajastus ja valvonta

Synkronointi ajetaan tyypillisesti cronilla esimerkiksi 1–4 kertaa vuorokaudessa tai aina blocklist-päivityksen jälkeen. Järkevä toteutus sisältää myös:

Testaus (miten varmistetaan että tämä toimii)

Nykytila ja seuraavat askeleet