Сақтық көшірмелер және апаттан қалпына келтіру
AiHummer күйі шағын әрі нақты анықталған, бұл сақтық көшірмелерді қарапайым етеді — тек мастер-кілт дерекқорда сақталмайтынын және оны бөлек қорғау керектігін есте сақтасаңыз болғаны. Бұл бетте нені, қалай сақтық көшірмелеу және қалай қалпына келтіру қарастырылады.
Нені сақтық көшірмелеу керек
Қорғауды қажет ететін үш тәуелсіз нәрсе бар:
| Не | Қайда | Неліктен |
|---|---|---|
| Дерекқор | PostgreSQL | Ақиқат көзі — агенттер, әңгімелер, жады, баптаулар, шифрланған құпиялар |
| Blob-тар | AIHUMMER_BLOB_DIR |
Дерекқорда сілтенетін медиа мен файл тіркемелері |
| Мастер-кілт | AIHUMMER_MASTER_KEY |
Қоймаcaны (vault) шифрсыздандырады; ешқашан дерекқорда сақталмайды |
[!DANGER]
AIHUMMER_MASTER_KEY-ді бөлек сақтық көшірмелеп, оны дерекқор дампынан басқа жерде сақтаңыз. Қойма осы кілтпен конверттік шифрленген — мастер-кілтті жоғалтсаңыз, мінсіз дерекқор сақтық көшірмесі болса да шифрланған құпиялар қалпына келмейді.
Ақиқат көзі — PostgreSQL
Дерекқорды беделді ретінде қарастырыңыз. Ұсынылатын негіз — күнделікті
pg_dump плюс уақыттың кез келген сәтіне қалпына келтіруге (PITR) арналған
WAL-архивтеу, осылайша дамптар арасындағы кез келген сәтке алға айналдыра
аласыз.
# Daily logical dump
pg_dump "$AIHUMMER_DATABASE_URL" --format=custom --file=aihummer-$(date +%F).dump
Снэпшоттар арасында ұсақ түйірлі қалпына келтіру үшін дамптарды үздіксіз WAL-архивтеумен (PITR) біріктіріңіз.
Blob-тарды сақтық көшірмелеу
Медиа мен файл тіркемелері AIHUMMER_BLOB_DIR астында орналасады. Қалпына
келтірілген әңгімелер өз тіркемелерін әлі де таба алуы үшін осы каталогты
дерекқормен бірге сақтық көшірмелеңіз. Егер AIHUMMER_BLOB_DIR бапталмаса,
медиа/файл қызметі белсенді емес және қосымша көшіретін ештеңе жоқ.
aihummer backup және restore командалары
CLI бұл рәсімді екі командаға топтайды:
aihummer backup [dir] # write a backup into [dir]
aihummer restore <file> # restore from a backup file
Оларды кәдімгі операциялық сақтық көшірмелер мен қалпына келтірулер үшін қолданыңыз. Қатысты командаларды CLI анықтамасынан қараңыз.
[!WARNING] Тек дерекқорды қалпына келтіру толық қалпына келтіру емес. Blob каталогын да қалпына келтіріңіз және мақсатты хостта дәл сол
AIHUMMER_MASTER_KEYбар екеніне көз жеткізіңіз — әйтпесе қойманы шифрсыздандыру мүмкін емес.
Апаттан қалпына келтіру
Хостты толық жоғалту сценарийі үшін апаттан қалпына келтіру нұсқаулығын
(docs/runbooks/disaster-recovery.md) орындаңыз. Қалпына келтіру реті:
- Хост бөліп, дәл сол AiHummer нұсқасын орнатыңыз.
- Мастер-кілтті
AIHUMMER_MASTER_KEY-ге қалпына келтіріңіз. - Дерекқорды қалпына келтіріңіз (соңғы дамп, содан кейін қолданылса WAL/PITR арқылы алға айналдырыңыз).
- Blob каталогын
AIHUMMER_BLOB_DIRмекенжайында қалпына келтіріңіз. - Қызметтерді іске қосыңыз (
aihummer up) және/readyzпенdeploy/host/smoke.shарқылы тексеріңіз.
[!TIP] Сондай-ақ
AIHUMMER_MEDIA_TOKEN_SECRET-ті мастер-кілтіңізбен бірге сақтаңыз. Ол қол қойылған медиа жүктеу URL-дарын қайта іске қосулар мен қайта құрастырулар арасында жарамды күйде сақтайды.
Әрі қарай қайда
- Қалпына келтіруді тексеру үшін қолданылатын зондтар мен smoke-тест: systemd және денсаулық тексерулері.
- Жаңарту кезіндегі нұсқалау мен миграциялар: Жаңарту саясаты.