Захираҳо ва барқарорсозӣ пас аз офат
Ҳолати AiHummer хурд ва хуб муайяншуда аст, ки захиракуниро осон мегардонад — ба шарте ки шумо дар хотир доред, ки калиди асосӣ дар пойгоҳи додаҳо нест ва бояд ба таври мустақил муҳофизат карда шавад. Ин саҳифа фаро мегирад, ки чиро захира бояд кард, чӣ тавр ва чӣ гуна барқарор бояд кард.
Чиро захира бояд кард
Се чизи мустақил барои муҳофизат вуҷуд дорад:
| Чӣ | Куҷо | Чаро |
|---|---|---|
| Пойгоҳи додаҳо | PostgreSQL | Манбаи ҳақиқат — агентҳо, сӯҳбатҳо, хотира, танзимот, махфиятҳои рамзгузоришуда |
| Blob-ҳо | AIHUMMER_BLOB_DIR |
Медиа ва замимаҳои файлӣ, ки аз пойгоҳи додаҳо истинод мешаванд |
| Калиди асосӣ | AIHUMMER_MASTER_KEY |
Ҳазинаро (vault) рамзкушоӣ мекунад; ҳаргиз дар пойгоҳи додаҳо нигоҳ дошта намешавад |
[!DANGER]
AIHUMMER_MASTER_KEY-ро алоҳида захира кунед ва онро дар ҷое ғайр аз dump-и пойгоҳи додаҳо нигоҳ доред. Ҳазина бо ин калид рамзгузории лифофавӣ (envelope-encrypted) шудааст — калиди асосиро гум кунед ва махфиятҳои рамзгузоришуда барқарорнашаванда мешаванд, ҳатто бо як захираи комили пойгоҳи додаҳо.
PostgreSQL манбаи ҳақиқат аст
Пойгоҳи додаҳоро ҳамчун манбаи салоҳиятдор муносибат кунед. Заминаи тавсияшуда як pg_dump-и
ҳаррӯза ва ҳамзамон архивкунии WAL барои барқарорсозии ба нуқтаи муайяни вақт (PITR) аст, то шумо тавонед
ба ҳар лаҳзаи байни dump-ҳо пеш ҳаракат кунед.
# Daily logical dump
pg_dump "$AIHUMMER_DATABASE_URL" --format=custom --file=aihummer-$(date +%F).dump
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дар мизбони ҳадаф мавҷуд аст — вагарна ҳазина (vault) рамзкушоӣ карда намешавад.
Барқарорсозӣ пас аз офат
Барои сенарияи гумшавии пурраи мизбон, ба дастурамали барқарорсозӣ пас аз офат
(docs/runbooks/disaster-recovery.md) пайравӣ кунед. Тартиби барқарорсозӣ ин аст:
- Як мизбонро таъмин кунед ва ҳамон версияи AiHummer-ро насб кунед.
- Калиди асосиро ба
AIHUMMER_MASTER_KEYбарқарор кунед. - Пойгоҳи додаҳоро барқарор кунед (dump-и охирин, сипас тавассути WAL/PITR пеш ҳаракат кунед, агар истифода шуда бошад).
- Феҳристи blob-ро дар
AIHUMMER_BLOB_DIRбарқарор кунед. - Хидматҳоро ба кор андозед (
aihummer up) ва бо/readyzваdeploy/host/smoke.shтафтиш кунед.
[!TIP] Инчунин
AIHUMMER_MEDIA_TOKEN_SECRET-ро бо калиди асосии худ нигоҳ доред. Он URL-ҳои боргирии медиаи имзошударо дар тӯли бозоғозкуниҳо ва азнавсозиҳо боэътибор нигоҳ медорад.
Минбаъд ба куҷо
- Зондҳо ва санҷиши smoke, ки барои тафтиши барқарорсозӣ истифода мешаванд: systemd ва санҷишҳои саломатӣ.
- Версиябандӣ ва миграцияҳо ҳангоми навсозӣ: Сиёсати навсозӣ.