Tolga Talks Tech is a weekly video series in which Onica’s CTO Tolga Tarhan tackles technical topics related to AWS and cloud computing. This week, Tolga discusses the path to thinking #cloudnative with Rich Janson, Director of Customer Solutions at Onica. For more videos in this series, click here.
Customers sometimes treat the cloud like a data center, but you don’t believe that should be the case.
That’s a common misconception customers have. When we first start talking to customers and they’re starting out on their cloud journey, they really think of things in terms of their data center, and they’re not really thinking about the differences between a data center and the cloud, and how to make use of those differences.
How should they be thinking of the cloud, and why is it different?
The cloud is more than just a collection of virtual machines (VMs), it’s a collection of services, managed services, APIs, etc., that enable you to quickly and efficiently scale up your compute capacity, databases, or other workloads.
How does that affect the way people should think of a migration to the cloud?
A common occurrence is people want to do a lift and shift or one-for-one migration, where they’ve got an application and they want to move their application server, their web server, and their database server over one-for-one, and they want to move it to a single availability zone (AZ).
What they lose there is a number of things— they lose cost savings, scalability, and flexibility. So what we like to coach them to do is to think about more managed services, think about the ways that they can take advantage of those APIs, automate the building of their application, and then reuse that for further applications.
If we stop thinking about virtual machines and the one-to-one replication of them, what do we replace that with? What’s the concept a customer should be looking to instead?
A simple way to look at it is to break up your application. If you’re currently running it on a single server in a data center, you could at least break that up into multiple servers across AZs. What that gains you is high availability. If a server was to go down in one AZ, you still have another to pick up the slack. Or if your load is growing you’re able to add more servers to that stack in order to keep up with the capacity. Once that capacity isn’t needed anymore, you can shut it down and save costs.
If we’re scaling up and down dynamically, that means we’re launching and terminating servers all the time. How do we deal with persistent data?
We want to get away from the idea of storing files locally to servers, and we want to use something like an object store such as Amazon S3, where the files or objects are stored remotely and can be accessed by any number of VMs or services within AWS.
What’s Onica’s approach to migration and what tools and services do we bring to help customers accomplish what you have talked about?
We like to get away from the concept of a lift and shift migration where you’re taking an image of a VM running in your data center and just moving that over the cloud, which brings its own set of problems. What we like to do is decompose that application into the operating system, maybe the code that’s running, any applications needed to run that code, and then rebuild that in an automated manner in the cloud. What that buys you is the ability to reuse those pipelines for similar applications. You can use it to rebuild maybe a dev or a staging environment, which helps you get away from the concept of “Well it worked in dev, so it should be working in production.” Lastly, what it does is it’s almost a quasi-disaster recovery (DR) in that you’ve got this system already built. If you were to need to fail over and rebuild that system somewhere else because of a major outage, you’ve already got the toolset in place with which to do that.
It sounds like a continuous delivery type model used in migration, not just for custom code, but also for off the shelf apps as well.
Absolutely. We find the continuous delivery method really applies a lot to what we do in cloud. Customers sort of have a vision that continuous delivery only applies to their own application development, but it really applies to infrastructure, it applies to application development, it applies to off the shelf applications, and it even applies to some of our big data initiatives.
Are you ready to #thinkcloudnative? See how our migrations can elevate your workloads to the cloud.