Showing posts with label Zimbra. Show all posts
Showing posts with label Zimbra. Show all posts

8/17/09

Zimbra - bộ phần mềm cộng tác nguồn mở

Zimbra nguyên là một công ty độc lập về phần mềm nguồn mở được Yahoo mua lại năm 2007.  Điều đó cũng chứng tỏ sản phẩm của công ty được đánh giá cao. Theo quảng cáo trên site của hãng thì hiện có 60.000 tổ chức và 40 triệu mailbox đang dùng Zimbra.

Screenshot-1



Zimbra Collaboration Suite là bộ phần mềm cộng tác gồm cả phần mềm chạy trên máy chủ và máy trạm có các đặc điểm, tính năng chính sau:

  • Thư điện tử: một hệ thống thư điện tử hoàn chỉnh gồm Mail server (SMTP, POP3, IMAP, antivirus, antispam, openLDAP, backup, ..., có đầy đủ các tính năng như auto-reply, auto-forward, mail filter, ...) và Mail client (Zimbra desktop và Zimbra Web Client).

  • Lịch công tác (calendar): lịch cá nhân và lịch nhóm, tự động gửi mail mời họp,...

  • Sổ địa chỉ (Contacts): sổ cá nhân và sổ chung của nhóm

  • Danh mục công việc (Task): của cá nhân và nhóm.

  • Tài liệu (Documents): tài liệu dưới dạng wiki của cá nhân hoặc soạn tập thể

  • Cặp hồ sơ (Briefcase): lưu file dùng riêng hoặc chung.

  • Chat: chat nội bộ trong mạng LAN hoặc trên Internet.

  • Tất cả các mục trên đều có phần chạy trên máy chủ (nằm trong Zimbra Server), lưu trên máy chủ để có thể dùng chung được và truy cập được từ bất kỳ đâu có Internet. (nếu cài trên máy chủ có Internet). Các mục đó đều có khả năng share (kể cả các thư mục email: Inbox, Sent) cho người khác dùng chung.

  • Zimbra có hai phần mềm client: Zimbra desktop và Zimbra Web client là giao diện với người dùng. Zimbra desktop (tương tự như Outlook, KMail,...) cài được trên Windows, Mac, Linux. Ngoài ra có thể dùng các mail client khác như Outlook, Evolution, KMail, Thunderbird, ... Hai loại mail client trên ứng với hai cách làm việc:

    • Làm việc online, dùng Zimbra web client. Mọi thông tin sẽ lưu trên máy chủ Zimbra. Zimbra Web Client có hai giao diện: dạng html thông thường, nhanh nhưng ít tính năng và dạng Ajax (tương tự Yahoo Mail). Zimbra Web Client là một trong những Web Client hoàn chỉnh nhất hiện nay (hỗ trợ hầu hết tính năng của Zimbra Server, kể cả chat).

    • Làm việc offline, dùng các mail client còn lại. Riêng Outlook, Apple Desktop và Evolution có thể đồng bộ email, calendar, contacts và task với máy chủ Zimbra, các mail clien khác chỉ dùng đọc và gửi email.





  • Zimbra cũng hỗ trợ làm việc với các điện thoại di động iPhone, Blackberry, ...

  • Zimbra có một kho các Zimlet (một thứ tương tự các extensions của Firefox) mà các quản trị mạng có thể chọn cài để bổ xung tính năng. Mọi người có thể tự viết các Zimlet để kết nối hệ thống Zimbra với các hệ thống thông tin khác hoặc mở rộng tính năng. Đây có lẽ là một trong những điểm mạnh nhất và sẽ gây nghiện cho người dùng giống như các extensions của Firefox vậy.

  • Quản trị hệ thống qua giao diện web khá đầy đủ và chi tiết với nhiều tiện ích. Ví dụ có thể tạo hàng trăm account trong vài phút.


Zimbra có một bản opensource miễn phí và ba bản khác có thu phí. Bản đắt nhất là 35USD/user/năm cho 25 user đầu. Bản opensource có các tính năng sử dụng giống bản có phí, chỉ kém một số tính năng quản trị nhưng có thể bù đắp  bằng cách tự cài bổ xung và hoàn toàn có thể dùng bản opensource vào các hệ thống thật được.

Về kiến trúc bên trong, Zimbra vẫn sử dụng các bộ phần mềm chức năng (nguồn mở) phổ biến như OpenLDAP, Postfix, SpamAssassin, Amavisd, Tomcat, ... cùng với một số phần mềm riêng tạo nên một hệ thống tích hợp chặt chẽ. Có thể không dùng OpenLDAP mà dùng Windows Active Directory, hoặc import user từ một máy chủ Exchange sang.

Hiện tại, Zimbra Server có các bản cài trên Red Hat, Fedora, CentOS, Debian, SUSE, Ubuntu và MacOS. Nếu chỉ cài trên một máy chủ độc lập thì cách cài đặt khá đơn giản và nhanh.

Zimbra có thể cài theo nhiều cấu hình khác nhau từ một hệ thống nhỏ vài chục account trên một máy chủ duy nhất cho đến hệ thống rất lớn hàng nghìn account trên nhiều máy chủ có các chức năng khác nhau. Có khả năng mở rộng (scalability) bằng cách thêm máy chủ dễ dàng.

Hiện đang chạy thử trên một cặp máy chủ clustering bằng drbd và heartbeat và chưa chê được điểm gì. Hoàn toàn có thể thay được cặp Exchange + Outlook (nhất là với trình độ sử dụng như hiện nay). Phải chạy thật và sau một thời gian mới có thể phát hiện xem có lỗi gì không.

7/20/09

Máy chủ Linux có độ sẵn sàng cao (High Availability Server)

High Availability có nghĩa là "Độ sẵn sàng cao", những máy chủ, thiết bị loại này luôn luôn sẵn sàng phục vụ, người sử dụng không cảm thấy nó bị trục trặc, hỏng hóc gây gián đoạn. Để đảm bảo được điều đó, tối thiểu có một cặp máy, thiết bị chạy song song, liên tục liên lạc với nhau, cái chính hỏng, cái phụ sẽ lập tức biết và tự động thay thế. Một ví dụ đơn giản nhất là một số máy chủ có hai bộ nguồn, tự động thay thế nóng cho nhau.

Đối với các máy chủ phần mềm (Mail server, File server, web server, database server,...) vấn đề phức tạp hơn thiết bị phần cứng một chút vì để thay thế tự động được cho nhau, dữ liệu giữa hai máy chủ phải được liên tục đồng bộ đến từng lần ghi dữ liệu dù nhỏ nhất vào ổ cứng.

Phần mềm DRBD (Distributed Replicated Block Device) đảm nhận việc đồng bộ này. Khi được cài đặt trên hai hay nhiều máy chủ trong một nhóm (cluster), drbd thực hiện việc liên tục đồng bộ giữa các partition ổ cứng được chỉ định thông qua mạng. Một lệnh ghi ổ cứng trên máy chủ chính chỉ được coi là hoàn thành khi lệnh ghi đó cũng được thực hiện xong ở các máy chủ khác trong cùng cluster. Nói cách khác, drbd thực hiện việc tạo các nhóm ổ cứng RAID-1 qua mạng, còn gọi là net-raid.

Heartbeat đảm nhận các công việc còn lại (trước năm 2007). Heartbeat chạy thường trú (daemon) trên các máy trong một cluster, thông tin liên tục cho máy phụ biết về trạng thái dịch vụ cần high availability trên máy chính (tôi còn sống và đang làm việc!). Một khi dịch vụ đó "chết", heartbeat lập tức khởi động các dịch vụ thay thế trên máy phụ để chuyển máy đó thành máy chính. Việc thay thế này thực hiện được vì partition ổ cứng trên hai máy đã được drbd đồng bộ như nói ở trên.

Khi một cặp máy chủ Mail server, File server, Web server sẵn sàng cao chạy, nếu máy chính bị shutdown, hỏng card mạng, phần mềm mail server, ... bị treo, v.v... máy chính sẽ bị loại ra ngoài hệ thống, máy phụ lập tức khởi động dịch vụ thay thế và được chuyển thành máy chính.  Quá trình đó hoàn toàn tự động và trong suốt với người dùng. Người dùng chỉ cảm thấy bị gián đoạn lúc máy phụ đang khởi động dịch vụ.

DRBD và Heartbeat đều là phần mềm nguồn mở chạy trên các máy chủ Linux (trong các kho phần mềm của RedHat, SUSE, Ubuntu, CentOS, ... đều có sẵn hai phần mềm này). Dự án Linux HighAvailability (Linux-HA) đã được ứng dụng ổn định trong thực tiễn từ năm 1999 cho những phần mềm quan trọng (The Linux-HA project has been in production in mission-critical applications since about 1999) tại hàng nghìn site trong rất nhiều lĩnh vực khác nhau. Một số ví dụ thành công (success stories) xem ở đây.

Cách giải thích như trên chỉ là cách nói đơn giản nhất về khái niệm high availability trong thế giới nguồn mở. Đi sâu vào đương nhiên còn nhiều chi tiết hơn (drbd có thể thực hiện ba kiểu mirror, cluster có thể gồm nhiều máy và tất cả các máy đều là chính, v.v...). Nguồn mở có cái hay là nếu bạn định tìm hiểu hãy đăng ký vào trường đại học Internet, thụ giáo giáo sư Gúc, lấy hai cái máy để bàn có nối mạng ở cơ quan, tải phần mềm về thử luôn. Điều kiện để được nhập học: chỉ số IQ trên trung bình + khả năng đọc tiếng Anh tốt+ lòng say mê, không ngại khó. Bù lại khi tốt nghiệp bạn sẽ hiểu sâu thêm khá nhiều điều. Sau khoảng 2 tháng qua nhiều thử nghiệm, cuối cùng tôi dừng lại ở một cặp cluster Ubuntu Server 8.04, drbd, heartbeat, Zimbra mail server chẳng kém gì Win Server 2003, Exchange, Outlook. Cài được chỉ là một bước, quản trị được, tinh chỉnh (fine tuning), khắc phục sự cố còn cả một quãng đường dài. Linux desktop tạm coi là đủ và cày mãi cũng chán. Đi thám hiểm vùng đất mới! Một lý do nữa: cặp mail server đang dùng do công ty tin học hàng đầu VN cài chán quá!

Nếu không đủ ba điều kiện nhập học trên, tốt nhất là nấp sau lưng Bill Gate, lén kiếm ba bộ đĩa crack trên về và theo cái wizard của nó. Tôi rất ủng hộ wizard cho máy để bàn (như Mandriva) nhưng với máy chủ thì ... ta sẽ bàn vấn đề này trong một post sau.