Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu makalede, şirket içinde veya başka bir bulut hizmetinde çalışan mevcut bir önbelleği Azure Managed Redis'e geçirmeye yönelik bir dizi yaklaşım açıklanmaktadır.
Geçiş senaryoları
Açık kaynak Redis birçok işlem ortamı içinde çalıştırılabilir. Bazı yaygın örnekler aşağıdakileri içermektedir:
- Şirket içi - Redis özel veri merkezlerinde çalışan önbellekler.
- Bulut tabanlı VM'ler - Redis, Azure VM'leri, AWS EC2 vb. üzerinde çalışan önbellekler.
- Barındırma hizmetleri - AWS ElastiCache gibi yönetilen Redis hizmetleri.
Böyle bir önbelleğiniz varsa, en az kesinti veya kapalı kalma süresiyle bunu Azure Yönetilen Redis'e taşıyabilirsiniz.
Bir Azure bölgesinden diğerine geçmek istiyorsanız Azure Yönetilen Redis örneklerini farklı bölgelere taşıyın.
Geçiş seçenekleri
Bir önbellekten diğerine geçiş yapmanın farklı yolları vardır. Önbelleğinizin nerede olduğuna ve uygulamanızın bununla nasıl etkileşime geçtiğine bağlı olarak, bir yöntem diğerlerinden daha yararlı olacaktır. Sık kullanılan geçiş stratejilerinden bazıları aşağıda ayrıntılı olarak açıklandı.
| Seçenek | Avantajlar | Dezavantajlar |
|---|---|---|
| Yeni önbellek oluşturma | Uygulanması en basit. | Verileri yeni önbelleğe yeniden doldurmanız gerekir ve bu da birçok uygulamayla çalışmayabilir. |
| RDB dosyası aracılığıyla verileri dışarı ve içeri aktarma | Genel olarak herhangi bir Redis önbelleğiyle uyumludur. | RDB dosyası oluşturulduktan sonra mevcut önbelleğe yazılırlarsa bazı veriler kaybolabilir. |
| İki önbelleğe veri çift yazma | Veri kaybı veya kapalı kalma süresi yok. Mevcut önbelleğin kesintisiz işlemleri. Yeni önbelleğin daha kolay test edilmesi. | Uzun bir süre için iki önbellek gerekir. |
| Verileri program aracılığıyla geçirme | Verilerin taşınma şekli üzerinde tam denetim. | Özel kod gerektirir. |
Yeni bir Azure Yönetilen Redis oluşturma
Bu yaklaşım teknik olarak geçiş değildir. Veri kaybı önemli değilse, Azure Yönetilen Redis'e geçmenin en kolay yolu önbellek örneği oluşturmak ve uygulamanızı buna bağlamaktır. Örneğin, Redis'i veritabanı kayıtlarının ayrı bir önbelleği olarak kullanırsanız önbelleği sıfırdan kolayca yeniden oluşturabilirsiniz.
Bu seçeneği uygulamak için genel adımlar şunlardır:
Yeni bir Azure Yönetilen Redis örneği oluşturun.
Uygulamanızı yeni örneği kullanacak şekilde güncelleştirin.
Eski Redis örneğini silin.
Verileri RDB dosyasına aktarma ve Azure Yönetilen Redis'e aktarma
Açık kaynak Redis, önbelleğin bellek içi veri kümesinin anlık görüntüsünü almak ve bir dosyaya kaydetmek için standart bir mekanizma tanımlar. RDB olarak adlandırılan bu dosya başka bir Redis önbelleği tarafından okunabilir. Mevcut bir önbellekten Azure Yönetilen Redis'e veri aktarmak için RDB dosyası kullanabilirsiniz.
Önemli
RDB dosya biçimi Redis sürümleri arasında değişebilir ve geriye dönük uyumluluğu koruyamayabilir. Dışarı aktardığınız önbelleğin Redis sürümü, Azure Yönetilen Redis tarafından sağlanan sürüme eşit veya daha küçük olmalıdır.
Bu seçeneği uygulamak için genel adımlar şunlardır:
Mevcut önbellekle aynı boyutta (veya daha büyük) yeni bir Azure Yönetilen Redis örneği oluşturun.
Mevcut Redis önbelleğinin anlık görüntüsünü kaydedin. Redis'i anlık görüntüleri düzenli aralıklarla kaydedecek şekilde yapılandırabilir veya SAVE veya BGSAVE komutlarını kullanarak işlemi el ile çalıştırabilirsiniz. RDB dosyası varsayılan olarak "dump.rdb" olarak adlandırılır ve redis.conf yapılandırma dosyasında belirtilen yolda bulunur.
Uyarı
Azure Yönetilen Redis'te veri geçiriyorsanız, rdb dosyasını dışarı aktarma veya bunun yerine PowerShell Dışarı Aktarma cmdlet'inikullanma yönergelerine bakın.
RDB dosyasını yeni önbelleğinizin bulunduğu bölgedeki bir Azure depolama hesabına kopyalayın. Bu görev için AzCopy kullanabilirsiniz.
Bu içeri aktarma yönergelerini veya PowerShell İçeri Aktarma cmdlet'ini kullanarak RDB dosyasını yeni önbelleğe aktarın.
Uygulamanızı yeni önbellek örneğini kullanacak şekilde güncelleştirin.
Geçiş döneminde aynı anda iki Redis önbelleğine yazma
Verileri doğrudan önbellekler arasında taşımak yerine, hem mevcut bir önbelleğe hem de ayarladığınız yeni bir önbelleğe veri yazmak için uygulamanızı kullanabilirsiniz. Uygulama başlangıçta mevcut önbellekten verileri okumaya devam eder. Yeni önbellek gerekli verilere sahip olduğunda, uygulamayı bu önbelleğe geçirip eskisini kullanımdan kaldırırsınız. Örneğin Redis'i oturum deposu olarak kullandığınızı ve uygulama oturumlarının yedi gün boyunca geçerli olduğunu varsayalım. Bir hafta boyunca iki önbelleğe yazdıktan sonra, yeni önbelleğin süresi dolmamış tüm oturum bilgilerini içerdiğinden emin olursunuz. Veri kaybından endişe duymadan bu noktadan itibaren güvenle buna güvenebilirsiniz.
Bu seçeneği uygulamak için genel adımlar şunlardır:
Mevcut önbellekle aynı boyutta (veya daha büyük) yeni bir Azure Yönetilen Redis örneği oluşturun.
Uygulama kodunu hem yeni hem de özgün örneklere yazacak şekilde değiştirin.
Yeni örnek verilerle yeterince doldurulana kadar özgün örnekteki verileri okumaya devam edin.
Uygulama kodunu yalnızca yeni örnekten okuyacak ve yazacak şekilde güncelleştirin.
Özgün örneği silin.
Programatik olarak taşıma
Mevcut bir önbellekteki verileri program aracılığıyla okuyarak ve bunları Azure Yönetilen Redis'e yazarak özel geçiş işlemi oluşturabilirsiniz. Bu açık kaynak aracı , verileri bir Azure Yönetilen Redis örneğinden diğerine kopyalamak için kullanılabilir. Derlenmiş bir sürüm de kullanılabilir. Kaynak kodu, kendi geçiş aracınızı yazmak için yararlı bir kılavuz olarak da bulabilirsiniz.
Uyarı
Bu araç Microsoft tarafından resmi olarak desteklenmez.
Bu seçeneği uygulamak için genel adımlar şunlardır:
Mevcut önbelleğin bulunduğu bölgede bir VM oluşturun. Veri kümeniz büyükse kopyalama süresini kısaltmak için nispeten güçlü bir VM seçin.
Yeni bir Azure Yönetilen Redis örneği oluşturun.
Boş olduğundan emin olmak için verileri yeni önbellekten temizleyin. Kopyalama aracının kendisi hedef önbellekteki mevcut hiçbir anahtarın üzerine yazmadığından bu adım gereklidir.
Önemli
Kaynak önbelleğini temizlemeyin.
Verilerin kaynak önbellekten hedefe kopyalanmasını otomatikleştirmek için yukarıdaki açık kaynak aracı gibi bir uygulama kullanın. Veri kümenizin boyutuna bağlı olarak kopyalama işleminin tamamlanmasının biraz zaman alabileceğini unutmayın.