Zammad ticketing/helpdesk on Nethserver available

…and now error 503 after a reboot…

Damnit, I am afraid of bringing zammad live in our business workflow…

It seems Zammad is not started for some reason so the reverse proxy gives a 503. Does a restart help?

To check service status:

systemctl status zammad -l

Or is it about elasticsearch?

systemctl status elasticsearch -l

Please check /var/log/messages too.

EDIT:

You may check web server logs /var/log/httpd/*:

Could it be about too less RAM?

Both of them are up and running, also on the Services tab everything else looks ok too.

I have tried a quick yum reinstall zammad and signal-event nethserver-zammad-update but no luck yet.

The /var/log/message shows that zammad is working in the background as usual.

/var/log/httpd/error_log:

[Mon Apr 20 14:15:55.895821 2020] [proxy:error] [pid 22186] (111)Connection refused: AH00957: HTTP: attempt to connect to 127.0.0.1:3001 (127.0.0.1) failed
[Mon Apr 20 14:15:55.895953 2020] [proxy:error] [pid 22186] AH00959: ap_proxy_connect_backend disabling worker for (127.0.0.1) for 60s
[Mon Apr 20 14:15:55.895990 2020] [proxy_http:error] [pid 22186] [client xxx:61416] AH01114: HTTP: failed to make connection to backend: 127.0.0.1

I think this is something with the webserver.

I will restart the whole server again after working hours and I will try to debug…

RAM: 5/10 GB used (should be a little bit higher IMHO but could be within the tolerance).

Edit:

Yeah, it is the web service of zammad:

systemctl status zammad-web-1
● zammad-web-1.service
   Loaded: loaded (/etc/systemd/system/zammad-web-1.service; enabled; vendor preset: disabled)
   Active: failed (Result: start-limit) since Mon 2020-04-20 13:36:39 CEST; 43min ago
  Process: 20669 ExecStart=/usr/bin/zammad run web (code=exited, status=1/FAILURE)
 Main PID: 20669 (code=exited, status=1/FAILURE)

Apr 20 13:36:39 xyz zammad-web-1.service[20669]: Exiting
Apr 20 13:36:39 xyz systemd[1]: zammad-web-1.service: main process exited, code=exited, status=1/FAILURE
Apr 20 13:36:39 xyz systemd[1]: Unit zammad-web-1.service entered failed state.
Apr 20 13:36:39 xyz systemd[1]: zammad-web-1.service failed.
Apr 20 13:36:39 xyz systemd[1]: zammad-web-1.service holdoff time over, scheduling restart.
Apr 20 13:36:39 xyz systemd[1]: Stopped zammad-web-1.service.
Apr 20 13:36:39 xyz systemd[1]: start request repeated too quickly for zammad-web-1.service
Apr 20 13:36:39 xyz systemd[1]: Failed to start zammad-web-1.service.
Apr 20 13:36:39 xyz systemd[1]: Unit zammad-web-1.service entered failed state.
Apr 20 13:36:39 xyz systemd[1]: zammad-web-1.service failed.
1 Like

…and it works after reboothing the whole server :thinking:

Hi all,

I made a terrible error with the restoration of Zammad to another server. I didn’t checked all the users and maily the email notification. Shame on me!

Did someone ever tried to restore a Zammad backup to another server using /opt/zammad/contrib/backup/zammad_restore.sh ?

Michel-André

@mrmarkuz a little question…
New setup. Current NethServer hostname is “someserver.somedomain.local”.
New installation of Zammad, virtualhost is “helpdesk.public.ext”. It’s an internal portal but i want to build it in the right way.
So…

Where in earth i should see this virtualhost? Only fetching the prop?
The virtualhost package is still not installed on the server… But if is needed for view that info on cockpit, maybe should be installed automatically with nethserver-zammad… am i wrong?

For now it needs to be set and shown in terminal. You can see the used virtualhosts with httpd -S

A future goal is to have Zammad application settings in the UI to set the FQDN for the virtualhost (like Nextcloud).

That’s ok, it’s not needed.
The virtualhost package is intended to create a virtualhost with webspace in /var/lib/nethserver/vhost/..., ftp option etc.

Thanks a lot for your answer. Maybe a Linux experienced sysadmin (which I am not) could think that is quite easy to get it but adding that to the wiki might be a nice help.
I’m gonna ask if the virtualhost is “right”, so maybe i will report a “tested procedure” for edit the virtual hostname for Zammad.

1 Like

You’re right, it’s confusing. I edited the wiki page.

There’s already a feature thread to improve the virtualhosts to avoid the confusion:

Zammad requires nginx and to run next to apache it needs to listen to another port. To make it work without using a non-default port I used a virtualhost name reverse proxy. A path reverse proxy (https://www.nethdomain.tld/zammad) didn’t work in my tests so only way was the virtualhost name reverse proxy and therefore a separate domain name is needed.

2 Likes

I updated the Zammad module. It works with Zammad 3.6.
You don’t need the 2 step installation process as described in the wiki anymore.

It’s enough to install one package and maybe set the VirtualHost prop when needed. If you like to test:

yum --enablerepo=mrmarkuz install https://mrmarkuz.dynu.net/mirror/devtest/nethserver-zammad-1.0.0-7.ns7.noarch.rpm

2 Likes

Installed.

1 Like

@mrmarkuz

NS Rsync Backup fails due to Zammad:

/etc/e-smith/events/pre-backup-data/S50nethserver-zammad-backup

-bash: /var/lib/nethserver/zammad/backup/zammad.sql: Permission denied

Not sure how to solve this.

What permissions?

ls -hal /var/lib/nethserver/zammad/backup
1 Like

I couldn’t reproduce. Rsync backup is working here.

Right permissions to compare:

[root@testserver ~]# ls -hal /var/lib/nethserver/zammad/backup/
total 11M
drwxr-xr-x 2 postgres postgres  24 Aug  5 21:59 .
drwxr-xr-x 3 root     root      20 Aug  5 21:07 ..
-rw-r--r-- 1 postgres postgres 11M Aug  5 22:17 zammad.sql

You may just delete /var/lib/nethserver/zammad/backup/zammad.sql, it’s recreated at next backup.

1 Like
ls -hal /var/lib/nethserver/zammad/backup
total 1.2G
drwxr-xr-x 2 root     root     4.0K Aug  5 01:30 .
drwxr-xr-x 3 root     root       20 Jul 28 01:30 ..
-rw-r--r-- 1 postgres postgres 4.2M Jul 28 01:30 20210728013001_zammad_db.psql.gz
-rw-r--r-- 1 root     root     123M Jul 28 01:30 20210728013001_zammad_files.tar.gz
-rw-r--r-- 1 postgres postgres 4.2M Jul 29 01:30 20210729013001_zammad_db.psql.gz
-rw-r--r-- 1 root     root     123M Jul 29 01:30 20210729013001_zammad_files.tar.gz
-rw-r--r-- 1 postgres postgres 4.2M Jul 30 01:30 20210730013001_zammad_db.psql.gz
-rw-r--r-- 1 root     root     123M Jul 30 01:30 20210730013001_zammad_files.tar.gz
-rw-r--r-- 1 postgres postgres 4.2M Jul 31 01:30 20210731013001_zammad_db.psql.gz
-rw-r--r-- 1 root     root     123M Jul 31 01:30 20210731013001_zammad_files.tar.gz
-rw-r--r-- 1 postgres postgres 4.2M Aug  1 01:30 20210801013001_zammad_db.psql.gz
-rw-r--r-- 1 root     root     123M Aug  1 01:30 20210801013001_zammad_files.tar.gz
-rw-r--r-- 1 postgres postgres 4.2M Aug  2 01:30 20210802013001_zammad_db.psql.gz
-rw-r--r-- 1 root     root     123M Aug  2 01:30 20210802013001_zammad_files.tar.gz
-rw-r--r-- 1 postgres postgres 4.2M Aug  3 01:30 20210803013001_zammad_db.psql.gz
-rw-r--r-- 1 root     root     123M Aug  3 01:30 20210803013001_zammad_files.tar.gz
-rw-r--r-- 1 postgres postgres 4.2M Aug  4 01:30 20210804013001_zammad_db.psql.gz
-rw-r--r-- 1 root     root     123M Aug  4 01:30 20210804013001_zammad_files.tar.gz
-rw-r--r-- 1 postgres postgres 4.2M Aug  5 01:30 20210805013001_zammad_db.psql.gz
-rw-r--r-- 1 root     root     123M Aug  5 01:30 20210805013001_zammad_files.tar.gz
lrwxrwxrwx 1 root     root       66 Aug  5 01:30 latest_zammad_db.psql.gz -> /var/lib/nethserver/zammad/backup/20210805013001_zammad_db.psql.gz
lrwxrwxrwx 1 root     root       68 Aug  5 01:30 latest_zammad_files.tar.gz -> /var/lib/nethserver/zammad/backup/20210805013001_zammad_files.tar.gz

No /var/lib/nethserver/zammad/backup/zammad.sql file yet, new install, first time trying to backup.

chown postgres:postgres /var/lib/nethserver/zammad/backup/ solved it, thanks!

1 Like

@mrmarkuz Zammad 5 is released now, do you see when would it be updated in the repo?

Also as I noticed, if there is any elasticsearch update, then we need to run:

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

Otherwise the plugin version mismatches the elasticsearch version.

I guess signal-event nethserver-zammad-update would do the same, but that does not get called automatically at elasticsearch updates.

I am not sure how signal events works, is it possible to add it to elasticsearch updates?

1 Like

Interested and following like a backpack…

Well… Prerequisite “interesting” from Install from package — Zammad documentation

# CentOS 7
$ yum install postgresql14-server
$ postgresql-14-setup initdb
$ systemctl start postgresql-14
$ systemctl enable postgresql-14

# general
$ yum install zammad

Let’s see my setup what carries…

# rpm -qa postgre*
postgresql-libs-9.2.24-7.el7_9.x86_64
postgresql-server-9.2.24-7.el7_9.x86_64
postgresql-9.2.24-7.el7_9.x86_64

Oh dear.

 yum list postgresql*
Loaded plugins: changelog, fastestmirror, nethserver_events
Loading mirror speeds from cached hostfile
 * ce-base: mirrors.prometeus.net
 * ce-extras: mirrors.prometeus.net
 * ce-sclo-rh: mirrors.prometeus.net
 * ce-sclo-sclo: mirrors.prometeus.net
 * ce-updates: mirrors.prometeus.net
 * epel: epel.mirror.wearetriple.com
 * nethforge: nethserver.interlin.nl
 * nethserver-base: nethserver.interlin.nl
 * nethserver-updates: nethserver.interlin.nl
Installed Packages
postgresql.x86_64                                                                        9.2.24-7.el7_9                                                      @ce-updates
postgresql-libs.x86_64                                                                   9.2.24-7.el7_9                                                      @ce-updates
postgresql-server.x86_64                                                                 9.2.24-7.el7_9                                                      @ce-updates
Available Packages
postgresql.i686                                                                          9.2.24-7.el7_9                                                      ce-updates
postgresql-contrib.x86_64                                                                9.2.24-7.el7_9                                                      ce-updates
postgresql-devel.i686                                                                    9.2.24-7.el7_9                                                      ce-updates
postgresql-devel.x86_64                                                                  9.2.24-7.el7_9                                                      ce-updates
postgresql-docs.x86_64                                                                   9.2.24-7.el7_9                                                      ce-updates
postgresql-jdbc.noarch                                                                   9.2.1002-8.el7_8                                                    ce-updates
postgresql-jdbc-javadoc.noarch                                                           9.2.1002-8.el7_8                                                    ce-updates
postgresql-libs.i686                                                                     9.2.24-7.el7_9                                                      ce-updates
postgresql-odbc.x86_64                                                                   09.03.0100-2.el7                                                    ce-base
postgresql-pgpool-II.x86_64                                                              3.4.6-1.el7                                                         epel
postgresql-pgpool-II-devel.x86_64                                                        3.4.6-1.el7                                                         epel
postgresql-pgpool-II-extensions.x86_64                                                   3.4.6-1.el7                                                         epel
postgresql-plperl.x86_64                                                                 9.2.24-7.el7_9                                                      ce-updates
postgresql-plpython.x86_64                                                               9.2.24-7.el7_9                                                      ce-updates
postgresql-plruby.x86_64                                                                 0.5.3-13.el7                                                        epel
postgresql-plruby-doc.x86_64                                                             0.5.3-13.el7                                                        epel
postgresql-pltcl.x86_64                                                                  9.2.24-7.el7_9                                                      ce-updates
postgresql-static.i686                                                                   9.2.24-7.el7_9                                                      ce-updates
postgresql-static.x86_64                                                                 9.2.24-7.el7_9                                                      ce-updates
postgresql-test.x86_64                                                                   9.2.24-7.el7_9                                                      ce-updates
postgresql-upgrade.x86_64                                                                9.2.24-7.el7_9                                                      ce-updates
postgresqltuner.noarch                    

Something tells me that a “little” version change is… advisable.
Anyway, PostgreSQL 9.3 or later seems still supported. So a small update.
But a ruby upgrade is requrested to 2.7.4.

And if i add as requested this repository…
yum install https://download.postgresql.org/pub/repos/yum/reporpms/EL-7-x86_64/pgdg-redhat-repo-latest.noarch.rpm
PostgreSQL 9.6 tells me “Ding dong, Hello! I want to land on your setup”.

Moreover… nodejs in Nethserver is 6.something, and Zammad “not so kindly” asks 12. Oh dear act II

1 Like

Thanks for the information. I’m going to update it as soon as the DB migration to the required postgresql 9.3+ works. I’ll provide a testing package asap.

Maybe it’s time for nethserver-elasticsearch to check ingrest attachment on update…with preconfig for Nextcloud full text search :thinking:

OK, Update and DB migration needed, I’d go for nethserver-postgresql12 as used with mattermost but I need to check. I guess this avoids the ruby upgrade…

Node.js is only needed for JS or CSS changes, see documentation

EDIT:

Ah, now I understand, zammad requires postgresql-server in version 9.3+ so we can’t use rh-postgresql*. :unamused:

Maybe we should just use docker?

https://docs.zammad.org/en/latest/install/docker-compose.html

YEAH

One oft the best news

Would you please explain me why the repository that I added could not suit that good? Package conflict with already installed PostgreSQL?
PostgreSQL could not be upgraded to 9.6 without breaking all the surroundings?

Hard pass. Sorry, not going to dockerize a server than one day or another will be… shipped elsewhere (hosting), plain server suits better to me.

1 Like