Varmuuskopiointi (Non-IaC)¶
Operatiivinen Data (Backup-strategia)¶
Tämä dokumentti kuvaa RepoStage-infrastruktuurin varmistuslogiikan, automaatiosyklin ja redundanssitasot. Järjestelmä noudattaa 3-2-1-varmuuskopiointiperiaatetta, jossa data on tallennettu vähintään kolmeen paikkaan, kahdelle eri medialle ja yksi kopio on fyysisesti tai loogisesti erillään.
Kokonaisuutta ohjaa ajatus siitä, että varmuuskopiointiteknologioiden periaatteet voidaan toteuttaa tehokkaasti myös henkilökohtaisilla resursseilla.
Arkkitehtuuri ja Datan kulku¶
graph TD
%% SOURCE NODES
subgraph SOURCES ["Datalähteet (Kuumat)"]
HP1[("HP-1: Tuotantodata (SQL & Vektorit)")]
F_CODE["F: Codes (Projektit)"]
D_DATA["D: Data (Yksityinen)"]
VS_CONFIG["VS Code (Asetukset, liitännäiset)"]
end
%% CLOUD SYNC
subgraph CLOUD ["PILVI"]
GITLAB[("GitLab Cloud")]
end
%% AUTOMATION
subgraph CONTROL ["Automaation ohjaus"]
HP2["HP-2 (Gateway)"]
CRON["Cron-työ klo 03:00"]
end
%% COLD STORAGE SYSTEM
subgraph COLD_STORAGE ["On-Demand Cold Storage"]
NAS_INT[("Laptop SSD: 500 Gt")]
USB[("Ulkoinen USB: 1 Tt")]
end
%% FLOWS
VS_CONFIG -->|1. Git Push| GITLAB
F_CODE -->|1. Git Push| GITLAB
CRON --> HP2
HP2 -->|2. Wake-on-LAN| NAS_INT
HP1 -->|3. rsync snapshot| NAS_INT
F_CODE -->|4. rsync| NAS_INT
D_DATA -->|4. rsync| NAS_INT
NAS_INT -->|5. Archiving| USB
NAS_INT -->|6. Shutdown| HP2
%% STYLES
style COLD_STORAGE fill:#f1f8e9,stroke:#2e7d32,stroke-width:2px
style CLOUD fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
style VS_CONFIG fill:#e1f5fe,stroke:#0288d1,stroke-dasharray: 5 5 Toteutus: NAS¶
Varmistuspalvelimena toimii Ubuntu Serverillä varustettu kannettava tietokone. Laitteen kansikytkin on deaktivoitu (HandleLidSwitch=ignore), mikä mahdollistaa operoinnin kansi suljettuna.
Tallennusmediat:
-
Sisäinen 500 Gt SSD: Isäntäkäyttöjärjestelmä ja uusimmat snapshot-varmistukset nopeaa palautusta varten.
-
Ulkoinen 1 Tt USB-kovalevy: Pitkäaikaisarkisto ja historialliset tiedostoversiot.
Hyödyt: Kannettavan integroitu akku toimii luontaisena UPS-laitteena sähkökatkoja vastaan, ja laitteiston sähkönkulutus on erittäin matala.
Automaatio ja Sykli¶
Varmistusprosessi on täysin automatisoitu ja toimii tarvepohjaisesti (On-Demand). Tämä minimoi sähkönkulutuksen ja laitteiston kulumisen.
- Herätys: HP-2 (Gateway) lähettää Laptop-NAS:lle Wake-on-LAN-herätteen yöllä määritettynä ajankohtana.
- Siirto: Tiedonsiirtoon käytetään
rsync-snapshot-logiikkaa. Vain muuttuneet tiedostot siirretään, mikä minimoi verkkokuorman ja ajan. VS Coden kehitysympäristöasetukset (.vscode/) synkronoidaan koodin mukana GitLab-pilveen. - Sammutus: Kun siirrot on vahvistettu onnistuneiksi, läppäri sammutetaan etänä. Aktiivinen operatiivinen aika on tyypillisesti vain noin 15 minuuttia vuorokaudessa.
Redundanssi ja Suojaustasot¶
Järjestelmä noudattaa kerrostettua suojausta varmistaakseen datan saatavuuden kaikissa skenaarioissa:
| Taso | Sijainti | Media | Sisältö |
|---|---|---|---|
| L1 | Paikallinen | HP-1 & Asus Host | Operatiivinen data ja työversiot. |
| L2 | Lähellä | Laptop-NAS (SSD + 1 Tt USB) | Päivittäiset snapshotit ja historiallinen arkisto. |
| L3 | Etä / Offline | GitLab Cloud & Air-gapped levyt | IaC-konfiguraatiot, koodi ja kriittiset "pakasteet". |
Palautustestaus (Restore Drill)¶
Datan eheys ja IaC-prosessin toimivuus varmistetaan neljännesvuosittaisella palautustestillä DEV-ympäristöön:
- Simulaatio: Simuloidaan isäntäkoneen täydellinen tuho tai tiedostojärjestelmän korruptoituminen.
- Palautus: Pystytetään kehitysympäristö pelkkien L2- ja L3-varmuuskopioiden avulla.
- Vahvistus: Varmistetaan, että automaatio (Ansible/Docker) pystyy konfiguroimaan ympäristön takaisin operatiiviseen tilaan ilman manuaalisia korjauksia.
Yhteenveto¶
Kokonaisuutta ohjaa ajatus siitä, että varmuuskopiointiteknologioiden periaatteet voidaan toteuttaa tehokkaasti myös henkilökohtaisilla resursseilla.