A new VM can be deployed or shut down within seconds, while existing VMs can easily be ramped up or down (cores added, RAM added, etc.) depending on a project’s needs. Now, with that background knowledge in mind, Google Compute Engine is part of the Google Cloud Platform and delivers high-performance, rapidly scalable VMs.
In this way, VMs can be used to overcome many of the interoperability hurdles that can plague scientific/programming teamwork. Anyone who’s ever encountered a situation where code works perfectly on their Linux/Mac/Windows machine, but fails to run on a colleague’s Windows/Mac/Linux machine, will be acutely aware of what I’m talking about. All you need is a working internet connection and a web browser.Īnother neat feature of VM’s is that everyone within a team or research group can work on the same OS up in the cloud, regardless of their local machine types and constraints. Or, better yet, write the code in parallel and then spin up a VM with lots of cores (CPUs) to get the analysis done in a fraction of the time. Got some code that takes an age to run? Fire up a VM and let it chug away without consuming any local resources. Got a big dataset that requires too much memory to analyse on your old laptop? Load it into a high-powered VM. It can potentially perform all or more of the operations that your physical laptop/desktop does, and it might have many of the same properties (from operating system to internal architecture.) The key advantage of a VM from our perspective is that very powerful machines can be “spun up” in the cloud almost effortlessly and then deployed to tackle jobs that are beyond the capabilities of your local computer. So what is a virtual machine (VM) and why do I need one anyway? In the simplest sense, a VM is just an emulation of a computer running inside another (bigger) computer. This might all sound obvious, but it has been the primary sticking point during live tutorials, where people encounter a bunch of puzzling authentication errors simply because they aren’t using a consistent account. You might have two Gmail accounts, where one is your personal Gmail and the other is linked to your university email.) Needless to say, you’ll want to make sure that you use the same account when setting up the gloud utility in Step 2. Tip: Please pay proper attention to the Google/Gmail account that you use to sign up for the Cloud Platform in Step 1. Download and follow the installation instructions for the Google Cloud SDK command line utility, gcloud here.This is purely ceremonial at present - we’re using the free trial period after all - but a billable project ID is required before gaining access to the platform. During the course of sign-up, you should create a project that will be associated with billing. This requires an existing Google/Gmail acount. Sign up for a 12-month ($300 credit) free trial with the Google Cloud Platform.In addition, I’ll also show you how to install RStudio Server on your VM, so that you can perform your analysis in almost exactly the same user environment as you’re used to, but now with the full power of cloud-based computation at your disposal. This is a how-to guide for setting up a server or virtual machine (VM) with Google Compute Engine. Skip to here if you just want the post-setup summary. The most recent update was October 30, 2018.
Note: This tutorial has been updated occasionally to reflect changes in the setup requirements.