Резервна копија и њено враћање
Zammad у инсталацијама путем пакета долази са скриптама за израду и враћање резервних копија које можете користити.
WARNING
Ове скрипте не долазе са икаквом гаранцијом и можда неће функционисати у вашем конкретном случају употребе. То зависи од подешавања и врсте инсталације ваше инстанце.
Увек треба редовно да тестирате и проверавате функционалност! Ако функционалност или обим скрипте не одговара вашим случајевима, слободно их копирајте на независну локацију и прилагодите скрипте по потреби.
Постоје нека ограничења која треба да знате:
- Ове скрипте не функционишу у инсталацијама заснованим на контејнерима.
- Функционишу само за PostgreSQL инсталације.
- Резервна копија је увек потпуни испис (без инкременталне резервне копије).
- Делимична израда и враћање резервне копије (нпр. само одређени подаци као што су тикети, корисници) није могућа.
- Промена система базе података није могућа.
- Системска подешавања (као што су променљиве окружења) се не чувају у резервној копији.
- Враћање на старију верзију Zammad-а није могуће.
- Не враћајте датотеке резервних копија из прилагођених скрипти помоћу скрипти које обезбеђује Zammad. То може изазвати проблеме.
Основе
Скрипте се налазе у /opt/zammad/contrib/backup. Релевантне су следеће датотеке:
- Датотека подешавања резервне копије:
config.dist - Скрипта за израду резервне копије ваших података:
zammad_backup.sh - Скрипта за враћање ваших података:
zammad_restore.sh
Да бисте израдили резервну копију на основу подразумеваног подешавања, пратите кораке испод:
- Копирајте датотеку
config.distуconfig. - Промените подразумеване параметре у датотеци подешавања ако је потребно. За детаље погледајте Подешавање резервне копије.
- Први кораци са Zammad-ом
- Извршите
/opt/zammad/contrib/backup/zammad_backup.sh(као корисникrootилиzammad)
Подешавања
Детаље о параметрима подешавања са подразумеваним вредностима можете наћи испод.
BACKUP_DIR/var/tmp/zammad_backup- Локација на коју скрипта записује датотеке резервних копија. Директоријум ће бити креиран ако не постоји. Обезбедите довољно простора јер скрипта записује потпуне исписе.
HOLD_DAYS10Одредите колико дана скрипта за резервне копије треба да чува старе копије. Ова вредност садржи додатних 60 минута (нпр. 10 дана плус 1 сат) из безбедносних разлога. Старе резервне копије се уклањају пре израде нове.
Ејемплос:
1цонсерварá цопиас де сегуридад де лас úлтимас 25 хорас-1елиминарá тодас лас цопиас де сегуридад диспониблес (excepto ла нуева)
FULL_FS_DUMPyesyes: ла цопиа де сегуридад incluye тамбиéн лос арцхивос де ла аплицациóн.no: ла цопиа де сегуридад соло incluye датос дел усуарио.
Ен cualquier цасо, incluye ла басе де датос де Zammad y лос арцхивос адјунтос, си естос се алмаценарон ен ел система де арцхивос. Ен цасо де дуда, естаблéзцало ен но.
DEBUGnoЕстаблецер еста опциóн ен
yesмострарá менсајес де депурациóн úтилес.WARNING
¡Еста опциóн подрíа деволвер информациóн сенсибле а ла салида естáндар! Но утилице еста опциóн ен енторнос де продуцциóн о асегúресе де десацтиварла деспуéс де лас пруебас.
Рестаурар цопиас де сегуридад
Важне информације
Леа атентаменте ла сигуиенте информациóн антес де цомензар а рестаурар сус датос.
- Еста сецциóн но трата собре миграр де ун сервидор а отро. Пуеде енцонтрар инструцционес ал респецто ен ла пáгина Миграр Zammad.
- Еста гуíа асуме уна версиóн де Zammad цомплетаменте инсталада
- Тамбиéн асуме que рестаурарá Zammad ен ел мисмо сервидор y ла мисма версиóн де Zammad
- Ел процесо де рестаурациóн детиене y реинициа Zammad. Пор ло танто, дебе ејецутар ел сцрипт де рестаурациóн цон лос пермисос адецуадос (пор ејемпло, цомо роот).
- ¡Лас инсталационес басадас ен PostgreSQL елиминарáн y волверáн а цреар ла басе де датос!
- Се requiere ал менос ел добле дел тамаñо де ла инстанциа де Zammad респалдада ен алмаценамиенто либре. Си соло тиене ел волцадо, ун фацтор де 3 подрíа сер ун буен нúмеро.
TIP
Си су есценарио ес диференте ал десцрито антериорменте, цонсулте ла Zammad Community о цонсидере лас опционес де сопорте де паго.
Цопиар арцхивос де цопиа де сегуридад а уна убицациóн адецуада
Асегúресе де que ел усуарио que утилиза пара ла рестаурациóн тенга пермисо пара леер лос арцхивос де цопиа де сегуридад y есцрибир ен /opt/zammad/.
Ла цопиа де сегуридад де Zammad цонста де дос арцхивос. Се номбран де ла сигуиенте манера:
plain
<timestamp>_zammad_db.psql.gz
<timestamp>_zammad_files.tar.gzТамбиéн hay дос енлацес симбóлицос ен су дирецторио де цопиа де сегуридад que апунтан а ла úлтима цопиа цреада:
plain
latest_zammad_db.psql.gz
latest_zammad_files.tar.gzЦóпиелос а уна убицациóн адецуада аццесибле пара ел усуарио que ејецута ел сцрипт де рестаурациóн.
Цонфигурар сцрипт де цопиа де сегуридад
Пара уна нуева инсталациóн, есто ес облигаторио. Ал менос дебе пропорционар ун дирецторио донде се алмаценен сус цопиас де сегуридад. Цонсулте Цонфигурациóн де цопиа де сегуридад пара мáс информациóн.
Лимпиар ла царпета де алмаценамиенто
Ен цасо де рестаурар ен ун енторно де продуцциóн цон алмаценамиенто ен система де арцхивос ацтивадо, дебе пургар ел цонтенидо дел дирецторио /opt/zammad/storage/ дентро дел волумен. Ел процесо де рестаурациóн соло агрега/собресцрибе арцхивос аллí, но се реализарá нингуна лимпиеза.
Резервна копија и њено враћање
Тенга ен цуента que рестаурар цопиас де сегуридад пуеде собресцрибир су database.yml. Пуеде верифицарло ревисандо ел арцхиво [...]_zammad_files.tar.gz. Си existe ун database.yml ен ел дирецторио цонфиг > датабасе, асегúресе де гуардар ла версиóн оригинал антес де рестаурар.
Ла рестаурациóн фунциона де дос формас посиблес, депендиендо де qué тан интерацтиво десеа сер:
Ејецуте ел сцрипт:
sh
/opt/zammad/contrib/backup/zammad_restore.shПропорционе ла информациóн солицитада ал сцрипт y еспере а que ел процесо де рестаурациóн тéрмине. Депендиендо дел тамаñо де су цопиа де сегуридад y ел рендимиенто дел сервидор, есто подрíа тардар ун тиемпо.
Ел ресултадо деберíа версе асí:
# Zammad restore started - Fri Jan 21 17:54:13 CET 2022!
The restore will delete your current database!
Be sure to have a backup available!
Please ensure to have twice the storage of the uncompressed backup size!
Note that the restoration USUALLY requires root permissions as services are stopped!
Enter 'yes' if you want to proceed!
Restore?: yes
Enter file date to restore:
20220120124714
20220121175344
File date: 20220121175344
Enter db date to restore:
20220120124714
20220121175344
DB date: 20220121175344
# Stopping Zammad
# Checking requirements
# ... Dropping current database zammad
Dropped database 'zammad'
# ... Creating database zammad for owner zammad
CREATE DATABASE
# Restoring PostgreSQL DB
# Restoring Files
# Ensuring correct file permissions ...
# Clearing Cache ...
# Starting Zammad
# Zammad restored successfully - Fri Jan 21 17:54:34 CET 2022!Додатни кораци
- Си цонфигурó алгúн ајусте де енторно, аплíquelos нуеваменте ахора.
- Си аúн но ло ха хецхо, инстале Elasticsearch ахора.
- Цонецте Elasticsearch цон Zammad y reconstruya су íндице де бúsqueda. Ла рецонструцциóн пуеде ејецутарсе цон сегуридад миентрас трабаја, перо цаусарá ун рендимиенто де бúsqueda деградадо y подрíа генерар датос но енцонтрадос темпоралменте.
Резервна копија и њено враћање
Пуеде енцонтрар алгунос проблемас цомунес а цонтинуациóн. Си су проблема но естá листадо, цонсулте ла Zammad Community пара обтенер асистенциа тéцница.
Цóдигос де салида
Нуестрос сцриптс де цопиа де сегуридад y рестаурациóн виенен цон цóдигос де салида пара ayudarle а енцонтрар уна солуциóн. Син ембарго, но гарантизамос ун манејо де еррорес цомплето.
Адемáс де лос цóдигос де салида, тамбиéн се девуелвен менсајес де еррор а ла салида естáндар.
| Цóдиго | Десцрипциóн / Ситуациóн |
|---|---|
0 | Ел сцрипт финализó цоррецтаменте (о ел еррор но се манеја). |
1 | Ес ун еррор генерал. Се уса цон mayor фрецуенциа пара абортос дел сцрипт дебидо а информациóн инцоррецта пропорционада о информациóн фалтанте. |
2 | Хубо ун еррор ал манејар ла басе де датос. Есто суеле оцуррир си су сервидор де басе де датос но цумпле цон лос requisitos дел сцрипт, лос датос де иницио де сесиóн сон инвáлидос о hay волцадос де басе де датос "ротос‟". |
3 | Хубо проблемас цон лос пермисос де арцхивос / царпетас. |
Проблемас цомунес
Еррор де аутентицациóн пор цонтрасеñа / Еррор де аутентицациóн пеер
Есто индица que ла цонтрасеñа дел усуарио де су БД де Zammad ес диференте а ла де су database.yml о que се естá цонтацтандо ал сервидор де басе де датос инцоррецто.
Си су инстанциа де Zammad естá ен ејецуциóн, пуеде деберсе а ун ретроцесо а ла conexióн пор соцкет, мотиво пор ел цуал но се дио цуента.
¿Qué хацер?
Асегúресе де que лас цреденциалес дел усуарио пропорционадас сеан цоррецтас. Тамбиéн пуеде цонсидерар усар ел сцрипт reset_db_password, que енцонтрарá ен ел дирецторио де цопиа де сегуридад.
Еррор де аутентицациóн Ident пара ел усуарио
Есто индица que су сервидор де басе де датос requiere аутентицациóн ident. Есе мéтодо де аутентицациóн но естá сопортадо пор нуестрос сцриптс.
¿Qué хацер?
Verifique ел pg_hba.conf де су сервидор PostgreSQL y ајúстело си ес нецесарио.
Пор ло генерал, ла аутентицациóн се пуеде пермитир де ла сигуиенте манера:
sh
# ОВО ЈЕ ПРИМЕР И МОЖДА НЕ ЋЕ ПАСТИ У ВАШЕ ОКРУЖЕЊЕ
host all all 127.0.0.1/32 md5
host all all ::1/128 md5Молимо вас да се за ово обратите званичној документацији PostgreSQL-a, јер ово није у оквиру наше документације.
УПОЗОРЕЊЕ: Изгледа да немате никакве прилоге у фајл систему
Ово указује на то да ваша инстанца тренутно не чува прилоге на фајл систем.
Ово упозорење ће бити приказано једном пре креирања празног директоријума да би процес бекапа успешно наставио.
Проверите и прилагодите своје подешавања складиштења преко конзоле или у административном интерфејсу Zammad-а под Подешавања > Систем > Складиште.
Помоћни скрипт
Упозорење
Скрипт може потенцијално бити деструктиван! Никада не смеете покретати скрипте чије опсеге не разумете.
Имајте на уму да покрећете ове скрипте на своју одговорност.
Помоћни алат за базу података: Постави/Ресетуј лозинку
Ограничења
- Овај скрипт ради само за PostgreSQL инсталације.
- Подржани су само локални сервери базе података (скрипт мења корисника).
- Овај скрипт захтева да се покрене као
rootили сличан привилеговани корисник. - Имајте на уму да ће скрипт аутоматски зауставити и покренути Zammad!
Опсези
Опсег овог скрипта је углавном инсталација пакета и посебно CentOS и SUSE оперативни системи. Може радити и на инсталацијама из изворног кода / развоју, али то веома зависи од вашег окружења и није у опсегу.
Функционалност
Скрипт ће аутоматски извршити следеће радње за вас, у зависности од ситуације. Захтеваће вашу потврду пре извршавања радњи.
- Ако
database.ymlсадржи празну лозинку, нова лозинка ће бити генерисана и постављена за корисника базе података Zammad-а. Такође ће бити сачувана у конфигурационом фајлу. - Ако
database.ymlсадржи лозинку, она ће бити коришћена за постављање лозинке корисника базе података Zammad-а.
Употреба
Покрените скрипт командом испод и пратите упутства. Није потребна специфична конфигурација.
sh
/opt/zammad/contrib/backup/zammad_db_user_helper.shУ случају грешака, скрипт ће покушати да врати Zammad у рад пре изласка.