Aracılığıyla paylaş


Azure Backup kullanarak Azure Kubernetes Service'i yedekleme

Bu makalede Azure Kubernetes Service'i (AKS) yapılandırma ve yedekleme işlemleri açıklanmaktadır.

Azure Backup'ı, kümeye yüklenmesi gereken Yedekleme uzantısını kullanarak AKS kümelerini (küme kaynakları ve kümeye bağlı kalıcı birimler) yedeklemek için kullanabilirsiniz. Backup kasası, yedekleme ve geri yükleme işlemlerini gerçekleştirmek için Yedekleme uzantısı aracılığıyla kümeyle iletişim kurar.

Not

Azure Backup kullanarak AKS için kasalı yedekleme ve Bölgeler Arası Geri Yükleme şu anda önizleme aşamasındadır.

Başlamadan önce

  • Şu anda AKS yedeklemesi yalnızca Azure Disk Depolama tabanlı kalıcı birimleri destekler (CSI sürücüsü tarafından etkinleştirilir). Yedeklemeler yalnızca işletimsel veri deposunda depolanır (yedekleme verileri kiracınızda depolanır ve kasaya taşınmaz). Backup kasası ve AKS kümesi aynı bölgede olmalıdır.

  • AKS yedeklemesi, yedeklemeleri depolamak için bir blob kapsayıcısı ve kaynak grubu kullanır. Blob kapsayıcısı AKS kümesi kaynaklarını barındırır. Kalıcı birim anlık görüntüleri kaynak grubunda depolanır. AKS kümesi ve depolama konumları aynı bölgede olmalıdır. Blob kapsayıcısı oluşturmayı öğrenin.

  • Şu anda AKS yedeklemesi günde bir kez yedeklemeyi destekler. Ayrıca günde daha sık yedeklemeleri (4 saat, 8 saat ve 12 saatlik aralıklarla) destekler. Bu çözüm, verilerinizi 360 güne kadar geri yükleme için tutmanızı sağlar. Yedekleme ilkesi oluşturmayı öğrenin.

  • AKS kümesi için yedekleme ve geri yükleme işlemlerini yapılandırmak için Yedekleme uzantısını yüklemeniz gerekir. Yedekleme uzantısı hakkında daha fazla bilgi edinin.

  • Microsoft.KubernetesConfigurationYedekleme yapılandırması ve geri yükleme işlemlerini başlatmadan önce aboneliğiniz için üzerinde , Microsoft.DataProtectionve özellik bayrağının TrustedAccessPreviewMicrosoft.ContainerService kayıtlı olduğundan emin olun.

  • AKS yedeklemesi için bir yedekleme veya geri yükleme işlemi başlatmadan önce tüm önkoşulları gerçekleştirdiğinizden emin olun.

Desteklenen senaryolar, sınırlamalar ve kullanılabilirlik hakkında daha fazla bilgi için bkz . destek matrisi.

Backup kasası oluşturma

Backup kasası, zaman içinde ele alınan kurtarma noktalarını depolayan bir yönetim varlığıdır. Backup kasası, yedekleme işlemlerini gerçekleştirmek için bir arabirim de sağlar. İşlemler isteğe bağlı yedeklemeleri almayı, geri yüklemeleri yapmayı ve yedekleme ilkeleri oluşturmayı içerir. AKS yedekleme, Backup kasasının ve AKS kümesinin aynı bölgede olmasını gerektirir. Backup kasası oluşturmayı öğrenin.

Not

Backup kasası, yeni desteklenen veri kaynaklarını yedeklemek için kullanılan yeni bir kaynaktır. Backup kasası, Kurtarma Hizmetleri kasasından farklıdır.

AKS kümelerinizi bölgesel kesintilere karşı korumak için Azure Backup'ı kullanmak istiyorsanız:

  1. Kasa oluşturma sırasında Yedekleme Depolama Yedekliliği parametresini Genel Olarak Yedekli olarak ayarlayın. Kasanın yedekliliği ayarlandıktan sonra devre dışı bırakamazsınız.

    Yedekleme Depolama Yedeklilik parametresinin nasıl etkinleştirileceği ekran görüntüsü.

  2. Kasa Özellikleri'nin altında Bölgeler Arası Geri Yükleme parametresini Etkin olarak ayarlayın. Bu parametre etkinleştirildikten sonra devre dışı bırakamazsınız.

    Bölgeler Arası Geri Yükleme parametresinin nasıl etkinleştirileceği ekran görüntüsü.

  3. Kasa standart veri deposu için bekletme süresi ayarlanmış bir Yedekleme İlkesi kullanarak bir Yedekleme Örneği oluşturun. Bu veri deposunda depolanan her kurtarma noktası ikincil bölgede olacaktır.

    Not

    Kasa standart veri deposu şu anda önizleme aşamasındadır.

Yedekleme ilkesi oluşturma

Yedeklemeleri yapılandırmadan önce yedekleme sıklığını ve yedeklemelerin saklama süresini tanımlayan bir yedekleme ilkesi oluşturmanız gerekir.

Yedeklemeyi yapılandırırken bir yedekleme ilkesi de oluşturabilirsiniz.

Yedekleme ilkesi oluşturmak için:

  1. Yeni bir yedekleme ilkesi oluşturmak için Yedekleme merkezi'ne gidin ve İlke'yi seçin.

    Yedekleme ilkesi oluşturmaya başlamayı gösteren ekran görüntüsü.

    Alternatif olarak Yedekleme merkezi>Yedekleme ilkeleri>Ekle'ye gidin.

  2. Veri kaynağı türü için Kubernetes Service'i seçin ve devam edin.

    Veri kaynağı türünü seçmeyi gösteren ekran görüntüsü.

  3. Yedekleme ilkesi için bir ad girin (örneğin, Varsayılan İlke) ve yedekleme ilkesinin oluşturulması gereken Backup kasasını (oluşturduğunuz yeni Backup kasası) seçin.

    Yedekleme ilkesi adını sağlamayı gösteren ekran görüntüsü.

  4. Zamanlama + bekletme sekmesinde yedeklemelerin sıklığını ve bunların İşletimsel ve Kasa Katmanında (veri deposu olarak da adlandırılır) ne kadar süreyle saklanması gerektiğini tanımlayın.

    Yedekleme Sıklığı: Yedekleme sıklığını (saatlik veya günlük) seçin ve ardından yedeklemeler için bekletme süresini seçin.

    Yedekleme sıklığı seçimini gösteren ekran görüntüsü.

    Bekletme Ayarı: Yeni bir yedekleme ilkesinin iki bekletme kuralı vardır.

    Bekletme süresi seçimini gösteren ekran görüntüsü.

    Yedeklemeleri günlük veya haftalık olarak alınan daha uzun bir süre boyunca depolamak için ek bekletme kuralları da oluşturabilirsiniz.

    • Varsayılan: Bu kural, alınan tüm işlem katmanı yedeklemeleri için varsayılan saklama süresini tanımlar. Bu kuralı yalnızca düzenleyebilirsiniz ve silemezsiniz.

    • Her gün alınan ilk başarılı yedekleme: Varsayılan kurala ek olarak, günün her ilk başarılı yedeklemesi İşletimsel veri deposunda ve Kasa standart deposunda tutulabilir. Bu kuralı düzenleyebilir ve silebilirsiniz (yedeklemeleri İşletimsel veri deposunda tutmak istiyorsanız).

      Kasa Katmanı ve İşlem Katmanı için bekletme yapılandırmasını gösteren ekran görüntüsü.

    Ayrıca her hafta, ay ve yılda bir alınan İlk başarılı yedekleme için benzer kurallar tanımlayabilirsiniz.

    Not

    • Günün ilk başarılı yedeklemesine ek olarak, haftanın, ayın ve yılın ilk başarılı yedeklemesi için bekletme kurallarını tanımlayabilirsiniz. Öncelik açısından, sipariş yıl, ay, hafta ve gün şeklindedir.
    • Kasa standart veri deposu şu anda önizleme aşamasındadır. Özelliği kullanmak istemiyorsanız bekletme kuralını düzenleyin ve Kasa standardı veri deposunun yanındaki onay kutusunu temizleyin.
    • Kasa Katmanı'nda depolanan yedeklemeler, birincil bölge kullanılamadığında AKS kümelerini ikincil bölgeye geri yüklemek için kullanabileceğiniz ikincil bölgeye (Azure Eşleştirilmiş bölgesi) de kopyalanabilir. Bu özelliği tercih etmek için Bölgeler Arası Geri Yükleme'nin etkinleştirildiği coğrafi olarak yedekli bir kasakullanın.
  5. Yedekleme sıklığı ve bekletme ayarları yapılandırıldığında İleri'yi seçin.

    Yedekleme ilkesi oluşturma işleminin tamamlandığını gösteren ekran görüntüsü.

  6. Gözden Geçir + oluştur sekmesinde bilgileri gözden geçirin ve oluştur'u seçin.

Yedeklemeleri yapılandırma

Kümenin tamamını veya kümede dağıtılan belirli küme kaynaklarını yedeklemek için AKS yedeklemesini kullanabilirsiniz. Ayrıca, dağıtılan uygulamanın zamanlama ve saklama gereksinimleri veya güvenlik gereksinimleri başına kümeyi birden çok kez koruyabilirsiniz.

Not

Aynı AKS kümesi için birden çok yedekleme örneği ayarlamak için:

  • Yedeklemeyi aynı Backup kasasında ancak farklı bir yedekleme ilkesi kullanarak yapılandırın.
  • Farklı bir Backup kasasında yedeklemeyi yapılandırın.

AKS kümesi için yedeklemeleri yapılandırmak için:

  1. Azure portalında yedeklemek istediğiniz AKS kümesine gidin.

  2. Kaynak menüsünde Yedekle'yi ve ardından Yedeklemeyi Yapılandır'ı seçin.

  3. AKS kümesini yedekleme veya geri yüklemeye hazırlamak için Uzantıyı Yükle'yi seçerek Yedekleme uzantısını kümeye yükleyin.

  4. Giriş olarak bir depolama hesabı ve blob kapsayıcısı sağlayın.

    AKS küme yedeklemeleriniz bu blob kapsayıcısında depolanır. Depolama hesabının kümeyle aynı bölgede ve abonelikte olması gerekir.

    İleri'yi seçin.

    Yedekleme için depolama ve blob ayrıntılarının nasıl ekleneceğini gösteren ekran görüntüsü.

  5. Uzantı yükleme ayrıntılarını gözden geçirin ve Oluştur'u seçin.

    Uzantı yüklemesi başlar.

    Yedekleme uzantısının nasıl gözden geçirildiğini ve yükleneceğini gösteren ekran görüntüsü.

  6. Yedekleme uzantısı başarıyla yüklendiğinde, AKS kümeniz için yedeklemeleri yapılandırmaya başlamak için Yedeklemeyi Yapılandır'ı seçin.

    Bu eylemi Yedekleme merkezinde de gerçekleştirebilirsiniz.

    Yedeklemeyi Yapılandır seçimini gösteren ekran görüntüsü.

  7. Yedekleme kasasını seçin.

    Kasa seçmeyi gösteren ekran görüntüsü.

    AKS kümesinin yedeklenmesi için Backup kasasında Güvenilen Erişim etkinleştirilmelidir. Güvenilen Erişimi etkinleştirmek için İzin Ver'i seçin. Zaten etkinse İleri'yi seçin.

    İzin verdikten sonra sonraki adıma nasıl geçildiğini gösteren ekran görüntüsü.

    Not

    • Güvenilen Erişim'i etkinleştirmeden önce abonelikte TrustedAccessPreview kaynak sağlayıcısı için Microsoft.ContainerServices özellik bayrağını etkinleştirin.
    • AKS kümesinde Backup uzantısı yüklü değilse yedeklemeyi yapılandıran yükleme adımını gerçekleştirebilirsiniz.
  8. Yedeklemeler için zamanlamayı ve bunların saklama süresini tanımlayan yedekleme ilkesini seçin. Sonra İleri'yi seçin.

    Yedekleme ilkesinin nasıl seçileceğini gösteren ekran görüntüsü.

  9. Veri Kaynakları sekmesinde Ekle/Düzenle'yi seçerek yedekleme örneği yapılandırmasını tanımlayın.

    Yedekleme Örneği Yapılandırması'nın nasıl tanımlandığını gösteren ekran görüntüsü.

  10. Yedeklenmesi Gereken Kaynakları Seçin bölmesinde, yedeklemek istediğiniz küme kaynaklarını tanımlayın.

    Yedekleme yapılandırmaları hakkında daha fazla bilgi edinin.

    Yedekleme için küme kaynaklarının nasıl tanımlandığını gösteren ekran görüntüsü.

  11. Anlık görüntü kaynak grubu için, kalıcı birim (Azure Disk Depolama) anlık görüntülerini depolamak için kullanılacak kaynak grubunu seçin. Ardından Doğrula'yı seçin.

    Anlık görüntü kaynak grubunun nasıl doğrulandığını gösteren ekran görüntüsü.

  12. Doğrulama tamamlandığında, anlık görüntü kaynak grubundaki kasaya gerekli roller atanmazsa bir hata görüntülenir:

    Gerekli izinler atanmadığında bir doğrulama hatası gösteren ekran görüntüsü.

  13. Hatayı çözmek için Veri kaynağı adı'nın altında veri kaynağını seçin ve ardından Eksik rolleri ata'yı seçin.

    Rol atama işleminin nasıl başlatıldığını gösteren ekran görüntüsü.

    Aşağıdaki ekran görüntüsünde seçebileceğiniz rollerin listesi gösterilir:

    Eksik rollerin nasıl seçildiğini gösteren ekran görüntüsü.

  14. Rol ataması tamamlandığında İleri'yi seçin.

    Yedekleme yapılandırmasına nasıl geçildiğini gösteren ekran görüntüsü.

  15. Yedeklemeyi yapılandır'ı seçin.

  16. Yapılandırma tamamlandığında İleri'yi seçin.

    Yedekleme yapılandırmasının nasıl tamamlandığını gösteren ekran görüntüsü.

    Yedekleme yapılandırması tamamlandığında yedekleme örneği oluşturulur.

    Oluşturulan yedekleme örneklerinin listesini gösteren ekran görüntüsü.

    Yedekleme örneği ayrıntılarını gösteren ekran görüntüsü.

Yedekleme yapılandırmaları

AKS için Azure Backup, yedeklemek istediğiniz AKS kümesi içinde uygulama sınırını tanımlamanıza olanak tanır. Yedekleme yapılandırmalarında kullanılabilen filtreleri kullanarak yedeklenebilecek kaynakları seçebilir ve ayrıca özel kancaları çalıştırabilirsiniz. Tanımlanan yedekleme yapılandırmasına Yedekleme Örneği Adı değeri tarafından başvurulur. Uygulama sınırınızı tanımlamak için aşağıdaki filtreler kullanılabilir:

  1. Yedeklenmesi gereken Ad Alanları'nı seçin, kümedeki tüm mevcut ve gelecekteki ad alanlarını yedeklemek için Tümü'ne tıklayabilir veya yedekleme için belirli ad alanlarını seçmek üzere Listeden seç'i seçebilirsiniz.

    Yedeklemeye eklenecek ad alanlarının nasıl seçildiğini gösteren ekran görüntüsü.

  2. Yedeklenmesi gereken küme kaynaklarını seçmek için kullanabileceğiniz filtreleri görmek için Ek Kaynak Ayarları'nı genişletin. Kaynakları aşağıdaki kategorilere göre yedeklemeyi seçebilirsiniz:

    • Etiketler: Kaynak türlerine atadığınız etiketleri kullanarak AKS kaynaklarını filtreleyebilirsiniz. Etiketleri anahtar/değer çiftleri biçiminde girin. Mantığı kullanarak AND birden çok etiketi birleştirin.

    Örneğin, etiketlerini env=prod;tier!=webgirerseniz, işlem anahtarı ve değeri içeren env bir etikete ve prod değerin olmadığı webanahtara sahip tier bir etikete sahip kaynakları seçer.

    • API grupları: AKS API grubu ve türünü sağlayarak kaynakları da ekleyebilirsiniz. Örneğin, Dağıtımlar gibi yedek AKS kaynaklarını seçebilirsiniz. Kubernetes tanımlı API Grupları listesine buradan erişebilirsiniz.

    • Diğer seçenekler: Küme kapsamlı kaynaklar, kalıcı birimler ve gizli diziler için yedeklemeyi etkinleştirebilir veya devre dışı bırakabilirsiniz. Varsayılan olarak, küme kapsamlı kaynaklar ve kalıcı birimler etkinleştirilir

    Ek Kaynak Ayarları bölmesini gösteren ekran görüntüsü.

    Not

    Tüm bu kaynak ayarları birleştirilir ve mantık aracılığıyla AND uygulanır.

Not

Etiketleri dağıtılan ve yedeklenecek her YAML dosyasına eklemeniz gerekir. Bu, kalıcı birim talepleri gibi ad alanı kapsamlı kaynakları ve kalıcı birimler gibi küme kapsamlı kaynakları içerir.

Çeşitli yedekleme yapılandırmalarını gösteren ekran görüntüsü.

AKS yedeklemesi sırasında kancaları kullanma

Bu bölümde, MySQL dağıtılmış AKS kümesinin uygulamayla tutarlı anlık görüntüsünü (MySQL örneğini içeren kalıcı bir birim) oluşturmak için yedekleme kancasının nasıl kullanılacağı açıklanmaktadır.

Aks yedeklemesinde özel kancaları kullanarak birimlerin uygulamayla tutarlı anlık görüntülerini gerçekleştirebilirsiniz. Birimler, kapsayıcılı iş yükleri olarak dağıtılan veritabanları için kullanılır.

Yedekleme kancası kullanarak, birimin uygulama anlık görüntüsünün alınabilmesi için MySQL podunu dondurmak ve çözmek için komutları tanımlayabilirsiniz. Ardından Backup uzantısı, kancalardaki komutları çalıştırma adımlarını düzenler ve birim anlık görüntüsünü alır.

MySQL dağıtılan bir birimin uygulamayla tutarlı anlık görüntüsü aşağıdaki eylemler gerçekleştirilerek yapılır:

  1. MySQL çalıştıran pod dondurulur, böylece veritabanında yeni işlem yapılmaz.
  2. Birimin anlık görüntüsü yedek olarak alınır.
  3. MySQL çalıştıran pod dondurulmadığından, işlemler veritabanında yeniden gerçekleştirilebilir.

MySQL'i yedeklemek üzere yedekleme yapılandırma akışının bir parçası olarak yedekleme kancasını etkinleştirmek için:

  1. PostgreSQL podunu dondurmak ve çözmek için komutlarla yedekleme kancası için özel kaynağı yazın.

    Önceden tanımlanmış komutları olan postgresbackuphook.yaml aşağıdaki örnek YAML betiğini de kullanabilirsiniz:

    apiVersion: clusterbackup.dataprotection.microsoft.com/v1alpha1
    kind: BackupHook
    metadata:
    # BackupHook CR Name and Namespace
    name: bkphookname0
    namespace: default
    spec:
    # BackupHook Name. This is the name of the hook that will be executed during backup.
    # compulsory
    name: hook1
    # Namespaces where this hook will be executed.
    includedNamespaces: 
    - hrweb
    excludedNamespaces:
    labelSelector:
    # PreHooks is a list of BackupResourceHooks to execute prior to backing up an item.
    preHooks:
       - exec:
          command:
          - /sbin/fsfreeze
          - --freeze
          - /var/lib/postgresql/data
          container: webcontainer
          onError: Continue
    # PostHooks is a list of BackupResourceHooks to execute after backing up an item.
    postHooks:
       - exec:
          container: webcontainer
          command:
             - /sbin/fsfreeze
             - --unfreeze
          onError: Fail
          timeout: 10s
    
    
    
  2. Yedeklemeyi yapılandırmadan önce, AKS kümesinde yedekleme kancası özel kaynağını dağıtmanız gerekir.

    Betiği dağıtmak için aşağıdaki komutu çalıştırın:

    kubectl apply -f mysqlbackuphook.yaml
    
    
  3. Dağıtım tamamlandığında AKS kümesi için yedeklemeyi yapılandırabilirsiniz.

    Not

    Yedekleme yapılandırmasının bir parçası olarak, özel kaynak adını ve kaynağın giriş olarak dağıtılacağı ad alanını sağlamanız gerekir.

    Yedekleme yapılandırması için ad alanının nasıl ekleneceğini gösteren ekran görüntüsü.

Sonraki adımlar