Buat cadangan yang konsisten sebelum setiap upgrade, dengan Ayakaleaf Pro dihentikan. Baca catatan rilis untuk langkah-langkah versi tujuan upgrade Anda.
sudo docker pull.
- Satu replika
- Beberapa replika
1
Hentikan Ayakaleaf Pro
2
Cadangkan
MongoDB, dari anggota mana pun:Volume data, melalui pod berumur pendek yang me-mount-nya (pod ini akan berjalan di node tempat volume berada):Lakukan hal yang sama untuk volume git-bridge (
data-git-bridge-0), dan simpan salinan Secret overleaf-secrets. Jika penyimpanan Anda mendukung VolumeSnapshots, snapshot dari volume-volume tersebut memberikan hasil yang sama.3
Ubah versi dan mulai
Atur tag baru di Deployment menggunakan
40-overleaf.yaml (dan di 45-git-bridge.yaml, yang harus menggunakan tag yang sama), lalu:strategy: Recreate, sehingga bahkan tag yang diubah tidak pernah menjalankan dua versi sekaligus.MongoDB dan Redis
Upgrade keduanya secara terpisah dari Ayakaleaf Pro. Untuk MongoDB, ikuti Memperbarui MongoDB (satu versi mayor setiap kali,featureCompatibilityVersion setelah setiap langkah); replica set menerima image baru satu anggota setiap kali saat Anda mengubah image di 10-mongo.yaml, karena StatefulSet mengganti mongo-2, mongo-1, dan mongo-0 secara bergiliran.
Rollback
Hentikan Ayakaleaf Pro seperti di atas, pulihkan MongoDB dari arsip (mongorestore --drop --archive --gzip) serta volume atau bucket dari cadangan, atur tag lama, dan mulai lagi. Migrasi versi baru tidak dapat dibatalkan dengan cara lain.
Tanya Jawab
Sebuah replika tetap tidak siap, dan replika lainnya tidak pernah dimulai
Sebuah replika tetap tidak siap, dan replika lainnya tidak pernah dimulai
Jawaban: Dengan Kami mengalami hal ini di klaster uji kami setelah sebuah pengaturan membuat
podManagementPolicy: OrderedReady, overleaf-1 hanya dimulai setelah overleaf-0 siap, dan rolling update tidak mengganti pod yang tidak pernah siap. Setelah Anda memperbaiki penyebabnya, misalnya pengaturan yang salah di ConfigMap, hapus pod yang macet agar StatefulSet membuatnya kembali dari template saat ini:overleaf-0 tidak pernah siap; menghapus pod tersebut memungkinkan ketiga replika dimulai.
