Changes

Jump to: navigation, search

Chat

2,621 bytes added, 21:48, 3 December 2021
/* Mattermost (Current) */
* Mattermost: http://www.mattermost.org/
* Bot: https://hubot.github.com/
* <s>Hosted on an Openstack cloud instance</s> * Hosted in [[metafooBellatrix]] on Kubernetes
== Upgrade ==
* This is outdated since we migrated to Kubernetes=== Mattermost (Current) === IMPORTANT: Read the update notes before https://docs.mattermost.com/upgrade/important-upgrade-notes.html
<pre>
# ssh rootubunut@chatk8s.fixme.chsystemctl stop mattermostautopostgresqlbackupls -l /var/lib/autopostgresqlbackup/daily/mattermost/
su # Backupubuntu@k8s:~$ sudo rsync - -exclude=data/ -av /srv/chat.fixme.ch/ /root/backup-chat-$(date +'%Y-%m-%d')/
# Get the TEAM edition (not the enterprise version)Upgrade# VERSION from httpubuntu@k8s:~$ sudo docker pull mattermost//aboutmattermost-prod-app:5.9.8ubuntu@k8s:~$ kubectl -n mattermostedit deployment.com/downloadapps/mattermost-app
cd mattermost# Update the image tag to be to the last version (not latest!), ex:VERSION=3# image: mattermost/mattermost-prod-app:5.68.20OLDVERSION=$(/home/chat/# image: mattermost/bin/platform version 2>&1 | head mattermost-n 1 | awk '{print $2}')prod-app:5.9.8# save/quit
cdwget https://releases.mattermost.com/$VERSION/mattermost-team-$VERSION-linux-amd64.tar.gzmv mattermost mattermost-$OLDVERSIONtar xvf mattermost-team-$VERSION-linux-amd64.tar.gzrsync -a ./mattermost-$OLDVERSION/config/ ./mattermost/config/exit# Watch the pods being restarted
setcap cap_net_bind_service=+ep /home/chat/ubuntu@k8s:~$ kubectl get pods -n mattermost/bin/platform-wNAME READY STATUS RESTARTS AGEsystemctl start mattermost-app-b68b5cdb-5jlhj 1/1 Running 5 308dtail postgresql-F /home/chat/mattermostdb-59ffdffd84-klkw2 1/1 Running 4 466d # Watch the logs/of the newly created podubuntu@k8s:~$ kubectl logs -n mattermost.log-f mattermost-app-b68b5cdb-5jlhj
</pre>
 
=== PostgreSQL ===
 
Example d'update de postgresql
 
Creation d'un nouveau deployment avec la nouvelle version, en parallèle de l'actuelle dans objects.yaml
<pre>
apiVersion: v1
kind: PersistentVolume
metadata:
labels:
type: local
name: mattermost-postgresql-10
namespace: mattermost
spec:
accessModes:
- ReadWriteOnce
capacity:
storage: 20Gi
hostPath:
path: /srv/chat.fixme.ch/postgresql-10
 
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: mattermost-postgresql-10
namespace: mattermost
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 20Gi
 
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: mattermost
tier: db
name: postgresql-10-db
namespace: mattermost
spec:
replicas: 1
selector:
matchLabels:
app: mattermost
tier: db
template:
metadata:
creationTimestamp: null
labels:
app: mattermost
tier: db
name: mattermost-10-db
spec:
containers:
- image: postgres:10.16
imagePullPolicy: IfNotPresent
name: postgresql-10-db
ports:
- containerPort: 5432
protocol: TCP
resources: {}
terminationMessagePath: /dev/termination-log
terminationMessagePolicy: File
volumeMounts:
- mountPath: /var/lib/postgresql/data
name: db
env:
- name: POSTGRES_PASSWORD
valueFrom:
secretKeyRef:
key: db-root
name: mattermost.env
dnsPolicy: ClusterFirst
restartPolicy: Always
schedulerName: default-scheduler
securityContext: {}
terminationGracePeriodSeconds: 30
volumes:
- name: db
persistentVolumeClaim:
claimName: mattermost-postgresql-10
</pre>
 
Creation des objets, backup de l'ancienne db et import dans la nouvelle
<pre>
mkdir /srv/chat.fixme.ch/postgresql-10
kubectl create -n mattermost objects.yaml
sudo docker exec k8s_postgresql-db_postgresql-db-59ffdffd84-pb2pg_mattermost_87151477-a5bf-11eb-bde2-525400731ac9_0 pg_dumpall -U postgres > dump-9.4.sql
sudo cp dump-9.4.sql /srv/chat.fixme.ch/postgresql-10/.
sudo docker exec -it k8s_postgresql-10-db_postgresql-10-db-558644f4fd-6g5lw_mattermost_bb97a762-a5c5-11eb-bde2-525400731ac9_0 /bin/bash
pgsql -U postgres < /var/lib/postgresql/data/dump-9.4.sql
</pre>
 
A terminer:
- switch vers la nouvelle version
== Channel naming convention ==
ControlGroup, administrator
4,205
edits