Mongo 4.4'ten 8.0'a Downtime Olmadan Güncelleme
Bu kılavuzda, MongoDB Replicalarını 4.4 sürümünden 8.0 sürümüne kesintisiz bir şekilde güncellemeyi amaçlamaktadır. MongoDB 8.0 sürümüne direkt olarak 4.4 sürümünden geçmek mümkün değildir. Dolayısıyla, her bir ana sürüm arasında kademeli bir geçiş yapılması gerekmektedir.
Bu örnek Ubuntu 22.04 üzerinde gerçekleştirilmiştir.
Çalışma Gerçekleştirilmeden Önce MongoDB Yedeği Alınır
1) Secondary Nodeları Mongo 4.4'ten 5.0'a Güncelleme
İlk olarak, tüm MongoDB secondary node'larının her biri teker teker 5.0 sürümüne güncellenir.
Çok Önemli
Yükleme esnasında sistem config dosyasının yeniden yazıp yazmayacağını sorar, burada eğer yanlışlıkla konfigürasyon dosyası ezilirse eski ayara döndürülmesi gerekir.
# sudo vi /etc/mongod.conf
# Eski dosya varsayılan olarak aşağıdaki gibidir
storage:
dbPath: /var/lib/mongodb
wiredTiger:
engineConfig:
cacheSizeGB: 2
systemLog:
destination: file
logAppend: true
path: /var/log/mongodb/mongod.log
net:
port: 25080
bindIp: 0.0.0.0
replication:
replSetName: apinizer-replicaset
security:
authorization: enabled
keyFile: /etc/mongodb/keys/mongo-key
setParameter:
transactionLifetimeLimitSeconds: 300
processManagement:
timeZoneInfo: /usr/share/zoneinfo
Herhangi bir node'a bağlanarak replica set'in durumu kontrol edilir:
2) Primary Rolündeki Bir Node'u Secondary Rolüne Çekme
Primary node'a bağlanılıp primary node'un görevini secondary'e düşürerek yeni bir primary node seçilmesi sağlanır.
3) Primary Rolünü Bırakan Node'u Mongo 4.4'ten 5.0'a Güncelleme
Herhangi bir node'a bağlanarak replica set'in durumu kontrol edilir.
4) Mongo 5.0 Özellik Uyumu Kontrolü
Bütün Node'lar MongoDB 5.0'a geçtikten sonra, Mongodb 6.0'a geçiş yapmadan önce özellik uyumluluğu ayarı 5.0'a ayarlanılır. (Primary Node'da).
5) Secondary Nodeları Mongo 5.0'dan 6.0'a Güncelleme
Tüm MongoDB replicalarının 5.0 sürümüne geçtiğinden emin olduktan sonra, 6.0 sürümüne geçiş yapabiliriz. İlk olarak, tüm secondary node'ları sırayla güncelleyerek başlayın.
Herhangi bir node'a bağlanarak replica set'in durumunu kontrol edin.
6) Primary Rolündeki Bir Node'u Secondary Rolüne Çekme
7) Primary Rolünü Bırakan Node'u Mongo 5.0'dan 6.0'a Güncelleme
Herhangi bir node'a bağlanarak replica set'in durumunu kontrol edin:
8) Mongo 6.0 Özellik Uyumu Kontrolü
Bütün Node'lar MongoDB 6.0'a geçtikten sonra, özellik uyumluluğu ayarı 6.0'a ayarlanır (Primary Node'da).
9) Secondary Node'ları Mongo 6.0'dan 7.0'a Güncelleme
Tüm MongoDB replicalarının 6.0 sürümüne geçtiğinden emin olduktan sonra, 7.0 sürümüne geçiş yapabiliriz. İlk olarak, tüm secondary node'ları sırayla güncelleyerek başlayın.
Herhangi bir node'a bağlanarak replica set'in durumunu kontrol edin.
10) Primary Rolündeki Bir Node'u Secondary Rolüne Çekme
11) Primary Rolünü Bırakan Node'u Mongo 6.0'dan 7.0'a Güncelleme
Herhangi bir node'a bağlanarak replica set'in durumunu kontrol edin:
12) Mongo 7.0 Özellik Uyumu Kontrolü
Bütün Node'lar MongoDB 7.0'a geçtikten sonra, özellik uyumluluğu ayarı 7.0'a ayarlanır (Primary Node'da).
13) Secondary Node'ları Mongo 7.0'dan 8.0'a Güncelleme
Tüm MongoDB replicalarının 7.0 sürümüne geçtiğinden emin olduktan sonra, 8.0 sürümüne geçiş yapabiliriz. İlk olarak, tüm secondary node'ları sırayla güncelleyerek başlayın.
Herhangi bir node'a bağlanarak replica set'in durumunu kontrol edin:
14) Primary Rolündeki Bir Node'u Secondary Rolüne Çekme
15) Primary Rolünü Bırakan Node'u Mongo 7.0'dan 8.0'a Güncelleme
Herhangi bir node'a bağlanarak replica set'in durumunu kontrol edin:
16) Mongo 8.0 Özellik Uyumu Kontrolü
Bütün Node'lar MongoDB 8.0'a geçtikten sonra, özellik uyumluluğu ayarı 8.0'a ayarlanır (Primary Node'da).
- 1) Secondary Nodeları Mongo 4.4'ten 5.0'a Güncelleme
- 2) Primary Rolündeki Bir Node'u Secondary Rolüne Çekme
- 3) Primary Rolünü Bırakan Node'u Mongo 4.4'ten 5.0'a Güncelleme
- 4) Mongo 5.0 Özellik Uyumu Kontrolü
- 5) Secondary Nodeları Mongo 5.0'dan 6.0'a Güncelleme
- 6) Primary Rolündeki Bir Node'u Secondary Rolüne Çekme
- 7) Primary Rolünü Bırakan Node'u Mongo 5.0'dan 6.0'a Güncelleme
- 8) Mongo 6.0 Özellik Uyumu Kontrolü
- 9) Secondary Node'ları Mongo 6.0'dan 7.0'a Güncelleme
- 10) Primary Rolündeki Bir Node'u Secondary Rolüne Çekme
- 11) Primary Rolünü Bırakan Node'u Mongo 6.0'dan 7.0'a Güncelleme
- 12) Mongo 7.0 Özellik Uyumu Kontrolü
- 13) Secondary Node'ları Mongo 7.0'dan 8.0'a Güncelleme
- 14) Primary Rolündeki Bir Node'u Secondary Rolüne Çekme
- 15) Primary Rolünü Bırakan Node'u Mongo 7.0'dan 8.0'a Güncelleme
- 16) Mongo 8.0 Özellik Uyumu Kontrolü