Камдык көчүрмөлөр жана кырсыктан калыбына келтирүү
AiHummer’дин абалы кичинекей жана так аныкталган, бул камдык көчүрмөлөрдү жөнөкөй кылат — мастер-ачкыч маалымат базасында эмес экенин жана өзүнчө корголушу керектигин эстен чыгарбасаңыз. Бул барак эмнени, кантип камдоо керектигин жана кантип калыбына келтирүүнү камтыйт.
Эмнени камдоо керек
Коргоо керек болгон үч көз карандысыз нерсе бар:
| Эмне | Кайда | Эмне үчүн |
|---|---|---|
| Маалымат базасы | PostgreSQL | Чындыктын булагы — агенттер, маектер, эс тутум, жөндөөлөр, шифрленген сырлар |
| Blob’дор | AIHUMMER_BLOB_DIR |
Маалымат базасы шилтеме кылган медиа жана файл тиркемелери |
| Мастер-ачкыч | AIHUMMER_MASTER_KEY |
Сейфти чечмелейт; эч качан маалымат базасында сакталбайт |
[!DANGER]
AIHUMMER_MASTER_KEYачкычын өзүнчө камдаңыз жана аны маалымат базасынын дамп файлынан башка жерде сактаңыз. Сейф ушул ачкыч астында конверт-шифрлениши бар — мастер-ачкычты жоготсоңуз, шифрленген сырларды калыбына келтирүү мүмкүн эмес, идеалдуу маалымат базасынын камдыгы болсо да.
PostgreSQL — чындыктын булагы
Маалымат базасын авторитеттүү катары кароңуз. Сунушталган негиз — күн сайын
pg_dump плюс дамптардын ортосунда каалаган учурга чейин жылдыруу үчүн WAL
архивдөө (point-in-time recovery, PITR).
# 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 жана ден соолук текшерүүлөрү.
- Жаңыртуу учурундагы версиялоо жана миграциялар: Жаңыртуу саясаты.