Operating system
The first choice you have to make is that of the operating system. There are public images available for Linux and Windows servers that come from Google. In addition, if you decide that you require some exotic operating system, you can use private images that you create or that you import into Compute Engine. Compute Engine uses operating system images to create the root persistent disks for your instances. You specify an image to be used as this root disk when you create an instance. Images contain a boot-loader, an operating system, and a root filesystem.
Lift-and-shift: The process of importing an external VM via a custom image is complex and not for the fainthearted, but this lift-and-shift is a rite of passage for most organizations getting onto the cloud. Do check out third-party tools that help, particularly CloudEndure—a free third-party service that is trusted by Google and has pretty good word-of-mouth.