So, you’re considering migrating from on-prem to GCP? You’ve probably heard about people’s success in doing so and are now deciding that it might be time for you to join them. Good news—no matter what problem you’re facing, Google has built a world-class platform that you can be successful on.
This post helps to identify what possible solutions Google Cloud has for you, all while trying to lay out a general map of what to look for in migrating to the cloud.
What is Google Cloud Platform (GCP)?
You’re probably here because you’ve heard about GCP and you’re looking at what it may take to migrate. Well, you’re in luck. Google now has 20+ years of experience running on the web, and it’s got just about as much in the cloud. GCP, at its base, represents all of the wisdom, technical know-how, and painstaking work to make a scalable web system. Every part of GCP has either been inspired by or directly used inside of Google’s infrastructure, so they’ve already tested what they’re selling you.
Google Cloud is a direct competitor to the other cloud providers. This means that the space is active and each of the major cloud vendors are competing for your business. Google Cloud was meant for you to lease space on Google’s massive infrastructure at a competitive cost. This allows you to get up and running at a global scale immediately. And if you don’t have all of the expertise in house to build every kind of service you need; Google has a wide set of services to help you. This way, you get to concentrate on growing your capabilities.
Who Do I Need on Staff to Make This Migration Possible?
Let’s assume that your staff doesn’t have cloud experience yet. Well, now is as good a time as any to start training them on everything cloud. Google literally wrote a book on what it takes to manage a cloud infrastructure. The people who keep Google’s infrastructure healthy and running are called site reliability engineers, so you may want to research those. Whether there needs to be new hires or training up your current staff, Google has a number of resources to help get your staff ready for the transition.
How Machines Run in the Cloud
One of the first parts of your infrastructure you should move is the base machines. That could mean either virtual or actual physical machines. It’ll be your first step into the cloud world, and Google Compute will be your first interaction with Google’s cloud. This service allows you to spin up a wide variety of machine types and operating systems. Just like other cloud providers, the basic unit of work is a type of computer that works just like any other virtual machine or hosted machine out there. You just get to scale up and down with a press of a button instead of having to procure and set up these machines.
If you haven’t already, start to give the container world some thought. Docker has made a huge splash in the last couple of years—and for good reason. Using containers as the base of your system helps you make huge strides in developer productivity, ease of infrastructure management, and most of all, scaling. And better yet, Google practically invented the best container orchestrator out there: Kubernetes!
With Google Kubernetes Engine (GKE), you get the best container orchestrator out there. It has superior security hardening, scaling abilities, and operations management built right in. GKE can auto-upgrade as soon as there are security patches out. And it will roll out those upgrades in a way that causes no hiccups in your infrastructure.
You can enable the system to be completely private, too. This means your infrastructure has no exposure to the public internet. Plus, you’ll completely lock down where and how traffic comes into the system, which enables you and your security team to keep a close eye on your infrastructure.
Where Does My Data Go?
Now that you have machines up and running, you need somewhere to store your data. Data is the lifeblood of your business, so Google offers some serious first-class options for you to store and scale the data in accordance with your needs.
If your team is used to a more traditional SQL offering, Cloud SQL offers both a MySQL and Postgres database that can scale with a press of a button. Google Cloud manages both types of databases. This allows your team to focus not on trying to maintain the database infrastructure but instead on getting the right data in the right places. As with everything cloud, these all have a built-in high-availability mode and include read-only replication.
If NoSQL is more your thing, you can use Google’s Cloud Bigtable. This is the same service Google uses internally to scale their data needs, so you know they built it for the web. They promise sub-10-millisecond performance, so Bigtable can handle any size data you throw at it.
If files are your most important asset, then Google Cloud Storage is where you want to start. They built this storage for the web. You can upload your file once and, immediately, it will start to replicate globally. This way, if you need an asset used all around the world, you can make that happen without even thinking about it.
Is My Data Safe?
We’ve all heard the horror stories of companies losing their data or their data getting compromised. Well, Google has a wide variety of security products to help you manage your infrastructure in just the way you need it. On top of that, there’s a Google’s Security Command Center that will give you a holistic overview of your infrastructure and provide a first stop for your security team to find issues.
Along with the tools that monitor the infrastructure, let’s say you need FIPS 140-2 Level 3. Google Key Management Service will help you get there. You literally get your own hardware key generation device that’s dedicated to your project. This keeps the keys secret and off of the pipes that everyone can see.
If you’re more concerned about your architecture, there are a wide variety of options. First, you can create all your networks as private ones, that even access the Google services they need privately. That means none of your traffic has to reach the public internet. It stays inside of the bounds of the Google Cloud network.
On top of that, Google provides a variety of point-to-point encryption methods. It starts from Cloud VPN, if you still need to have on-prem communicate securely to your cloud services. Or you can encrypt at the network layer or at rest.
What Are the Costs, and How Do I Manage Them?
With any cloud provider, you pay for what you use. This means you can allocate the same number of machines in the same configuration you have currently on-prem. This may not be the best thing for you, cost-wise. You can scale everything up and down in your system. And it will take some monitoring to understand what good utilization means. But this is how you manage cost in the cloud: only allocate the resources you need, when you need them.
Hopefully, you now have a decent overview of what you can expect from GCP. Please stay tuned, as Blue Medora has more specific migration critical success guides planned that will help you take advantage of this platform.
This post was written by Erik Lindblom. Erik has been a full stack developer for the last 13 years. During that time, he’s tried to understand everything that’s required to deliver high quality, valuable software. Today, that means using cloud services, microservices techniques, container technologies. Tomorrow? Well, he’s ready to find out.