Apache Cassandra bakım görevleri

Bu bölümde, Cassandra için periyodik bakım görevleri açıklanmaktadır.

Entropi önleme bakımı

Apache Cassandra halka düğümleri, tüm düğümlerde tutarlılık sağlamak için düzenli bakım gerektirir. Bu bakım işlemini gerçekleştirmek için aşağıdaki komutu kullanın:

apigee-service apigee-cassandra apigee_repair -pr

Apigee, bu komutu çalıştırırken aşağıdakileri önerir:

  • Her Cassandra düğümünde (tüm bölgeler veya veri merkezleri genelinde) çalıştırılır.
  • Halkadaki tüm düğümlerde tutarlılık sağlamak için her seferinde bir düğümde çalıştırın. Onarım işlerini aynı anda birden fazla düğümde çalıştırmak Cassandra'nın sağlığını olumsuz yönde etkileyebilir.

    Bir düğümdeki onarım işinin başarıyla tamamlanıp tamamlanmadığını kontrol etmek için düğümlerin system.log dosyasında en son onarım oturumunun UUID'sini ve "oturum başarıyla tamamlandı" ifadesini içeren bir giriş olup olmadığına bakın. Aşağıda örnek bir günlük girişi verilmiştir:

    INFO [AntiEntropySessions:1] 2015-03-01 10:02:56,245 RepairSession.java (line 282) [repair #2e7009b0-c03d-11e4-9012-99a64119c9d8] session completed successfully"
    Ref: https://support.datastax.com/hc/en-us/articles/204226329-How-to-check-if-a-scheduled-nodetool-repair-ran-successfully
  • Nispeten düşük iş yükü dönemlerinde çalıştırın (araç sisteme önemli ölçüde yük bindirir).
  • Cassandra'nın "unutulan silme işlemleri"yle ilgili sorunları gidermek için en az yedi günde bir çalıştırın.
  • Farklı günlerde farklı düğümlerde çalıştırın veya her düğümde çalıştırma arasında birkaç saat olacak şekilde planlayın.
  • Yalnızca düğümün birincil bölümleyici aralığını belirtmek için -pr seçeneğini (bölümleyici aralığı) kullanın.

Cassandra için JMX kimlik doğrulamasını etkinleştirdiyseniz nodetool çağrısını yaptığınızda kullanıcı adını ve şifreyi eklemeniz gerekir. Örneğin:

apigee-service apigee-cassandra apigee_repair -u username -pw password -pr

apigee_repair: için desteklenen seçenekleri kontrol etmek üzere aşağıdaki komutu da çalıştırabilirsiniz.

apigee-service apigee-cassandra apigee_repair -h

Not: apigee_repair, Cassandra'nın onarımını gerçekleştirmeden önce ek kontroller yapan Cassandra'nın nodetool onarım aracının etrafında bir sarmalayıcıdır.

Daha fazla bilgi için aşağıdaki kaynaklara bakın:

Günlük dosyası bakımı

Cassandra günlükleri her düğümün /opt/apigee/var/log/apigee-cassandra dizininde depolanır. Varsayılan olarak, her biri en fazla 20 MB boyutunda olmak üzere en fazla 50 günlük dosyası oluşturulabilir. Bu sınıra ulaşıldığında, yeni günlükler oluşturulurken eski günlükler silinir.

Cassandra günlük dosyalarının çok fazla yer kapladığını fark ederseniz log4j ayarlarını düzenleyerek günlük dosyalarına ayrılan alan miktarını değiştirebilirsiniz.

  1. Aşağıdaki özellikleri ayarlamak için /opt/apigee/customer/application/cassandra.properties öğesini düzenleyin. Bu dosya yoksa oluşturun:
    conf_logback_maxfilesize=20MB
    # max file size
    conf_logback_maxbackupindex=50 # max open files
  2. Aşağıdaki komutu kullanarak Cassandra'yı yeniden başlatın:
    /opt/apigee/apigee-service/bin/apigee-service apigee-cassandra restart

Disk alanı bakımı

Her diskin en az yüzde 50'sinin boş olduğundan emin olmak için Cassandra disk kullanımını düzenli olarak izlemeniz gerekir. Disk kullanımı yüzde 50'nin üzerine çıkarsa kullanılan yüzdeyi azaltmak için daha fazla disk alanı eklemenizi öneririz.

Cassandra, kendi disk kullanımını azaltmak için aşağıdaki işlemleri otomatik olarak gerçekleştirir:

  • Jetonların süresi dolduğunda kimlik doğrulama jetonunun silinmesi. Ancak, yapılandırmanıza bağlı olarak jetonların kullandığı disk alanını temizlemeniz birkaç hafta sürebilir. Yeterli disk alanı elde etmek için otomatik silme işlemi yeterli değilse yer kazanmak amacıyla jetonları manuel olarak silme hakkında bilgi edinmek için destek ekibiyle iletişime geçin.
  • Veri sıkıştırma hakkında not: Private Cloud için Edge 4.51.00'den itibaren, Apigee Cassandra'nın yeni kurulumları Seviyeli Sıkıştırma Stratejisi ile anahtar alanları oluşturur.

    Private Cloud 4.51.00'a yükseltilen Private Cloud için Edge'in eski sürümlerinin yüklemeleri önceki sıkıştırma stratejisini kullanmaya devam edecektir. Mevcut sıkıştırma stratejisi SizeTieredCompactionStrategy ise daha iyi disk kullanımı sağlayan LeveledCompactionStrategy'ye geçmenizi öneririz.

Not: Cassandra veri sıkıştırması gerçekleştirirken önemli miktarda CPU döngüsü ve bellek kullanabilir. Ancak sıkıştırma işlemi tamamlandıktan sonra kaynak kullanımı normale döner. Sıkıştırmanın çalışıp çalışmadığını kontrol etmek için her düğümde 'Nodetool compactionstats' komutunu çalıştırabilirsiniz. compactionstats işlevinin çıktısı, yürütülecek bekleyen sıkıştırma işlemlerinin olup olmadığını ve tamamlanma süresini tahmini olarak size bildirir.