Decided to Switch KVM

Choosing a hypervisor in #Cloud projects always costs me time, between Xen & Kernel-based Virtual Machine (KVM). After an interesting discussion with one of Cloud Computing architect @ IBM, we get a deal – use KVM for future #Cloud implement. My considerations:

  1. IBM announced to boost KVM @ Cloud initiatives since March this year. This indicates IBM’s strategy @ hypervisor on Intel machines leans to KVM, rather than Xen. And more official development, test and support are coming after.
  2. Virtio project to support better network IO performance. http://kbase.redhat.com/faq/docs/DOC-25441

More resources:
KVM vs Xen, dates back in 2006, but telling some basic > http://www.gridvm.org/xen-vs-kvm.html
Xen vs KVM by Xen > http://blog.xen.org/index.php/2010/05/07/..kvm-linux-..community/
KVM @ IBM InfoCenter > http://publib.boulder.ibm.com/../kvminstall/liaaikvminstallstart.htm
Securing KVM @ IBM InfoCenter > http://publib.boulder.ibm.com/../kvmsec/kvmsecguest.htm
Benchmark by Xen > http://wiki.xensource.com/..Quantitative+Comparison+of+Xen+and+KVM.pdf
KVM vs VMware > http://www.workswithu.com/2009/04/27/kvm-vs-vmware-a-case-study/

They’re all @ http://delicious.com/j3ffyang/kvm

Notice: since I only consider #OpenSource virtualization solution @ my #Cloud projects on Intel, there is #proprietary #VMware in my solution design. But integration with VMware is always available.

Comments off

Enable VT @ BIOS

One of my customer asked me how to reuse the old fashioned PC in their Cloud. The question leads to “How to enable VT @ BIOS?”. I wrote the following message to my customer:

Go to BIOS setting, then “Enable” or “Turn On” “Virtualization Technology” like

Source & Credit: http://publib.boulder.ibm.com/../kvminstall/kvmadvancedsetup.jpg

In Linux, here are steps to enable VT

(source: http://www.redhat.com/..VT_in_BIOS.html)

Verify the virtualization extensions are enabled in BIOS. The BIOS settings for Intel® VT or AMD-V are usually in the Chipset or Processor menus. The menu names may vary from this guide, the virtualization extension settings may be found in Security Settings or other non standard menu names.

Procedure 34.1. Enabling virtualization extensions in BIOS

Reboot the computer and open the system’s BIOS menu. This can usually be done by pressing the delete key, the F1 key or Alt and F4 keys depending on the system.

Select Restore Defaults or Restore Optimized Defaults, and then select Save & Exit.

Power off the machine and disconnect the power supply.

Enabling the virtualization extensions in BIOS

Note: BIOS steps

Many of the steps below may vary depending on your motherboard, processor type, chipset and OEM. Refer to your system’s accompanying documentation for the correct information on configuring your system.

Power on the machine and open the BIOS (as per Step 1).

Open the Processor submenu The processor settings menu may be hidden in the Chipset, Advanced CPU Configuration or Northbridge.

Enable Intel Virtualization Technology (also known as Intel VT) or AMD-V depending on the brand of the processor. The virtualization extensions may be labeled Virtualization Extensions, Vanderpool or various other names depending on the OEM and system BIOS.

Enable Intel VTd or AMD IOMMU, if the options are available. Intel VTd and AMD IOMMU are used for PCI passthrough.

Select Save & Exit.

Power off the machine and disconnect the power supply.

Run cat /proc/cpuinfo | grep vmx svm. If the command outputs, the virtualization extensions are now enabled. If there is no output your system may not have the virtualization extensions or the correct BIOS setting enabled.

Comments off

InfoSphere BigInsights

image


IBM announced new offering in Cloud http://www.ibm.com/software/data/infosphere/hadoop/

The comments from CNet:

tags: linux bi opensource hadoop cloud big apache infosphere data biginsights

Comments off

Eucalyptus@Karmic910

Installed Eucalyptus on Ubuntu Karmic 910. Capture screenshots

euca_0credentials

euca_4conf1

euca_4conf2

euca_5svc

euca_6extras

Comments off

Cloud ROI

I placed a lot of effort on Cloud Computing engagement and had tours around the country. Piling my mileage :-)

First off of everthing, I demo my compiz 3D desktop enabled Ubuntu 9.04 to show off how we live in a pure open source environment without having to touch any of Microsoft.

Get back to our topic. Last week, I visited one of largest mobile device / equipment manufacturer to discuss how a Cloud Computing could transform customer’s IT. We spent an hour to talk about Return of Investment (ROI). To list what are supposed in consideration of an ROI

  • Hardware
  • Image Instance – build, migration, administration
  • Software – non-free operating system and hypervisor. If Xen, or KVM being used on LAMP, the cost is close to zero. And all software to build a Cloud environment with licensing and maintenance.
  • Labor – build and operate a Cloud environment
  • Provisioning Process – time taken to complete provision

Input the above consideration comes out in 3 charts as the following (the data is under a certain assumption and might vary in different environment) :

  • Comparison of without- cloud and with- cloud

roi_compare1

  • Categorized

roi_cat1

  • Cost in Transformation

roi_trans1

The information reflects a scope of ROI to be analyzed and doesn’t have to mean this is a mandatory.

Comments off

What Web2.0 means to Cloud?

I discussed the subject with one of colleagues who is a Cloud Computing architect. I’m logging what my comment here

=-=-

To continue our previous talk is a huge discussion. I’d recommend you could start to get involved in http://twitter.com and follow

http://twitter.com/mashable
http://twitter.com/j3ffyang -> me
http://twitter.com/OpenIBM -> I own this too as of being admin for IBM Open Source Global community

When you hit any of above, you can see the bytes come from http://aws.amazon.com actually, which is an IaaS with no doubt. Twitter is a kind of social collaboration network -> an application running over Amazon Web Services (AWS). Twitter doesn’t own any hardware resources. Whenever Twitter needs computing capability, it goes to AWS and AWS fulfills its request… on demand. Even though Twitter sometimes out of service due to its overload.

@ IaaS, AWS not only gives power of hardware (CPU, memory, disk and network…), but also provides plugin / API to connect Twitter with Hadoop… and Simple Queue Service (SQS), and Simple Database (SDB).

You shouldn’t be surprised @ Twitter’s power to gather thousand of thousand developers around it, if keeping our eyes open. (Some reasons of the motivation of social collaboration in term of Web2.0). See these:

http://tweetwheel.com
http://ftags.com
http://tweetvalue.com/
http://www.tweetizen.com/
http://twittersnooze.com/
http://mrtweet.net/home/j3ffyang
http://tweettrail.com/search/hadoop

This list is almost endless. They’re all independent of twitter.com. The above are all SaaS, plugable into Twitter.com where provides API -> http://apiwiki.twitter.com/ and http://twitter.com/downloads – @ PaaS

This is an ecosystem.

Comments off

Thoughts on Cloud Architecture in Open Source

Recently one of my friends I met from LinkedIn sent me several questions, about Cloud Computing, which looks like a Request for Proposal (RFP). I post my very personal response here for a mindshare.

About Cloud, Cluster/ Load Balancing, Data Center and Open Source, I could talk day and night without stop. I’m giving my personal but confident thoughts upon my friend’s email in brief.


Cloud Computing is a big topic. People have their own definitions depending on their view and objective.

- Open Source / Operating System / Framework
I’m Unix/ Linux guy. Other than Unix, Linux is the only operating system in Cloud management and Cloud resource pool, in terms of efficiency, green security, cost, and manageability. No Windows, No Mac… Certainly Windows could be one of computing services in resource pool as a kind of computing resource, that Infrastructure_as_a_Service (IaaS) provides and delivers.

Microsoft .Net framework doesn’t make much sense to Cloud @ IaaS, as Cloud is Open. That’s a defacto rule in Cloud. Windows isn’t “royal free” either, nor brings satisfied ROI in fact.

Most/ major components in Cloud are supposed to be operating system independent, like Java, Xen, Apache, MySQL, Linux/ Unix, JDBC, Mozilla/ Firefox, Eclipse, Tomcat… etc. As long as a software depends on a specific OS as a pre- requisite, it doesn’t fit in Cloud.

- Cloud Architecture
Several open source projects to recommend
http://www.opennebula.org > this is being used @ http://nebula.nasa.gov/
http://open.eucalyptus.com > this is a very AWS EC2- like open source cloud which I personally installed several time for Proof_of_Concept (PoC).

April 23rd, 2009, Ubuntu released 9.04 Server edition, which includes OpenNebula and Eucalyptus open source projects and supports Cloud environment >
http://doc.ubuntu.com/ubuntu/serverguide/C/opennebula.html
http://doc.ubuntu.com/ubuntu/serverguide/C/eucalyptus.html

5 cost- efficient flexible open source resources for Cloud

http://ostatic.com/blog/5-cost-efficient-flexible-open-source-resources-for-cloud…

Cloud hosting & storage toolbox

http://www.webresourcesdepot.com/cloud-hosting-storage-toolbox-options-tools/

- Virtualization and Virtual Machine Manager (VMM)
Virtualization is a key player in Cloud, but not all in Cloud. Virtualization technology is a carrier of computing resource dynamically managed and delivery in Cloud. In my opinion, its importance has been exaggerated in market. The keys of Virtualization are (1) standard (2) simple (3) easy to manage. You can’t deploy and manage multiple virtualization technologies within one Cloud environment.

Hyper-V doesn’t comply with the rule I mentioned earlier – Cloud is open. VMWare solution is expensive, isn’t it? Xen / XenSource is open source / free and recommended. Xen has been widely adopted in Cloud service provider in Internet. Xen is also compatible with monitoring system to be discussed below.

I’ve a blog describing the comparison between XenSource and VMWare > http://tr.im/mFFa

- Monitor
The ability of monitor determines how precisely and automatically Cloud detects from Cloud, and how fine- grained (granular) computing resource could be deployed to customer.

I recommend Ganglia and Nagios that are popular in Cloud, data center, server farm/ cluster, and widely adopted in many enterprises.

developerWorks > http://www.ibm.com/developerworks/opensource/library/l-ganglia-nagios-1/index.html
Nagios homepage > http://www.nagios.org/

- Request Driven Deployment / Provisioning
Deployment driven by request means the end user decides how much computing resource s/he needs from Cloud. Such as you specify number of CPU, # of gigabyte of memory and size of disk (priced @ http://aws.amazon.com/ec2 ) from Amazon Web Services (AWS) Elastic Compute Cloud (EC2). Very simple. We may learn a lot from AWS architecture > http://highscalability.com/amazon-architecture

Provisioning means that a specific software, like JVM or middleware software, or database, to be installed and configured in an deployed / existing virtual system on demand.

The scenario: eg. in AWS, you’re given a Linux operating system with 2 CPUs and 4G memory. But you can do nothing in a blank OS. You might need an Oracle database 11 or a middleware like JBoss or perhaps WebSphere. Then provisioning function will install and configure on the deployed virtual machine unattended.

For now, in that case @ AWS, you have to install by your own or you can select one available image from AWS image pool, with pre-loaded software you need, in which if someone else made one and published previously. Amazon doesn’t have provisioning service so far. That results that AWS has to manage thousand images in its image repository so that implies it is a challenge.

- SLA / Service Policy / Automation
An example of Service Policy: when an instance is running 80% disk utilization, a pre- defined service policy triggers a configured action – to add another 100G disk into such instance.

This is done by Service Policy, not by system operator and administrator. We can see how this differentiate from mainframe’s virtualization since 60′s.

In another word, Service Policy = Automation!

This kind of policy could be very specific in many and many scenarios. It does require customization effort to fit requirement. I do have some experience/ skill of elastic JVM/ JavaEE computing resource as being engaged with a banking customer now, @ Platform as a Service (PaaS) project.

- Load balancing (not F5)
Load balancing is a must in large enterprise and busy traffic internet. F5 is popular. But F5 throws URL (a request from web) as a token to go into web server cluster. In fact, URLs are not equal. F5 doesn’t know how much resource behind one URL might need from JVM in middleware. So F5 can round- robin requests / URLs, but not granularly down to CPU utilization level.

Cloud Computing @ each layers – IaaS, PaaS & SaaS – needs monitoring to know how much resource remains, how much needed, how much to deliver, how much to remove after use.

- Security/ Authentication / LDAP
Security is a big concern in Cloud, as well as alert and audit, in term of authentication, authority, data integrity, encryption/ decryption, etc.

LDAP (OpenLDAP) could be used @ Cloud portal where end user applies computing resource in resource pool, while Cloud operator manages in management portal. As long as a computing resource is deployed, end user is received an authority to access the delivered resource and doesn’t need LDAP authentication.

- Languages
Java is preferred as global languange
C is used in Eucalyptus Cloud Management
Ruby on Rail used to display @ Portal & UI
XML in data transaction, Python, etc.

- Approach
Have to have Proof_of_Concept – to build a small system to prove all works prior to production

Comments off

« Previous Page« Previous entries « Previous Page · Next Page » Next entries »Next Page »