Perşembe, Şubat 03, 2011

Zimbra ve Solaris10

Açık kaynak yazılımlarla yaptığım testlerden birinde de eposta sistemi olarak Zimbra ve Solaris10 birlikteliğini test ettim.


Açık söylemek gerekirse biraz zor bir test oldu. Hatırı sayılır derecede zaman harcadım ve çok sayıda kaynaktan faydalanmak zorunda kaldım. Bir yandan iyi çünkü zihninizi çalıştırıyor, diğer yandan da başka işleri yetiştirme telaşı arasında 'yine mi sorun?' diye içinizden geçirmekten kendinizi alamıyorsunuz.


Kurulum adımları : Standart bir kurulum sırasında karşılaşılacak adımlardan burada bahsetmeyeceğim. Amacım karşılaştığım problemleri ve çözümlerimi paylaşmak.


Öncelikle kurulum paketi ; şu an Zimbra'nın Linux için 6.x sürümleri olmasına rağmen Solaris10 için 5.x seviyesinde bir paketi mevcut. Linux sürümünden eksiği / fazlası nedir henüz bilmiyorum. Test ettikçe göreceğiz.


1- Kurulum paketi aşağıdaki linkten indirilebilir :

http://sourceforge.net/projects/zimbracommunity/files/Builds/Solaris/

2- Kurulumu ilk başlattığımda bu paketlerin eksik olmasına kızdı ve benden yüklememi istedi :


    CSWsudo...     MISSING: CSWsudo
    CSWgsed...     MISSING: CSWgsed
    CSWgtar...     MISSING: CSWgtar
    CSWlibidn...     MISSING: CSWlibidn
    CSWpcre...     MISSING: CSWpcre
    CSWlibgmp...     MISSING: CSWlibgmp
    CSWgcc3corert...     MISSING: CSWgcc3corert
    CSWgcc3g++rt...     MISSING: CSWgcc3g++rt

3- Kurulum sırasında yine bir şeye kızdı. :)


Checking for installable packages


ERROR: Required Core package zimbra-core not found in ./packages
Exiting

Biraz inceleyince farkettim ki, açtığım tar paketi bazı dosyaların isimlerini kırpmış ve kısaltmıştı. O nedenle de paketleri bulamıyordu uygulama.


-rw-r--r--   1 root     root         39M Mar 18  2009 zimbra-apache_5.0.15_GA_2852.SOLARIS10_i386.dstr
-rw-r--r--   1 root     root         19M Mar 18  2009 zimbra-ldap_5.0.15_GA_2852.SOLARIS10_i386.dstrea
-rw-r--r--   1 root     root        276M Mar 18  2009 zimbra-core_5.0.15_GA_2852.SOLARIS10_i386.dstrea
-rw-r--r--   1 root     root         19M Mar 18  2009 zimbra-spell_5.0.15_GA_2852.SOLARIS10_i386.dstre
-rw-r--r--   1 root     root         14M Mar 18  2009 zimbra-snmp_5.0.15_GA_2852.SOLARIS10_i386.dstrea
-rw-r--r--   1 root     root        3.8M Mar 18  2009 zimbra-proxy_5.0.15_GA_2852.SOLARIS10_i386.dstre
-rw-r--r--   1 root     root         85M Mar 18  2009 zimbra-mta_5.0.15_GA_2852.SOLARIS10_i386.dstream
-rw-r--r--   1 root     root        113M Mar 18  2009 zimbra-logger_5.0.15_GA_2852.SOLARIS10_i386.dstr
-rw-r--r--   1 root     root        318M Mar 18  2009 zimbra-store_5.0.15_GA_2852.SOLARIS10_i386.dstre



Paketlerin isimlerini tekrar .dstream'e tamamladıktan sonra kurulum devam etti.


4- hostname dosyası sorunu. /usr/sbin/host dosyasının varlığını ve 777 yetkisinin verilmesini istiyor kurulum paketi. Verince devam etti.


/opt/zimbra/libexec/get_plat_env.sh: line 26: /usr/sbin/host: Permission denied
chmod 777

5- Yine eksik paketler. Bulması zor olmadı ama yine de iş..


ld.so.1: slapd: fatal: libltdl.so.3: open failed: No such file or directory
/opt/zimbra/bin/ldap: line 89: 11155 Killed                  $SUDO /opt/zimbra/libexec/zmslapd -l LOCAL0 -4 -u zimbra -h "${bind_url
}" -f /opt/zimbra/conf/slapd.conf



CSWlibtool
CSWsunmath
CSWlibltdl3
CSWlibnet


6- Port çakışması. Sendmail'in kapatılması ve 25 portunun serbest bırakılması gerekiyor.



Port conflict detected: 25 (zimbra-mta)


Şu an benimle aynı aşamalardan geçmişseniz kurulumu tamamlamış olmanız gerekiyor. Bu noktadan itibaren yapılandırma ayarları başlıyor. En çok kızdığı ise MX kaydı ve hostname çözümlemesi. Bu durumun nasıl bir soruna yol açtığını biraz ileride tekrar göreceğiz.


7- LDAP servis problemi. Eğer zimbra'nın istediği gibi doğru bir FQDN ve MX kaydı oluşturmamışsanız LDAP servisinin yapılandırması sırasında aşağıdaki hata mesajı alınıyor.


Unable to determine enabled services. Cache is out of date or doesn't exist.


Bu durumda yapılması gereken /etc/hosts dosyasında hostname dışında başka bir isim daha vermek, mevcut DNS'nizin bu ismi çözebilmesini sağlamak ve bir de /etc/resolv.conf içinde belirtilen DNS domain için aynı isimle bir MX kaydı oluşturmak. Bu durumda LDAP servisi de normal olarak yapılandırılacak ve çalışacaktır.


8- Java heap size problemi. Sunucunun (zimbra) bazı servisleri açıldıktan sonra kapanıyor ve tekrar açılmıyor. Örneğin, zmmailboxdctl. 


"Could not reserve enough space for object heap"


Bu durumda aşağıdaki kaynakların verdiği bilgileri kullanarak java bellek kullanım oranını değiştirmeniz gerekiyor. 4 GB bellek bulunan bir Solaris10 sunucusunda 15-25 arasındaki değerlerle servisleri çalıştırmayı başardım. Ancak 25'in üzerine çıktığımda servisler tekrar patladı.


# zmcontrol stop
# pkill -9 java
# zmlocalconfig -e mailboxd_java_heap_memory_percent=25
# zmcontrol start


http://www.zimbra.com/forums/developers/28053-status-solaris-10-zimbra-port.html (çalışmadı)
http://www.zimbra.com/forums/developers/26091-free-good-home-3.html
http://www.zimbra.com/forums/developers/28053-status-solaris-10-zimbra-port.html
http://www.zimbra.com/forums/administrators/25370-zmmailboxdctl-not-running.html


Tüm bu adımları gerçekleştirdikten sonra ,hala sıkılmamış ve devam etmeye niyetliyseniz benimle artık aynı noktadasınız demektir. :) Çünkü henüz uygulamayı incelemeden elimdeki notları kayıt altına almak ve kaybolmadan paylaşmak istedim. Bu noktadan sonra hepimiz eşitiz.


Yolunuz açık olsun :)