Tag Archives: servers

On my way to Linux – Part One

Right, so here is the scope. I’ve been a MacOS X user for many years, not that I have been a fanatic one but I simply used what works best for me. In any case, I own 3 Mac Mini’s and mostly got a new MacBook Pro every year. I also converted quite a lot of people over the Mac. Recently, I’ve even got a iPhone (well, 1 1/2 years ago) after many years of using a BlackBerry. I have to say, the “Apple way” has worked very well for me.

That being said, I have always followed how Linux has been developing, especially on the desktop side (all of our servers run Linux). Actually, with Ubuntu 8, I seriously was thinking of using Linux on the desktop, but back then some application were missing. Later with Ubuntu 9, I took another try, but it still wasn’t ready for me. Now, with Ubuntu 10, the distro is not only very mature, but also, the applications I need are mostly up to date and work well for me.

So, today I set out to see if I will be able to replace my workplace which is based on MacOS X to Linux Ubuntu. My current setup is a MacBook Pro 15″ as my main machine hooked up to a 23″ Cinema screen. I was thinking to replace this setup with a desktop machine and have a netbook (the Asus EeePC 1201PN looks very sweat) as well. Since I still have a older MacMini lying around I set out to get Ubuntu 10 running on it.

Installing Ubuntu on a MacMini

Installing Ubuntu 10 on the MacMini was easy and surprisingly Ubuntu found every bit of hardware, it even found my Bluetooth Logitech Mouse within seconds.WIFI, Ethernet and external hard drives were also found without problems. For those wondering how to install Ubuntu on MacMini all you have to do is to partition your drives with BootCamp, insert the Ubuntu CD and then reboot the Mac (hold down the ALT key). Select the “Window” partition and it will start up from the Ubuntu CD and will start to install it.

So, how is it working with Ubuntu 10?

What can I say, except that the people over at Canonical (the company behind Ubuntu) has fulfilled the promise to bring the best Linux experience to the desktop. I have had no driver problems, could immediately connect to the WIFI network and installing new software even easier then on the Mac.

But we already knew that Ubuntu is good, right? So the real thing for me is to see if I can get my workspace going under Ubuntu. In short, this means that all my applications and workflow will be available and doable with Ubuntu. Thus the rest of this blog post and part two and maybe even part three will be about finding and using the equalivant of of the Linux app to the Mac ones.

I won’t go into the obvious applications that are the same on each operating system like browsers or file explorer systems. The good thing to know is that Firefox and Google Chrome and all their extensions work the same under any operating system. One thing I noted so far, is that Firefox does not seam to have the memory leak problems like the one on the Mac.

Eclipse

I’ve used Eclipse for a long time and recently switched to Coda on the Mac, since Eclipse just eat away all the RAM I had and even crashed many times a day. I’m happy to see that Eclipse under Linux is rock solid and I can use my favorite development environment again.

Mail / Calendar / Contacts / iCal / Address Book

This is a no brainer for me, since I have been using Google Apps for some time and thus my Mail and Calendar already resides in the cloud I can simply continue using my browser without any OS worries. I never used Mail.app (instead used the Browser or Mailplane) and used Spanning Sync for keeping iCal and my Address Book in sync with Google Apps. Since, I don’t like any Mail apps or Calendar under Linux I simply opted to use the browser for Mail, Calendar and Address Book (this will keep it in sync with the iPhone/Android).

Word / Excel / Powerpoint

Right, so much has been said, about using OpenOffice instead of iWork or Microsoft Office. In my testing I have to say that OpenOffice 3.x works fine, but maybe it is just me or does OpenOffice on Linux look like Word 98? Feels like flying back in time… I have to say, that I haven’t tested this part in depth and so I can’t really give any verdict on this.

I have some other apps I need to work with like Aperture, TextExpander, 1Password, etc. and will write on these on the second part.

I hope this helps anyone that is wanting to switch over to Ubuntu. I haven’t made up my mind, if I should switch full time to Ubuntu. At the current state, the MacOS X with its Unix root feels like the grown up Linux, just more polished and with all the apps in the right place.

Please let me know your thoughts in the comment section.

Nginx, Apache, SSL and signed by an unknown certifying authority

We just moved a whole bunch of servers to a new hosting center and moved from CentOS to Ubuntu (server) and Apache to Nginx (more on this in a later blog post).

While we migrated mostly everything without problems we were confronted with the problem that our SSL certificate gave us an error message of the form:

“The certificate for this website was signed by an unknown certifying authority”

This was rather strange because the same certificate worked with Apache just fine. After some time and searching for a solution we found that we had to tell Nginx to use the SSL Chain file as well. The only problem is that Nginx does not have a explicit parameter like Apache has. In Apache the SSL config looks like this (we use a GoDaddy certificate):

SSLEngine On
SSLCertificateFile /etc/httpd/ssl/youcert.crt
SSLCertificateKeyFile /etc/httpd/ssl/yourkey.key
SSLCertificateChainFile /etc/httpd/ssl/gd_bundle.crt

Now, in order to get this working in Nginx you need to append the “gd_bundle.crt” to your crt file, which is quite simple with the following commands (do a backup of any files before doing this!):
cat gd_bundle.crt >> yourcert.crt

Then simply restart Ngnix and all is back to normal (but just really faster with Nginx then with anything else:-) ).

VMWare ESX(i) Could not power on…

We run most of our servers on some sort of virtual environment. Be it XEN or VMWare ESX(i). This has proofed to be a very cost effective way to fully leverage each machine’s CPU and RAM.

In any case, the other day we had to adjust some RAM settings for one of the virtual servers. After setting the RAM and restarting the machine we got an error message saying;

“Could not power on vm: no space left on device”

You can imagine, that we were totally shocked as this was a customer server and time was running out. So, the only cause of this could be that VMWare must have some problems with the expanded RAM.

As it turns out, the solution to this was quite simple. VMWare adjusts the SWAP file and in our case, there was no more space left on the drive that this virtual machine was running on. So, if you are prompted with this message you should go into the general server configuration and adjust the SWAP location. Then adjust it as well in your individual virtual machine environment.

Exchange, Kerio, Zimbra and Google or the Quest for the perfect Collaboration tool

One of my main goals in my everyday work flow is to keep all my informations at one central location and have access to them from everywhere. Meaning I want all my emails, contacts and calendar entries in sync, whether I use my mobile phone, my own laptop or I have to get to my data in the Maldives.

In this post I will try to share my experiences with each platform and how it fit my personal work flow. As a consultant I have deployed some of these in companies as well. Wherever possible I will try to touch the company advantages of it.

Exchange Server 2003/2007

Let’s start with the most popular Collaboration platform of it all. Exchange has been around for a long time and has matured from a “very hard to configure” system to a “wow, that was easy”, “Wizard driven” experience. I can remember setting up my first Exchange Server, swearing for 3 weeks and then reformat the whole server to start all over again. Thus when I installed Exchange Server 2003 about 2 years ago, it was a pleasant surprise.

Of course, MS still thinks it has to invent its own protocols and “forces” users to use them, as such that “normal” mail server functions like POP3 and IMAP are not enabled by default on Exchange 2003 and eMail addresses take a internal Domain format rather then the standard DNS system format. But once you pass those hurdles and configure your system to your likings, enabled MobileSync, finished configuring SharePoint, set access permission and so on, I have to say that Exchange Server 2003 is a very good collaboration platform.

Web Access over their OWA platform looks very good (at least on Windows with Internet Explorer) for FireFox or MacOS users the experience is somehow, let’s say, ok. After all, their main client is Outlook or Entourage and both perform very well. Calendar and contacts are synced instantly and there is nothing else to do then simply use it. Since SP2 push email syncing for mobile devices (Windows Mobile) is built in. To be honest, the Exchange Server platform has a lot going for it and it is therefore no wonder why so many companies use it.

Kerio MailServer

kerioSince Exchange Server is only available on the Windows operating system, the team from Kerio MailServer tries to fill the void for all those MacOS X and Linux system admins that are in need for a Collaboration platform. Kerio features almost the same as the Exchange offering as it has Calendar, Contacts and of course eMail functions built in.

Especially, the web interface for the end user of the Kerio MailServer, is one of the bests I have ever seen. These guys, had a intuitive web interface 3 years ago when AJAX was still know as a washing cream (here in Europe) and not some sort of geek term.

I have personally, used Kerio MailServer within my company for the last 3 years. But to be honest, their take to syncing a  Calendar and contacts has been mediocre in the past. Somehow, it never really worked or was a clutch from an end user point of view. But in recent times, they have done their home work and their Connectors, small applications that you need to install for being apply to sync Outlook and/or Apple Mail, iCal and AddressBook or Entourage, have matured a lot.

Last but not least, their Administration client (yes another client), must be the best there is to manage a mail server. Also, the built in Anti-Spam and Anti-Virus functions are impressive. In our use of Kerio MailServer we caught Spam message down to about 1% per mailbox.

The only grips I have with them is that their pricing is quite high, compared to the Exchange Server or the other platforms described here. Plus, their support for mobile devices is somehow limited (but more to that further down in this post).

Zimbra

Now, being myself a open source fan (I mean we publish software under open source licenses ourselves) I have/had high hopes for the Zimbra Collaboration Platform. Since I wanted to deploy the server on our own servers I downloaded the available Open Source Edition. In it’s true Linux fashion you will have to start a script to install Zimbra.

I was pleasantly surprised how well thought out the installer script was. It asked me the most relevant questions, checked that I had all required libraries installed (yum is your friend here) and presented me with every step of the installation process. In the end, all I had to to was to change the password for the admin account and Zimbra was installed.

The experience with Zimbra is that everything is within your browser. The administration takes place within your favorite browser (something that Kerio should have done) and feels very mature. Personally, I have missed the advanced spam filter and Anti-Virus settings that Kerio features, but after all, Zimbra comes with a lot of functions out of the box.

I am also very impressed by their Zimbra Desktop product. The application serves well as a replacement for Outlook and Apple Mail. It bundles Mail, Contacts and Calendar in one application, one convenient view and takes the approach of GTD (Getting Things Done) more then any other platform.

zimbraIn my testing I have had no problems with syncing my iCal Calendar to the Zimbra server. Events created within Zimbra (Web or Desktop) were pushed down to iCal within seconds. But what is really bothering me with Zimbra, is that they take the approach of giving a half backed Open Source solution to the community. Such that key pieces, such as the Apple Sync application (to be able to sync your contacts too) and other key applications (MAPI for Outlook users) are only available to paid “professional” Zimbra customers.

While I don’t have a problem to pay for products, especially open source products, the price of a Zimbra professional Edition for 25 mailboxes, Mobile Access and 3 Support Incidents for $1875/year seamed to be a bit way too much. I mean, I only want to have the option to sync my Calendar and Contacts with my own installation, on our own network, on our own servers!

So far, Exchange Server, especially the SBS (Small Business Server Edition) is still the most affordable platform. That is, until…

Here comes Google

I have to admit, I have not been a Google fan in the past. Whenever possible I tried to avoid any of their products, be it Desktop Search, their web search portal, Google Earth or anything. But I have had to rethink my attitude towards their Google eMail Service when I learned to use it more and seeing how it matured over the past.

Today, I have to say, the “Google Experience” and what they offer for companies is quite amazing. And I am not talking about the feature set of Calendar, Contacts or eMail, I am talking about that any business can move their whole eMail infrastructure to Google and all that for free!

You can pass your mail domain to Google and eMail over the gmail.com domain with your own domain name. No one will ever notice that you are using Google. Their Standard Edition gives you 50 mailboxes with each 7GB space. Each user gets their own contact list and Calendars. You can start sharing Calendars, invite others for a meeting and collaborate on Documents, just like with SharePoint.

It is no secret that their web client is one of the most liked and that some people have even started to only use their browser as their eMail client. While I am also all for browser based applications, I still like to use a dedicated eMail client for my day to day usage. Thus it is a pleasure to see that Google covers using Apple Mail, iCal and Contacts and Outlook with GMail.

To be able to sync your Calendar and Contacts with the Google platform you will have to use 3rd party applications. That is on Outlook I have found KiGoo to be very useful. KiGoo allows you to sync your (multiple) Calendar(s) and Contacts right within your Outllok application. There is nothing else then to set and forget. For only $9.95/year you can’t ask for more then that. On the MacOS X side I could only find one solution that worked for me, that is SpanningSync. SpanningSync is a System Preference that allows you to configure what to sync and in what time frame and it will sync your Calendar and Contacts to the Google platform with ease. The only thing drawback of SpanningSync is the strange yearly license of $25 or a one time license fee of $65. For my taste a bit on the expensive side, but it does what it says.

Mobile Phone Access

Today, more then ever, people “work” on their mobile devices. As I mentioned in the beginning, a Collaboration platform is only complete if I have a full circle of access, that not only means to have a web interface, a nice desktop client, but also access and syncing with my mobile device. So, let’s see how those platforms hold up for mobile syncing.

Exchange Server

As of Exchange Server SP2, users with a Windows Mobile device, can sync to their Exchange Server without any additional software or license. Contacts, Calendar and eMail is being kept in sync and from my experience works painlessly. In the last 2 years I used a BlackBerry device and we run our own BES (BlackBerry Enterprise Server) with a Exchange Server. All in all, a satisfying experience that I can only recommend. That is, if you have the IT staff to set it all up and maintain it. The same goes with the famous iPhone. Since Apple released the AtiveSync in their 2.x update for the iPhone, keeping in sync with the iPhone is a breeze as well.

Kerio MailServer

The Kerio MailServer licensed the ActiveSync protocol from MS and thus once could say that any device that is labeled to be working with Exchange Server will work with the Kerio MailServer as well. Make sure, you look up if your device will be supported. BlackBeery users wll need to adopt a third party vendor to be able to sync their devices. I have tested NotifyLink in the past and was disapointed to see that the BlackBerry Chat feature was/is not supported. Users who want to sync their iPhone need to know that the current Kerio version (6.6.2) does not support attachment and HTML eMails.

Zimbra

As already mentioned above, the Zimbra Collaboration Suite has a lot going for it, but the “you need to be a paid customer” mantra continous on when it comes to the Mobile device support. You will need to have a paying Zimbra Collaboration Suite in order to install the “Zimbra Mobile” service and some of their Mobile applications are again only available for paid users. Apart from that, their offering for Mobile Devices support is broad. You have BlackBerry Connector (Beta), Java applications for Java enabled phones and of course the ability to use the iPhone with the ActiveSync and IMAP combo.

Google

Again, Google is taking it all a bit further and is offering the broadest support for almost any mobile device for free. There are addons for BlackBerry devices, iPhone, Android phones Windows Mobile phones and more. Recently, Google released Google Sync for Mobile which is available for most mobile phones. On iPhone, Blackberry and Windows Mobile devices Google Sync enables over-the-air synchronization of Google Calendar and Google Contacts to the built-in Calendar and Address Book applications on your phone. On most other mobile phones, Google Sync enables wireless synchronization of Google Contacts to the built-in Address Book application.

Final words and a recommendation

Of course, a proper recommendation alsways takes into account the circumstanes of the requirements of the company or the people involved in a Collaboration Suite. But given the current offerings and my experience with all of the above platforms I would give the following “list”:

  1. Google
  2. Exchange Server
  3. Kerio MailServer
  4. Zimbra

Why Google? Honestly, you can not beat the offering from Google. The availability, the feature set, the free services, the available mobile connections, the working syncing of Calendar and Contacts and the price (standard is free for 50 accounts with each 7GB storage) makes Google a serious application provider for any business or semi-professional user.

How to update a ESXi server

All of my servers run a flavor of a virtual infrastructure. Most popular is probably the VMWare ESX and ESXi series. Especially, the ESXi offering is a freely available virtualization platform that allows you to host virtual machines hassle free.

So, with any offering there has to be some distinction between the paid offering and the free offering (unless you have open source software, hint hint) and so the ESXi platform is no exception to the game. Still it is a great offering. So, what do you have to do to upgrade to the latest release or available patches?

VMWare provides the VMware Infrastructure Client that can be run (unfortunately only) on Windows. While installing you should choose to install everything, because then there is also the VMware Infrastructure Update installed. With it, is is a breeze upgrade/update your ESXi servers.

The steps are;

  1. Choose Start > Programs > VMware > VMware Infrastructure Update.
  2. On the Hosts tab, select the ESXi hosts to check for updates.
  3. On the Updates tab, click Check Now.
  4. Install the Update. This will download the Updates and Patches. With some it takes a looooong time.
  5. Once downloaded it will prompt for you authentication and install the update.
  6. If needed, reboot the ESXi host machine.