====== Zammad ====== | Verantwortung | Malte | | Container | zammad | | W. Ports | keine | | OS | Debian 12.5 | | Server | [[infrastruktur:server:magrathea]] | | Zustand | Produktiv | {{tag>infrasystem container magrathea productive malte ssoenabled}} Hier findet sich die technische Dokumentation des Chaotikum Ticketsystems. [[hackspace:infrastruktur:zammad|Die Nutzungshinweise finden sich noch nirgendwo. Wir sind im Testbetrieb]]. ===== TODO ===== Die [[https://zammad.com/de/releases/6-0|Release Notes von Zammad 6]] behaupten, wir brauchen andere Websocket-Weiterleitungs-Dinge im Reverse-Proxy. Brauchen wir das wirklich? Der Updater von Postgres behauptet, die aktuelle Version 13 ist obsolet und muss manuell aktualisiert werden: {{:infrastruktur:container:screenshot_2023-06-30_at_00.24.20.png?400|}} ===== Services ===== ^ Serviceübersicht ^ Version ^ | Elasticsearch | 7.17.20 | | Zammad | 6.3.0-1713964309.fe9ddad5.bullseye | === Update === Beim Update hängt sich manchmal das Elasticsearch auf, weil nach dem Update das Plugin ingest-attachment nicht mehr dazu passt. Dann muss man das neu installieren: /usr/share/elasticsearch/bin/elasticsearch-plugin remove ingest-attachment /usr/share/elasticsearch/bin/elasticsearch-plugin install ingest-attachment === Installation Protocol === # Anleitung Zammad https://docs.zammad.org/en/latest/install/package.html # Additional software dependencies apt install curl apt-transport-https gnupg # Anleitung Elasticsearch https://docs.zammad.org/en/latest/install/elasticsearch.html apt install apt-transport-https wget curl gnupg echo "deb [signed-by=/etc/apt/trusted.gpg.d/elasticsearch.gpg] https://artifacts.elastic.co/packages/7.x/apt stable main" | tee -a /etc/apt/sources.list.d/elastic-7.x.list > /dev/null curl -fsSL https://artifacts.elastic.co/GPG-KEY-elasticsearch | gpg --dearmor | tee /etc/apt/trusted.gpg.d/elasticsearch.gpg> /dev/null apt update apt install elasticsearch /usr/share/elasticsearch/bin/elasticsearch-plugin install ingest-attachment # RAM für Elasticsearch begrenzen # WICHTIG! Sonst verwendet das alles an RAM, was es finden kann echo "-Xms500m" > /etc/elasticsearch/jvm.options.d/heapsize.options echo "-Xmx500m" >> /etc/elasticsearch/jvm.options.d/heapsize.options # Service aktivieren und starten systemctl daemon-reload systemctl enable elasticsearch.service # Settings in /etc/elasticsearch/elasticsearch.yml ergänzen: # # recommended settings from https://docs.zammad.org/en/latest/install/elasticsearch.html # # Tickets above this size (articles + attachments + metadata) # # may fail to be properly indexed (Default: 100mb). # # # # When Zammad sends tickets to Elasticsearch for indexing, # # it bundles together all the data on each individual ticket # # and issues a single HTTP request for it. # # Payloads exceeding this threshold will be truncated. # # # # Performance may suffer if it is set too high. # http.max_content_length: 400mb # # # Allows the engine to generate larger (more complex) search queries. # # Elasticsearch will raise an error or deprecation notice if this value is too low, # # but setting it too high can overload system resources (Default: 1024). # # # # Available in version 6.6+ only. # indices.query.bool.max_clause_count: 2000 # Install Zammad curl -fsSL https://dl.packager.io/srv/zammad/zammad/key | gpg --dearmor | tee /etc/apt/trusted.gpg.d/pkgr-zammad.gpg> /dev/null echo "deb [signed-by=/etc/apt/trusted.gpg.d/pkgr-zammad.gpg] https://dl.packager.io/srv/deb/zammad/zammad/stable/debian 11 main"| tee /etc/apt/sources.list.d/zammad.list > /dev/null apt update apt install zammad # Set the Elasticsearch server address $ zammad run rails r "Setting.set('es_url', 'http://localhost:9200')" # Build the search index $ zammad run rake zammad:searchindex:rebuild # make nginx listen for remote connections # edit /etc/nginx/sites-available/zammad.conf # remove server_name localhost # remove listen [::]:80 # remove listen :80 # add listen 192.168.1.59:80 ===== SSO ==== Single Sign On (SSO) mit Keycloak kann in der Anwendung vom Admin Account konfiguriert werden. Zammad nutzt SAML. ===== Wartung ===== In das Textfeld einfach das Datum der Wartung eintragen, am besten in der Form yyyy-mm-dd. {{NEWPAGE>infrastruktur:wartung:zammad#pagetemplates:wartungstemplate:zammad|Zammad }} {{topic>:infrastruktur:wartung?wartungsfenster +zammad &nodate&nouser&desc&table}} ~~NOCACHE~~