Tag Archives | cloud

Slight Transition

As many of you may know, since I joined NetApp I have been working almost exclusively on solutions around Zimbra and Octopus (Horizon Data), in the End User Computing space, and the work is not yet complete. However, as I work to finish those initiatives, I am starting the transition to a new focus area: Cloud.

I am really excited about this change, as it brings me more in tune with my areas of interest, especially around automation, scaling, and elasticity. Expect to see my content shift from the End User Computing space and toward the Cloud space in the coming months.

VMware’s version of Cloud is very interesting to me, but I will need to ramp up my expertise to get up to speed on all the material in that ecosystem. My hope is that we’ll learn together through this blog and other forms of media… 

If there’s any content you’re interested in seeing, ping me or leave a comment below.

3,496 total views, no views today

0

Nicira – Some Thoughts…

nicira_vmware

I have what I believe to be an interesting viewpoint on the Nicira acquisition by VMware. This is a very intriguing development especially because of the broad-reaching implications as we walk the path toward the Sofware-defined Data Center (SDDC).

I began thinking about how troublesome networking is in a virtual environment during a session by Howie Xu at VMworld 2010. I remember it vividly because it was one of the first sessions I attended at my first VMworld. Howie talked about the concept of a virtualized version of the Cisco supervisor engine that is the core of Cisco’s modular switches. At least that was what I took away from the talk, but it asked more questions than it answered.

This got me thinking about what this would look like in the context of VMware and server virtualization. The applications are virtualized on servers in a VMware vSphere cluster, but what about the network components?

As we know, today, you will typically have any number of switches, routers, firewalls, etc. in front of a vSphere cluster. The promise of a “software-defined data center” eliminates this, and more.

Imagine being able to take (2) uplinks of your choosing from the service provider’s switch in a datacenter and being able to plug them directly into the back of an ESXi server or blade chassis, etc. and be ready to go.

Think about this for a minute… The groundwork has been laid for that connection to be the same as if you were uplinking it to your router or switch. Those uplinks will be handled by the virtual supervisor (supplied by Nicira) in software. Once you have network connectivity from the outside, you only have two pieces left to form the basic infrastructure: Storage and Servers (VMs and vApps).

Storage already exists in virtual form, via virtual storage appliances. It’s only a matter of time before these can perform at speed, be completely hardware-agnostic, and be deployed in a cloud-automated fashion on the same hardware (rackmounts, blade servers or some yet-to-be-named appliance) as virtual machines can be deployed. At this point the orchestration is key and the industry is pretty close here as well, I believe.

Finally, we already know how VMs are deployed and sit in this underlying infrastructure. This is second nature to us now. They will happily continue to run side by side with the virtual supervisors and virtual storage appliances, with the proper control mechanisms.

Once you wrap around the management (enter DynamicOps) all of the dominoes fall into place. I seems like VMware is on the brink of actually saying that their SDDC story is now complete. It will be interesting to see how all of these components fit together into the VMware SDDC “stack”…

3,075 total views, no views today

0

Basic Zimbra Cloud

zimbra

Overview

I was having some issues around my Zimbra implementation just before lunch and I got to thinking… why not do a Zimbra post. Most of my peers in the virtualization and cloud industry at this point either are using Exchange by choice (or by force) or are just starting to investigate the use of Zimbra, since the VMware acquisition. I would like to talk a little bit about how I use Zimbra to help out those looking at deploying it.

Background

My relationship with Zimbra is unique in that my previous company actually started using it officially before they started using VMware. We started at version 4.5 or 5, and the current Zimbra release is 7.1. As part of the role-out at my previous employer, I set-up a Zimbra OSS installation in my home lab environment, and eventually started using it for my custom domain e-mail services. Those that know me know I come from a Red Hat Linux background, having deployed about 100 RHEL servers in my earlier sys admin days. From that, I learned the Red Hat way of setting up LDAP, IMAP, SMTP (Postfix), CLAMAV, SPAMASSASSIN, etc. that make up a fully featured Internet mail server. Although not fully compatible with Exchange, this set-up can provide a flexible e-mail solution for companies on a budget. Coincidentally, these services also form the basis for an installation of Zimbra Collaboration Suite, with the welcome addition of MAPI compliant functionality that adds calendaring and free/busy data which are at the heart of Exchange. This makes Zimbra a drop-in replacement for Exchange, and competition is good!

Infrastructure

I won’t discuss the architecture at my former employer, but I will discuss the architecture in my small installation. I think it’s a rather interesting blend of public and private components that show a simple use of hybrid cloud that others can extrapolate and build upon.

  • My Zimbra server consists of a single RHEL 5 (x64) VM. This machine has 2 vCPUs and 4GB RAM. As Zimbra is heavily reliant on Java, and Java likes lots of memory and no swapping, I reluctantly set a reservation of 4GB on the VM and the performance is more than adequate for my environment. I have been running Zimbra v6.0.x OSS for the past 2 years, and upgraded to 7.1 a couple weeks ago.
  • In addition to the Zimbra server, I have an external mail gateway in Chicago which is provisioned as a VM in the Rackspace Cloud. This server not only relays mail to and from the Zimbra server, but it also performs DNS resolution duties among other things. I have established a VPN between this server and my home lab network in order to get around any firewall restrictions, but also to ensure secure relay of the mail. This VM also has a backup VPN route to my home lab in the US.
  • For redundancy, I also have another Rackspace Cloud VM provisioned in their Dallas DC. This is essentially an exact duplicate of the Chicago VM, also serving DNS and SMTP duties. This VM has a VPN established between itself and my home lab in the US, Japan and also to the other Rackspace Cloud VM. It’s really nice to have this server in a separate physical location, despite it being a VM. The only thing I have to worry about it this configuration is the inter VM (i.e. VPN) traffic, which fortunately amounts to less than $1/mo.
  • In order to relay mail to and from the Zimbra server in a load-balanced fashion, I created 2 DNS MX records with the same priority. This allows incoming mail to arrive at either SMTP server and provides resiliency if one server crashes. I also created 2 DNS A records for the SMTP servers that points to each VM separately, this way when Zimbra has a mail to send it goes to each SMTP server in turn, and will retry if one of the SMTP hosts is crashed or otherwise inaccessible.
  • In order to provide mobile access, I enabled both secure IMAP and secure SMTP on the Zimbra server and then NAT these to the internal hosts behind my firewall. Believe me, it’s nice that I have a static IP for this purpose. Because my ISP allows SMTP and IMAP without issue, I connect directly over SSL from my mobile phone to the Zimbra server and have fully-featured mail access.

Diagram

Diagrammatically, the setup looks something like this:

wygtya_zimbra

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Summary

As you can see, this is a very basic setup but is interesting in that it is a blend of public and private cloud components. One nice thing about this is that if my Zimbra server goes offline or even my entire home Internet connection, the mail will continue to queue at the SMTP servers in Rackspace’s Cloud. Once my site comes back online, the queued mail will start relaying again. All in all this makes a nice basic cloud that you can use as a lab to test out and try various cloud technologies without spending too much coin (about $22/month).

1,643 total views, no views today

0

Cloud Foundry

cloudfoundry

Well it’s nearly a week since the announcement of VMware’s new Cloud Foundry service. The problems that Cloud Foundry is looking to solve are something that I have touched on briefly before. The technologies behind this PaaS are very much foreign and strange to those from a typical infrastructure background, but times are changing… we either adjust or get left behind.

Background

My perspective on this is a bit unique, although becoming a bit more common lately. I come from a background of not only technical support, but software support as well as SDK support, back when I was in the states. Since moving to Japan I seem to get involved with the “DevOps” duties and have done so at my current and previous positions over here. I have a good understanding for the developer methodology back to my college days and the computer science courses I took there.

That served as the basis for how I approached dealing with professional services consultants when I worked as an SDK support analyst. I got the chance to help developers troubleshoot their code and saw the hoops that they needed to jump through in order to work around bugs or develop non-existent functionality.

Fast forward to about 5-6 years ago working as a system administrator. I worked very closely with our much larger development team setting up version control, release management systems, and deploying servers with web frameworks to host code for application servers. And now at my current position, I use the experience I have had to help our developers deploy their projects more easily.

I mean as an administrator, this is not a headache that you want to have with everything else that can and does go wrong with the rest of the infrastructure. Happy developers = happy sys admins

What Cloud Foundry Is

Cloud Foundry is just another form of abstraction. We virtualization enthusiasts are very familiar with this terminology. We have been living with abstraction to the logical conclusion of IaaS in our world. Another layer of the modern IT stack is these new PaaS offerings. I actually could see this sort of offering as a potential outcome as soon as I was able to absorb the acquisition of SpringSource 1.5 years back. I remember having conversations with other bloggers about 6 months ago, contemplating how soon it would be before VMware would allow you to deploy code for application servers without caring about the underlying infrastructure.

I am not a web developer by any stretch, but I will say, I dabbled a bit a long time back. I do know developers and what they have to deal with everyday. I know that they want to code and design, not deal with infrastructure. It’s very rare that you find a developer that cares about infrastructure even in the slightest bit; it takes time away from their creative process.

That said, anything that can ease their path to release code more quickly and iterate more frequently and safely, is a win-win for both them and the infrastructure architects and administrators that support them and maintain their servers.

What Cloud Foundry is NOT

Cloud Foundry is not a replacement for IaaS or the architects and administrators thereof. It is not a replacement for all the private web and application servers that you have at your organization. Nor is it a platform that developers will move all projects to overnight. Cloud Foundry and other offerings that will come along to compete with it are also not a fad, just like cloud itself is not a fad… it is however a glimpse into one facet of the future of IT in the cloud era.

Conclusion

As you can see the lines between virtual and physical are graying just as are the lines between application servers and application frameworks and classic web frameworks and cloud frameworks. This is an opportunity for infrastructure specialists to further branch out and add value to their organizations, not a time to worry about getting left behind just doing basic infrastructure administration, but more architecting business solutions for IT problems.

Cloud Foundry is an example of an initiative that will get you more praise from the business side as well as from the development side of the house. This is a huge step in the evolution toward ITaaS or *aaS that is coming. Question is whether you maintain the status quo, or be part of the revolution…

2,908 total views, no views today

0

Cloudy Vision

I have wanted to post more articles about IT theory on this site. Unfortunately these types of posts take an especially long time to produce. Since none of us can really predict the future, a lot of what I state might end up being wrong, but that’s also part of the fun. I remember a writing project in AP history in high school where it was our goal to pick a topic and predict the future. I still remember it to this day. One thing I theorized was that music would be stored on microchips similar to RAM (didn’t know the detailed function of RAM at the time) which were placed in a small box that somehow output the audio to a stereo. I was off the mark by a bit, but only a bit.

Practical Cloud Applications

For me, the best way to think about the future possibilities of cloud platforms is to think about them from the aspect of an architect, specifically with a background in virtualization. From this perspective,  I can imagine several use cases where cloud platforms could serve extremely powerful and useful.

Example:

You have a web application service which serves 100,000 users. This service is comprised of 5 Apache/PHP web server VMs with a clustered MySQL back-end of 2 VMs. In front of the application are 2 virtual (global) load balancers which split the load across the web servers. Here’s where the fun begins… Overnight your product gets mentioned on a high profile late night television program and your traffic shoots up to 1,000,000 uniques.

It’s no problem because you at least planned for this situation by creating an account with a cloud service (IaaS) provider. Your SLA monitoring software notices the increased connections and some increasing latency in the site and automatically sends an API request to the cloud provider and provisions an additional 45 VMs across several of their datacenters (even possibly, based on the geolocation of the originating IPs, provisions more of the VMs in datacenters closer to the users). These VMs are automatically added into the load balancer configuration and can immediately start serving requests to the users.

Now you have the issue of possible reduced bandwidth to the database backend (which the monitoring system has proactively alerted you to) and the API again sends a request to the cloud provider to create a new cluster of 2 MySQL VMs. This is automatically added to the Apache/PHP configuration and can be used for queries. The data is replicated between these database servers and their counterparts in your datacenter in order to keep the data consistent, also in a fully-automated fashion. You are able to handle the load automatically without having to lift a finger when the unforeseen event happens. All you had to do was built intelligence into your system to allow the scalability to happen from the beginning.

This just one such example of how I can see the cloud being used for automated scaling of websites. To me, automation is one of the key benefits to using cloud services. The real challenge for cloud providers lies in creating an automation platform that can be used for a large percentage of use cases, so that there is less work by the end users of the cloud. I can see this being a differentiating factor between the current cloud providers out there.

Future Is Automated

There are, of course, many other ways to use automation in your hybrid cloud. A lot of the new software engineering related to cloud will revolve around this aspect of automation as this is a major factor in increasing the business agility of applications to scale beyond just the cost saving benefits inferred by cloud computing. With some level of standardization in the automation space, I think cloud adoption will start moving forward without the need for unique approaches, leading to greater compatibility and interoperability among cloud providers; a positive for everyone involved.

What are your thoughts? How do you scale applications in the cloud at your organization?

1,307 total views, no views today

0

Powered by WordPress. Designed by WooThemes