markrubens - Fotolia
Hybrid cloud computing is a combination of local private cloud and public cloud services. It puts one application between cloud computing and a traditional IT data center. With a hybrid cloud architecture, enterprises can get the benefits of public cloud services while they also keep some data and systems private.
But how strenuous is it to introduce hybrid cloud options?
Here are multiple strategies that bring hybrid cloud options into enterprise IT organizations. The examples include software services, such as web servers; IT services, such as code pipelines and databases and traditional business-facing functions, such as file storage and email.
Cloud bursting with private-to-public cloud
The most well-known model for hybrid cloud is cloud bursting, often with web servers. It is most useful when an application experiences steady traffic with occasional spikes in demand, such as during the holiday season or a breaking global news event.
The company can operate this application in a data center to handle its standard traffic. This on-premises approach is likely to cost dramatically less over time than operating the application on public cloud services. Think of the difference as public cloud equating to using a taxi every day versus the data center being akin to purchasing a vehicle. Bursting enables the traffic spikes, without constant cloud costs. A cloud bursting architecture can be a challenge, though.
The first step is to create a private cloud that supports virtual machine (VM) images that interoperate on public clouds. For example, the organization creates images on an OpenStack private cloud. Then, to burst, it sends the image to AWS, Microsoft Azure or another public cloud host. These public cloud providers can take an OpenStack VM image and create a web server on the fly. Practically speaking, the process is to migrate to a private cloud and then install a management layer that can burst out to a cloud provider when the need arises.
Test and dev in the cloud, production on prem
Organizations often run a test server -- and perhaps a development server -- in addition to production versions of the application. The test server generally houses all of the organization's in-test work in order to enable stable production operations while developers try out new features or support teams ensure a patch will work. When teams grow, the queues to use the test server grow, too. As a result, it can delay the entire development program.
One alternative is to rely on a hybrid cloud model and create web servers in the public -- or private -- cloud.
Perform this task in two steps. First, the build produces an artifact that includes all the custom code that it needs to create a web server. Secondly, generate custom code that integrates with the private or public cloud, using that artifact to deliver a running web server with a URL. This setup drastically improves the pace of delivery for test servers, and it puts an organization on the first step toward moving the production servers to the cloud.
When test and development environments spin up on a private cloud, they're already designed for cloud operation, so the transition to public cloud is a matter of migrating images. Teams comfortable running test and development servers on public cloud have a foundation for cloud bursting or a full-scale public cloud migration of production servers.
Teams can use the same approach to test microservices and RESTful services by creating the service in the public or private cloud for testing.
Cloud-based CI, source code and software tracking
One place to embrace the hybrid cloud option is not with the servers themselves, but with the engineering tools. An organization can put the tools to develop and build code into the cloud without exposing sensitive business data in a multi-tenant environment. Cloud-based CI produces a build that can deploy anywhere: a local web server, a private cloud or a public cloud environment.
It is easy to get started with hybrid cloud around CI tools. Any time a team creates a new product, it has the option of reinventing the technology stack to support that product's development, test and deployment. This is especially true in the age of microservices and web services. Make sure to develop new products on technology stacks that use standard communication protocols so that the code can interoperate with existing products.
Putting code management tools, CI and software monitoring in the cloud can cut the amount of work -- and frustration -- for IT operations, because it's time-consuming to keep the servers that support non-cloud build tools patched and reliable. Cloud-based builds put a programming team's focus squarely on delivering business value. It also paves the way for the team to move the application project itself into the cloud.
This approach is easiest when the team embraces a single vendor's commercial tools from development to delivery. Teams that assemble a code pipeline out of open source tools may need to find products from multiple sources and fit them together, which costs significant amounts of time and energy, if not dollars.
Cloud-based authentication, storage and email
Finally, instead of a programming-focused approach to hybrid cloud, the organization could take a more practical, IT-centric path by slowly dropping classic on-premises, internally managed services for SaaS alternatives. One place to start is to move authentication into the cloud. Other popular SaaS-based business functions include email and messaging services, file storage with version control and archival storage. SaaS-based IT services provide a way for traditional enterprises to experience cloud operations with minimal hands-on management or troubleshooting.
Hybrid cloud options fall between getting your toes wet and jumping directly in the pool. This approach is a chance for your team to learn about cloud technology with low risk. The question is finding the right place to test the waters.
Many organizations already deploy a hybrid arrangement in the IT organization, without calling it hybrid cloud. Your company might already use a cloud-hosted version control tool or integrated development environment, for example.
The next step is up to you.