Contoh Skema & Topologi Zimbra untuk Implementasi Skala Besar

Zimbra mail server merupakan aplikasi mail server yang sangat mumpuni dan bisa digunakan untuk account mulai dari belasan hingga puluhan ribu atau bahkan ratusan ribu. Hal ini bisa dilakukan Zimbra, dengan menggunakan skema multi server sbb.:

Keterangan :

  1. Semua server menggunakan IP private. Hanya butuh 1 IP public untuk kesemua server.
  2. Semua server diinstall menggunakan Virtualization Technology. Bisa saja diinstall diatas mesin fisik namun akan membutuhkan server fisik dalam jumlah yang cukup banyak.
  3. Pada skema diatas, kami membedakan jalur untuk akses HTTP (Web), SMTP Lokal (LMTP) dan SMTP External. Akses POP3 dan IMAP akan merujuk pada akses yang sama dengan akses HTTP. Jika diperlukan, jalur akses masing-masing server bisa juga dibedakan untuk mengurangi beban atau sesuai dengan kebutuhan.
  4. Jalur HTTP baik port 80 maupun port 443 (HTTPS), POP3 dan IMAP menggunakan akses Zimbra Proxy. Zimbra Proxy ini yang akan di NAT ke IP Public. Zimbra Proxy akan menerima DST-NAT untuk port : 80, 110, 143, 443, 993 dan 995. Zimbra Proxy memiliki memcached dan route lookup handler (lihat ini) yang akan meneruskan paket akses ke mailbox server yang sesuai.
  5. Pada skema diatas, Zimbra menggunakan 5 buah mailbox server untuk membagi beban (load balancing) dan masing-masing diperkirakan memiliki 3000 s/d 5000 user yang berarti bahwa skema ini menggunakan asumsi 15 ribu hingga 25 ribu user. User tetap mengakses Zimbra dengan 1 nama, misalnya mail.warungpojok.com dan akan diteruskan ke mailbox server yang berkesesuaian (mailbox server tempat dimana accountnya berada).
  6. Semua mailbox server berada dibelakang layar dan tidak terekspos ke sistem public. Semua akses menggunakan jalur Zimbra Proxy.
  7. Untuk SMTP, dibedakan jalur antara SMTP untuk incoming, SMTP lokal dan SMTP Relay.
  8. SMTP Incoming berfungsi sebagai penerima email dari luar. Port 25 di NAT ke server ini. Server ini juga yang berfungsi sebagai MX Records. Fungsi lainnya adalah sebagai anti spam dan anti virus. Jika memiliki anti spam dan anti virus appliance, SMTP Incoming ini bisa digantikan dengan appliance tersebut.
  9. SMTP Lokal dibagi 3 fungsi, yaitu untuk koneksi normal (MTA Lokal), SMTP Aplikasi untuk berhubungan dengan pengiriman email oleh aplikasi dan SMTP mailing list untuk SMTP yang sifatnya berupa broadcast dan mailing list.
  10. Port 465 dan port 587 bisa di NAT-kan pada SMTP outgoing seperti pada skema diatas atau bisa juga di NAT-kan pada MTA lokal. Port ini digunakan untuk melakukan pengiriman email dari mail client menggunakan protokol SSL dan TLS.
  11. Pada skema diatas, kami tidak menggambarkan LDAP Server, hanya memberikan contoh LDAP server diletakkan di Zimbra Proxy. Sebaiknya LDAP Server dipisah dalam 1 buah server tersendiri dan jika perlu direplikasi ke LDAP Replica. Nantinya LDAP replica digunakan oleh server lain untuk mengurangi beban akses ke LDAP server master.

BENEFIT

Ada beberapa keuntungan dari penggunaan contoh skema diatas, antara lain :

  1. Load balancing dari sisi mailbox server. Akses HTTP, IMAP dan POP3 bisa dibagi bebannya ke beberapa mailbox server. Penambahan account bisa dipenuhi dengan cara menambahkan jumlah mailbox server.
  2. Jika akses melalui Zimbra Proxy penuh, bisa diatasi dengan membuat beberapa Zimbra Proxy, misalnya dengan nama webmail.warungpojok.com, imap.warungpojok.com, pop.warungpojok.com dan lain-lain. Bisa juga dengan konsep round-robin DNS, salah satunya menambahkan beberapa IP public untuk 1 nama yang sama, misalnya untuk mail.warungpojok.com menggunakan 2 atau lebih IP public yang merujuk ke Zimbra Proxy yang berbeda.
  3. Kita lebih mudah membuat rule untuk email masuk dan email yang keluar.
  4. Jika beban MTA lokal cukup besar, kita bisa menduplikasi MTA tersebut menjadi beberapa MTA/SMTP lokal, misalnya mailbox server 1 menggunakan MTA 1, mailbox server 2 menggunakan MTA 2 dan seterusnya.
  5. Anti spam dan anti virus cukup diset di SMTP Incoming dan Outgoing sehingga filter dan rule yang diterapkan tidak mengganggu pengiriman email sesama lokal.