Zimbra Performans Optimizasyonu Rehberi – Bölüm 3: LDAP, MTA ve Yük Dengeleme

-

Performans optimizasyonu serimizin son bölümüne hoş geldiniz. İlk bölümde donanım ve işletim sistemi ayarlarını, ikinci bölümde Mailbox sunucu yapılandırmasını ele almıştık. Bu son yazıda LDAP dizin servisi, MTA (posta aktarım aracısı) ve yük dengeleyici optimizasyonlarını inceliyoruz.

Zimbra OpenLDAP Optimizasyonu

LDAP, Zimbra’nın kullanıcı hesapları, dağıtım listeleri, sunucu yapılandırmaları ve COS (Class of Service) bilgilerini sakladığı dizin servisidir. Büyük kurulumlar için LDAP performansı kritik öneme sahiptir.

Multi-Master Replikasyon

ZCS 8.0 ve sonrasında Multi-Master Replikasyon (MMR) desteği mevcuttur. Bu yapı sayesinde:

  • Birden fazla LDAP sunucusu yazma işlemi kabul eder
  • LDAP sunucusu arızalanırsa diğeri devralır
  • Coğrafi olarak dağıtık yapılarda gecikme azalır

LDAP Replika Sunucuları

Ana LDAP sunucusuna yükü azaltmak için replika sunucular kurun. Özellikle MTA sunucularının LDAP sorgularını replika sunuculardan yapması önerilir. Bu, ana LDAP sunucusunun Mailbox sunucu isteklerine odaklanmasını sağlar.

# LDAP replikasyon durumunu kontrol edin
/opt/zimbra/libexec/zmreplchk

LDAP Önbellek Ayarları

Çok sayıda alan adı barındıran ortamlar için LDAP önbellek boyutlarını artırın:

# 20.000-30.000 domain barındıran ortamlar için
zmlocalconfig -e ldap_cache_domain_maxsize=30000
zmlocalconfig -e ldap_cache_external_domain_maxsize=10000

# Grup önbelleği
zmlocalconfig -e ldap_cache_group_maxsize=2000

MTA (Postfix) Optimizasyonu

Zimbra’nın MTA bileşeni Postfix’tir ve e-posta tesliminin merkezi noktasıdır. Yüksek hacimli e-posta trafiği için aşağıdaki optimizasyonlar önerilir.

LDAP Bağlantılarını Replikalara Yönlendirin

Postfix’in LDAP sorgularını ana sunucu yerine replika sunuculardan yapmasını sağlayın. Bu, ana LDAP sunucusu üzerindeki yükü önemli ölçüde azaltır:

# Postfix LDAP yapılandırmasını kontrol edin
postconf -n | grep ldap

SpamAssassin Optimizasyonu

SpamAssassin’in Bayes otomatik öğrenme özelliğini devre dışı bırakın. Bu özellik büyük kurulumlar için ciddi performans yükü oluşturur:

# /opt/zimbra/conf/salocal.cf.in dosyasında
bayes_auto_learn 0

Ayrıca AWL (Auto-Whitelist) eklentisini de devre dışı bırakın:

# /opt/zimbra/conf/spamassassin/v310.pre dosyasında
# loadplugin Mail::SpamAssassin::Plugin::AWL  (bu satırı yorum yapın)

Dosya Kilitleme Yöntemi

SpamAssassin için dosya kilitleme yöntemini flock olarak ayarlayın:

# /opt/zimbra/conf/spamassassin/local.cf.in dosyasında
lock_method flock

DNSBL ve IP Beyaz Listesi

Spam filtreleme performansını artırmak için DNS tabanlı kara listeler (DNSBL) kullanın. Güvenilir gönderenler için IP beyaz listesi oluşturarak gereksiz spam kontrolü atlayın:

# Postfix restriction sınıflarında DNSBL ekleyin
zmprov ms $(zmhostname) zimbraMtaRestriction \
  "reject_rbl_client zen.spamhaus.org"

E-posta güvenliği yapılandırması hakkında daha detaylı bilgi için SPF, DKIM ve DMARC rehberimize göz atabilirsiniz.

Yük Dengeleyici (Load Balancer) Yapılandırması

Çok sunuculu Zimbra kurulumlarında yük dengeleyici doğru yapılandırılmalıdır. İşte en iyi uygulamalar:

Temel İlkeler

  • Tüm trafiği Nginx proxy’lerine dağıtın: IMAP, POP3 ve HTTP trafiğini tüm proxy sunuculara eşit şekilde yönlendirin.
  • Oturum yapışkanlığı (session stickiness) kullanın: 5-15 dakikalık süreyle oturum kalıcılığı sağlayın. Bu, kullanıcıların oturum boyunca aynı sunucuya yönlendirilmesini garantiler.
  • Katman 4 (TCP) yük dengeleme kullanın: Katman 7 (HTTP) yük dengeleme önemli performans yükü oluşturur. TCP seviyesinde dengeleme çok daha verimlidir.
  • Kaynak IP’yi koruyun: NAT kullanarak kaynak IP adreslerini değiştirmeyin. Gerçek istemci IP adreslerinin Zimbra sunucularına ulaşması, güvenlik logları ve hız sınırlama için gereklidir.

Örnek HAProxy Yapılandırması

# HAProxy TCP modu örneği
frontend zimbra_https
    bind *:443
    mode tcp
    default_backend zimbra_mailbox

backend zimbra_mailbox
    mode tcp
    balance roundrobin
    stick-table type ip size 200k expire 10m
    stick on src
    server mail1 10.0.0.1:443 check
    server mail2 10.0.0.2:443 check

Nginx Proxy Optimizasyonu

Zimbra’nın yerleşik Nginx proxy’si için bağlantı havuzu ayarları:

# Proxy worker ve bağlantı sayısı
zmprov ms $(zmhostname) zimbraReverseProxyWorkerProcesses auto
zmprov ms $(zmhostname) zimbraReverseProxyWorkerConnections 10240

Performans İzleme ve Analiz

Optimizasyonlardan sonra sürekli izleme yapmanız gerekir. Brendan Gregg’in USE (Utilization, Saturation, Errors) metodolojisi sistem performansı analizi için mükemmel bir çerçevedir:

  • Utilization (Kullanım): CPU, bellek, disk ve ağ kullanım oranları
  • Saturation (Doygunluk): Kuyruk uzunlukları, bekleme süreleri
  • Errors (Hatalar): Hata oranları, zaman aşımları
# Hızlı kontrol komutları
vmstat 1 10        # CPU ve bellek kullanımı
iostat -x 1 10     # Disk I/O performansı
ss -s              # TCP bağlantı istatistikleri
zmcontrol status   # Zimbra servis durumu

Seri Özeti

Bu üç bölümlük seride Zimbra performans optimizasyonunun tüm katmanlarını ele aldık:

  1. Bölüm 1: Donanım seçimi, disk yapılandırması, işletim sistemi ve ağ ayarları
  2. Bölüm 2: Java bellek ayarları, MariaDB yapılandırması, Lucene indeksleme
  3. Bölüm 3 (bu yazı): LDAP replikasyon, Postfix MTA ve yük dengeleme

Her kurulumun gereksinimleri farklıdır. Bu rehberdeki değerleri kendi ortamınıza göre test ederek uyarlayın ve değişiklik öncesi mutlaka yedek alın.


Destek ve İletişim

Zimbra performans optimizasyonu veya kurulum konularında profesyonel destek almak için [email protected] adresinden bize ulaşabilir veya iletişim sayfamız üzerinden iletişime geçebilirsiniz.

CEVAP VER

Lütfen yorumunuzu giriniz!
Lütfen isminizi buraya giriniz

Benzer yazılar