Salta al contingut

Categoria: Desenvolupament

Mattermost gestionat: xat de l'equip tècnic en els vostres servidors

Els canals, els missatges directes i els avisos dels vostres pipelines en una eina que viu a la vostra infraestructura, amb còpies que restaurem i actualitzacions que no us agafen per sorpresa.

On es munta
Al vostre compte, a nom vostre
Còpies
Amb restauració provada
Actualitzacions
Planificades i documentades
Llicència
Codi font AGPLv3; binaris oficials MIT. Edicions de pagament: comercial

En resum

Mattermost és una plataforma de missatgeria per a equips, alternativa autoallotjada a Slack, amb canals, missatges directes, integracions i aplicacions d'escriptori i mòbil. La instal·lem al vostre compte o en els vostres servidors amb PostgreSQL i emmagatzematge d'arxius, la connectem amb les vostres eines, fem còpies que restaurem en proves i la mantenim al dia. També us ajudem a triar l'edició.

Què ens encarreguem de mantindre?

El xat de l’equip es converteix en una eina crítica sense que ningú ho decidisca: allí arriben les alertes, es coordinen els desplegaments i es prenen decisions. Si Mattermost cau o perd un mes de missatges, es nota de seguida. Això és el que deixem sota control:

  • Servidor

    Mattermost amb la seua configuració al repositori i el domini a nom vostre.

  • Base de dades

    PostgreSQL ajustat, amb còpies que restaurem en proves.

  • Adjunts

    Arxius en disc o en S3, amb la seua pròpia còpia i límits de mida.

  • Integracions

    Webhooks, bots i ordres per a GitLab, CI i avisos de monitoratge.

  • Accessos

    HTTPS, comptes revisats i permisos ajustats a cada equip.

  • Versions

    Actualitzacions al ritme de les versions amb suport, provades abans.

Com el muntem?

Per a la majoria d’equips tècnics n’hi ha prou amb un servidor d’aplicació ben dimensionat. El que importa és separar les dades i poder reconstruir-lo:

  1. Servidor d'aplicació

    Mattermost com a servei del sistema o en contenidor, amb la seua configuració guardada fora.

  2. PostgreSQL

    Al mateix servidor per a equips xicotets, o en la base de dades gestionada del proveïdor quan n’hi ha.

  3. Adjunts

    En un emmagatzematge compatible amb S3 perquè el servidor es puga substituir sense moure arxius.

  4. Proxy invers

    Nginx o Traefik amb HTTPS i WebSocket, davant de tot.

Si feu servir les trucades de veu, obrim a més el port que necessita el seu servidor de mitjans i el provem des de fora de la xarxa de l’oficina.

Quins problemes trobem més sovint?

  • Còpia només de la base de dades: els adjunts es van quedar fora i ningú no ho va comprovar.
  • Versió fora de suport: deixa de rebre correccions de seguretat i cada mes costa més posar-se al dia.
  • WebSocket mal configurat al proxy: els missatges no arriben en temps real i l’equip culpa l’aplicació.
  • Disc ple d’adjunts sense límit de mida ni política de retenció.
  • Webhooks entrants sense control: qualsevol amb l’URL pot publicar en un canal.
  • Edició equivocada: es descobreix després de la instal·lació que la funció que es volia és de pagament.

Com fem les còpies i les actualitzacions?

Copiem cada dia la base de dades de PostgreSQL i els adjunts per separat, i guardem també l’arxiu de configuració. Periòdicament ho restaurem tot en un servidor a part i comprovem que s’hi pot entrar, llegir canals i obrir arxius; el temps que tarda va a l’informe.

Mattermost publica versions sovint i en manté algunes amb suport estés (ESR). Triem amb vosaltres a quin ritme voleu anar, llegim les notes de cada versió, assagem amb una còpia quan hi ha canvis a la base de dades i actualitzem en una finestra avisada. Abans de cada actualització fem una còpia fresca.

Per a qui té sentit?

  • Un equip tècnic que vol les seues converses i adjunts en la seua pròpia infraestructura, per política interna o per exigències d’un client.
  • Una empresa que ja autoallotja el seu Git i la seua CI i vol que els avisos de desplegaments i incidències arriben a un xat del mateix entorn.
  • Qui ix de Slack i vol conservar part de l’historial.

Mattermost encaixa bé al costat de GitLab self-hosted o Gitea, i amb Keycloak si l’edició que trieu admet l’inici de sessió únic.

Com encaixen les peces
  1. ClientsWeb, escriptori i mòbil
  2. Proxy inversHTTPS i WebSocket
  3. MattermostServidor d'aplicació
  4. PostgreSQLMissatges i configuració
  5. EmmagatzematgeAdjunts en disc o S3

On ho muntem?

Al vostre compte, al proveïdor que ja feu servir o al que encaixe millor. Si les dades s'han de quedar a la UE, Hetzner i OVHcloud són les opcions europees.

Proveïdors on ho muntem

  • Hetzner
  • AWS
  • Google Cloud
  • Azure
  • DigitalOcean
  • OVH
  • Servidor propi
ProveïdorCom ho muntemA tindre en compte
HetznerUn servidor cloud amb Mattermost i PostgreSQL, adjunts en Object Storage de Hetzner i còpies en una altra ubicació.Un servidor modest dona per a un equip tècnic; el que més creix són els adjunts.
AWSMattermost en EC2, RDS for PostgreSQL i S3 per als adjunts.
Google CloudCompute Engine i Cloud SQL per a PostgreSQL, amb els adjunts en disc o en un emmagatzematge compatible amb S3.
AzureMàquina virtual i Azure Database for PostgreSQL, amb els adjunts en disc o en un emmagatzematge compatible amb S3.
DigitalOceanDroplet amb Mattermost, PostgreSQL gestionat i Spaces per als adjunts.
OVHInstància de Public Cloud, base de dades gestionada d'OVHcloud i Object Storage per als adjunts.
Servidor propiMattermost i PostgreSQL al vostre servidor o en una màquina virtual.Si només es fa servir a l'oficina, el deixem darrere de la VPN; per al mòbil fora d'ella, publiquem només el proxy.

Què inclou

  • Mattermost al vostre compte del núvol o al vostre servidor, amb el vostre domini i la configuració al vostre repositori.
  • PostgreSQL com a base de dades, amb còpies independents de les dels arxius.
  • Arxius adjunts en disc o en un emmagatzematge d'objectes compatible amb S3.
  • Servidor intermediari invers amb HTTPS i WebSocket, i accés de les aplicacions d'escriptori i mòbil.
  • Integracions amb GitLab, Gitea, CI i alertes: webhooks entrants i eixints, ordres de barra i bots.
  • Còpies diàries de base de dades i arxius, amb restauració de prova periòdica.
  • Mètriques de disponibilitat, base de dades, disc i certificats, amb alertes.
  • Actualitzacions segons el calendari de versions de Mattermost, provades abans en una còpia.

Preguntes freqüents

Quina edició de Mattermost necessitem?

Depén de la mida de l'equip i del que necessiteu. Team Edition és gratuïta i està pensada per a equips xicotets. Entry també és gratuïta, amb llicència comercial i límits d'ús. Les edicions de pagament afegeixen funcions com l'inici de sessió únic, i Enterprise l'alta disponibilitat en clúster. Revisem amb vosaltres les condicions vigents abans d'instal·lar, perquè canvien entre versions.

Podem portar l'historial de Slack?

Mattermost documenta una migració des de Slack: es parteix d'una exportació de Slack, es converteix amb la seua eina mmetl i s'importa amb mmctl. L'assagem abans en una instància a part i revisem junts què ha arribat i què no abans de fer-la en producció.

Funcionen les trucades de veu?

Sí, amb el complement de trucades de Mattermost. El seu servidor de mitjans necessita el port 8443 obert directament, per UDP i amb TCP com a reserva, sense passar pel proxy invers. El configurem i el provem des de fora de la xarxa de l'oficina.

Es pot muntar en alta disponibilitat?

El desplegament en clúster amb alta disponibilitat és de l'edició Enterprise. Amb les edicions gratuïtes el que fem és un servidor ben vigilat, còpies freqüents i un procediment de reconstrucció assajat, de manera que una caiguda es tradueix en una estona curta sense xat i no en pèrdua de missatges.

Expliqueu-nos el vostre cas

En una trucada gratuïta de 20 minuts veiem on sou i per on començar. Sense compromís.

Reservar una trucada de 20 minuts

Documentació oficial consultada

Les dades tècniques d'aquesta pàgina es basen en:

Revisat el

WhatsApp