public-wiki/technikzeugs/update-zammad.md
2023-02-08 20:57:36 +01:00

2.2 KiB

Updating Debian on zammad vm

As always, debian needs updates from time to time. Here i wrote down the last update procedure, to guide everyone else who follows this path, since our email setup is sadly very important to us.

disable mail

Disable Email in the Zammad webinterface to make zammad unable to recieve mails until it is proven to work fine. Otherwise we could loose emails, when we are forced to migrate back

Clone vm

Log in into the vm server (sol). Check if there is enough free space df -h

Stop the vm. At our setup this is done via

systemctl stop vm@zammad

Copy the virtual-disk:

cp /var/lib/vm/zammad /var/lib/vm/zammad-backup-before-update

Start zammad again

systemctl start vm@zammad

Update Debian, Zammad and elasticsearch

Log in into zammad vm. Do a full systemupdate. reboot

Change /etc/apt/sources.list and /etc/apt/sources.list.d: Disable all external package repos Exchange buster against bullseys ( in vim with %s/buster/bullseye/g

Stop postgres: systemctl stop postgresql

update package lists and do full-upgrade

apt update
apt full-upgrade

reboot

Update Zammad and elasticsearch

Reanable sources.list.d and use the correct repo for your debian version

Follow these instructions for elasic search https://docs.zammad.org/en/latest/install/elasticsearch.html

apt update && apt upgrade to update elastic search

change permissions for /etc/default/elasticsearch

chmod elasticsearch:elasticsearch /etc/default/elasticsearch

update the ingest-attachment plugin

/usr/share/elasticsearch/bin/elasticsearch-plugin remove ingest-attachment
/usr/share/elasticsearch/bin/elasticsearch-plugin install ingest-attachment

add a systemd-drop in to increase elasticsearch timout to make starting possible

mkdir /etc/systemd/system/elasticsearch.service.d
echo -e "[Service]\nTimeoutStartSec=180" | tee /etc/systemd/system/elasticsearch.service.d/startup-timeout.conf

And see, that elastic search 7.x doesn not like your indices from 5.6

Disable elasticsearch alltogether

systemctl stop elasticsearch
systemctl disable elasticsearch

go to rubyconsole with zammad run rails c

Setting.set('es_url', '')