Tag en konsistent sikkerhedskopi før hver opgradering, med Ayakaleaf Pro stoppet. Læs release notes for trin til den version, du opgraderer til.
sudo docker pull.
- Én replika
- Flere replikaer
1
Stop Ayakaleaf Pro
2
Sikkerhedskopiér
MongoDB, fra et vilkårligt medlem:Datavolumet, via en kortlivet pod, der monterer det (den havner på volumets node):Gør det samme for git-bridges volume (
data-git-bridge-0), og gem en kopi af Secret’et overleaf-secrets. Hvis din lagring understøtter VolumeSnapshots, gør et snapshot af volumes det samme.3
Skift versionen, og start
Sæt det nye tag i Deployment’et bruger
40-overleaf.yaml (og i 45-git-bridge.yaml, som skal bruge det samme tag), og kør derefter:strategy: Recreate, så selv et ændret tag aldrig kører to versioner på samme tid.MongoDB og Redis
Opgradér dem separat fra Ayakaleaf Pro. For MongoDB skal du følge Opdatering af MongoDB (én hovedversion ad gangen,featureCompatibilityVersion efter hvert trin); et replikasæt tager det nye image ét medlem ad gangen, når du ændrer imaget i 10-mongo.yaml, fordi StatefulSet’et udskifter mongo-2, mongo-1 og mongo-0 på skift.
Tilbagerulning
Stop Ayakaleaf Pro som ovenfor, gendan MongoDB fra arkivet (mongorestore --drop --archive --gzip) og volumes eller buckets fra sikkerhedskopien, sæt det gamle tag, og start igen. Den nye versions migreringer kan ikke fortrydes på anden vis.
Spørgsmål og svar
En replika forbliver ikke klar, og de andre replikaer starter aldrig
En replika forbliver ikke klar, og de andre replikaer starter aldrig
Svar: Med Vi stødte på dette i vores testcluster, efter at en indstilling forhindrede
podManagementPolicy: OrderedReady starter overleaf-1 først, når overleaf-0 er klar, og en rolling update udskifter ikke en pod, der aldrig blev klar. Når du har rettet årsagen, for eksempel en forkert indstilling i ConfigMap’et, skal du slette den fastlåste pod, så StatefulSet’et opretter den igen ud fra den aktuelle skabelon:overleaf-0 i at blive klar; sletning af poden fik alle tre replikaer til at starte.
