Google Cloud Platform offers a range of machine types optimized to meet various needs. Machine types provide virtual hardware resources available to a virtual machine that vary by virtual CPU (vCPU), disk capability, and memory size, giving you a breadth of options. Within every machine family there’s a set of machine types that offer a combination of memory and processor configuration. With so much to choose from, finding the right Google Cloud machine type for your workload can get complicated.
Since we’ve gone over EC2 instance types and Azure VMs, we’re doing an overview of each GCP machine type. The image below shows the basics of what we will cover, but remember that you’ll want to investigate further to find the right machine type for your particular needs.
A version of this article was published in 2018. It has been completely revised and updated for 2021.
General-Purpose Machine Type Family
General-purpose machine types are resources managed by Google Compute Engine. Each machine type in the general-purpose machine type family is curated for specific workload types. You’ll find that these machine types are suitable for a variety of common workloads. Some examples of these workloads include: development and testing environments, databases, mobile gaming and web applications. These machines are known for offering the best balance of performance and price. Within the General-purpose family, you can choose from four general-purpose machine types: E2, N2, N2D, and N1.
E2 Machine Types
E2 VMs provide a variety of compute resources for the lowest on-demand pricing across all general-purpose machine types. E2 machine types also utilize dynamic resource management, which offers numerous benefits for workloads that prioritize cost savings. These machine types offer the lowest cost of ownership on Google Cloud – you’ll see up to 31% of savings compared to N1. Additionally, pricing for E2 VMs already includes sustained use discounts and are also eligible for committed use discounts – which increases potential savings of up to 55%.
Best fit: Workloads such as small-to-medium databases, web serving, and application development and testing environments that don’t require large instance sizes, GPUs or local SSD would all be good fits for E2.
N2 Machine Types
N2 machine types are the second generation general-purpose machine types that support up to 80 vCPUs and 640 GB of memory. N2 VMs offer you the ability to get about 30% higher performance from your VMs, and shorten many of your computing processes. These machine types offer higher memory-to-core ratios for VMs created with the extended memory feature.
Best fit: General purpose workloads including web and application servers, enterprise applications, gaming servers, content and collaboration systems, and most databases.
N2D Machine Types
N2D machine types are the largest general-purpose machine type with up to 224 vCPUs and 896 GB of memory. These VMs are designed to provide you with the same features as N2 VMs.
Best fit: Web applications, databases, workloads, and video streaming.
N1 Machine Types
N1 VMs are first-generation general-purpose machine types that support up to 96 vCPUs and 624GB of memory. Though most would recommend using one of the second-generation general-purpose machine types, N1 VMs do offer a larger sustained use discount than N2 machine types. Additionally, they have support for Tensor Processing Units (TPUs) in select areas.
Compute-Optimized Machine Type Family
Compute-optimized machine types are ideal for compute-intensive workloads. These machine types offer the highest performance per core and most consistent performance on Compute Engine. Compute-optimized machine types are suitable for workloads such as game servers, latency-sensitive API serving and high-performance computing (HPC). These machines have 40% greater performance than previous generation N1.
C2 Machine Types
C2 machine types provide full transparency into the architecture of the underlying server platforms which will allow you to fine-tune the performance. C2 machine types run on a newer platform, offer more computing power, and are typically more powerful for compute-intensive workloads compared to the N1 high-CPU machines.
C2 VMs also offer up to 20% sustained use discounts. Additionally, they are eligible for committed use discounts, which would bring potential savings up to 60%.
Memory-Optimized Machine Type Family
Memory-optimized machine types are fit for tasks that require intensive use of memory with higher memory-to-vCPU ratios due to the fact that they offer the highest memory configurations across our VM families with up to 12 TB for a single instance. It is important to note that these machine types do not support GPUs. Memory-optimized machine types offer up to 30% sustained use discounts. Additionally, they are eligible for committed use discounts, bringing additional savings up to greater than 60%.
These machine types are best fit for in-memory databases and in-memory analytics.
M2 Machine Types
M2 VMs support the most demanding and business critical database applications with up to 12TB of memory. These machine types offer the lowest cost per GB of memory on Compute Engine, which makes them a perfect choice for workloads that utilize higher memory configurations and have low compute resources requirements.
M1 Machine Types
M1 machine types are the first generation memory-optimized machine types that offer 4TB of memory. Similar to M2 machine types, M1 machine types offer the lowest cost per GB of memory on Compute Engine.
Accelerator-optimized Machine Type Family
Accelerator-optimized VMs were added in July 2020. This machine type family is optimized for demanding compute workloads – this would be workloads such as high-performance computing and CUDA-enabled machine learning.
A2 Machine Types
Every A2 VM has a set amount of A100 GPUs that offer 20x improvements in computing speed in comparison to previous generation NVIDIA V100 GPUs. These machine types are currently available through Google’s alpha program.
Shared-Core Machine Types
Share-core machine types are a cost-effective option that works well with small or batch workloads that only need to run for a short time. They use partial vCPUs that run on one hyper-thread of the host CPU running your instance. These machine types use context-switching to share a physical core between vCPUs so they can multitask.
The GCP shared-core family provides bursts of physical CPU for brief periods of time in moments of need. They’re like spikes in compute power that can only happen in the event that your workload requires more CPU than you had allocated. These bursts are only possible periodically and are not permanent.
Custom Machine Types
Predefined machine types vary to meet needs based on high memory, high vCPU, a balance of both, or both high memory and high vCPU. If none of the machine types meet your needs, Google has one more option for you – custom machine types. With custom machine types, you can define exactly how many vCPUs you need and what amount of system memory for the instance. They allow you to independently configure CPU and memory to find the right balance for your applications, so you’re only paying for what you need. They’re a great fit if your workloads don’t quite match up with any of the available predefined types, or if you need more compute power or more memory, but don’t want to get bogged down by upgrades you don’t need that come with predefined types.
About GPUs and machine types
On top of your GCP instance types, Google also offers graphics processing units (GPUs) that can be used to boost workloads for processes like machine learning and data processing. You can only attach GPUs to predefined or custom machine types. In general, the higher number of GPUs attached to your instances, the higher number of vCPUs and system memory available to you.
What Google Cloud Machine Type should you use?
Between the predefined options and the ability to create custom Google Cloud machine types, Google offers enough variety for almost any application. Cost matters, but with the resource-based pricing structure, the actual machine you chose matters less when it comes to pricing.
With good insight into your workload and usage trends you have the resources available to find the machine type that fits your business needs.
If you’re looking to break into the cloud computing space, or just continue growing your skills and knowledge, there are an abundance of resources out there to help you get started, including free Google Cloud training. If you know where to look, open-source learning is a great way to get familiar with different cloud service providers.
With the combined knowledge from our previous blog posts on free training resources for AWS and Azure, you’ll be well on your way to expanding your cloud expertise and finding your own niche. No matter where you are in the learning process, there are training resources for every experience level and learning type – get started learning now with these 7 free Google Cloud Platform training resources:
1. Google Cloud Free Program
For free, hands-on training there’s no better place to start than with Google Cloud Platform itself. Within the Google Cloud free program you’ll have two options – sign up for a free trial or free tier. As a new Google Cloud customer, you can get started with a 90-day free trial. If you’re already a Google Cloud customer and are looking for a free option, you can sign up for Google Cloud’s free tier. GCP’s free program option is a no-brainer thanks to its offerings.
Access to all GCP products. You’ll have everything you need to experiment with building and running apps, sites, and services. Firebase and the Google Maps API are included with your free trial.
$300 credit is yours to spend for the next 90-days, an expansion from their previous 60-day period and a sizable offer in comparison to Azure’s $200 for 30 days, so take advantage.
No autocharges after the trial period ends – a rarity for most free trials, and a guarantee that this training resource is 100% free.
An always-free option. GCP’s free tier takes the cake with this an always-free tier that gives you enough power to run a small app despite limitations on product and usage. Free tier customers can use select Google Cloud products free of charge, with specified monthly usage limits, making this a perfect option for learning purposes.
For help with navigating the platform as you use it, check out GCP’s documentation for a full overview, comparisons, tutorials, and more.
On the Google Cloud training page, you’ll find plenty of classes tailored to your interests or role so you can get technical skills and learn best practices for using the platform. As another free Google Cloud training option, Google has also teamed up with Coursera, an online learning platform founded by Stanford professors, to offer courses online so you can “skill up from anywhere.”
Coursera includes a number of free courses including topics in Machine Learning, Architecting, Data Engineering, Developing Applications, and the list goes on.
In conjunction with Coursera, Google Cloud offers hands-on training with specialized labs available via Qwiklabs, a learning lab environment for developers. Choose a “quest” from their catalog and get started with 50+ hands-on labs from beginner to expert level. Here you’ll learn new skills in a GCP environment and earn cloud badges along the way. Get started with GCP Essentials and work your way into more advanced, niche topics like Managing Cloud Infrastructure with Terraform, Machine Learning APIs, IoT in Google Cloud, and so on.
4. Plural Sight
Pluralsight is a technology skills platform that offers a full breadth of Google Cloud courses, learning paths, and skills assessments. You’ll find several Google Cloud resources to help level up your skills. If you’re looking to dive deeper into Google Cloud, this is a great option – get started learning with a free trial and make sure to keep an eye out for training discounts offered by Google.
GitHub provides users a number of materials that can help further your Google Cloud training. The great thing about this platform is collaboration among the users, this community brings together people from all different backgrounds so they are able to provide knowledge about their own specialties and experiences. Here’s a great list of Google Cloud training resources that can help you.
You can never go wrong with YouTube. With an endless amount of free videos, YouTube offers an abundance of Google Cloud training options for those of you who prefer to watch the movie instead of reading the book (you know who you are). Some of the most popular YouTube channels for free Google Cloud Platform training include:
Google Cloud Platform (640k subscribers) – “helping you build what’s next with secure infrastructure, developer tools, APIs, data analytics and machine learning.”
Edureka (2.29M subscribers) is a full-service, online learning platform with curated content in Big Data and Hadoop, DevOps, Blockchain, AI, Data Science, AWS, Google Cloud, and more. Their YouTube channel is a “gateway to high-quality videos, webinars, sample classes and lectures from industry practitioners and influencers.” If you’re jumping into GCP with no prior knowledge or experience, the What is Google Cloud Platform tutorial will help get you started.
7. Blogs & Forums
Blogs are a great way to keep your mind flowing with new insights, ideas, and the latest on all things cloud computing. Google Cloud and Qwiklabs have blogs of their own, perfect for supplemented reading with their trainings. For a more well-rounded blog with content on other service providers, check out Cloud Academy.
Take Advantage of These Free Google Cloud Training Resources
It is clear that cloud computing is here to stay and as cloud technology continues to grow and advance, free training resources only continue to emerge so it’s important to stay up to date on new resources. We picked the 7 above for their reliability, variety, quality, and range of information. With the current working remote culture, this is the perfect time to take advantage of free google cloud training online. Whether you’re new to Google Cloud or consider yourself an expert, these resources will expand your knowledge and keep you up to date with what’s latest in the platform.
AWS credits are a way to save on your Amazon Web Services (AWS) bill. Credits are applied to AWS cloud bills to help cover costs that are associated with eligible services and are applied until they are exhausted or expire. Essentially, credits are a coupon-code like mechanism used by Amazon on your bill. If you want to see how to redeem your AWS promotional credits, look here.
So how do you get these credits? There are a number of ways – here are 11 that we have either used ourselves or that have been successfully used by our customers.
With AWS Activate, companies can build or scale with up to $100,000 in AWS promotional credits. AWS Activate is ideal for startups because they get access to resources as quickly as possible, and AWS provides them with a low cost, easy-to-use infrastructure to help them grow.
This is a big help for startups, knowing they are getting their money’s worth with these credits lets them focus on one thing – growth. If you are looking to get started on AWS definitely check this out.
AWS Activate offers two packages designed for startups, AWS Activate Founders (for startups without funding) and the AWS Activate Portfolio (for startups associated with an AWS Activate Provider).
AWS Activate Founders
Offered as part of the AWS Activate program, AWS Activate Founders is designed as a package for bootstrapped and self-funded startups that haven’t raised any venture capital, seed, or angel funding. If your organization isn’t affiliated with any accelerators or incubators then you are eligible to apply. This package provides credits, resources, as well as dedicated technical and business support to help startups build, test, and deploy on AWS.
After applying and getting approved, startups will receive up to $1,000 in Activate Credits and $350 in Developer Support Credits. The $1,000 credit is valid for two years and the $350 credit is valid for one year, this way you can get started building and experimenting with AWS.
AWS Activate Portfolio
The AWS Activate Portfolio package differs from the other package offered in the Activate program because these startups are affiliated with an AWS Activate Provider, meaning some kind of seed/VC firm, accelerator, incubator, or other startup-enabling institutions.
This package offers startups up to $100,000 in AWS Activate Credits – different portfolio offers will have different benefits. With the portfolio, you can either receive AWS Activate Credits that cover AWS services, or AWS Activate Business Support credits that cover technical support.
Publish an Alexa Skill
For all you developers, each Alexa skill that you publish, you can apply to receive a $100 AWS promotional credit. Take advantage of these credits to get all your skills potential!
Attending AWS webinars, events, and conferences can get you AWS credits. In order to be awarded the credits, you’ll have to provide proof that you actually attended. Make sure to keep an eye on their events page, as new stuff is being added all the time.
In an effort to educate the next generation of cloud professionals, AWS has made AWS Educate available to institutions, educators, and students. It provides institutions with the resources educators and students need for training resources, cloud-related learning, and content for courses. Students have the opportunity to receive credits by getting hands-on experience with AWS tech, training, content and career pathways.
At member institutions, educators earn $200 in AWS credits compared to non-member institutions they earn $75. Students receive an AWS Educate starter account with up to $100 in credits at a member institution and $30 at a non-member institution. To make this even more appealing, AWS will award students and staff with more credits if you sign up as a member institution.
During these times of virtual learning, AWS is also providing free resources such as webinars and workshops to help users continue to develop cloud skills.
AWS for Nonprofits & NGOs
Amazon offers three different programs for nonprofits; AWS Nonprofit Credit Program, AWS Imagine Grant Program and AWS Cloud Credit for Research. These programs are designed to help organizations of all sizes to overcome barriers to technology adoption, by enhancing the scale, performance, and capabilities of mission operations.
AWS Credit Program for Nonprofits
Through TechSoup Global, eligible nonprofit organizations can request one grant of $2,000 AWS credits once per fiscal year.
AWS Cloud Credits for Research
AWS Cloud Credits for Research evaluates academic research from researchers at accredited institutions around the world. Researchers that apply for this program take an initiative to build a cloud-hosted service, software, or tools and/or want to migrate a research process or open data to the cloud. The credit amount awarded will vary depending on the cost model and usage requirements documented in the research proposal.
AWS Imagine Grant Program
This program is a public grant that’s open to registered 501(c) nonprofit organizations that are using technology to solve the world’s most critical problems. The AWS Imagine Grant Program is offered as a way to have organizations prioritize technology as a mission-critical component of their projects.
Grants are given once, annually for up to to $100,000 in AWS Promotional Credit.
AWS focuses on education technology startups’ long term success with their AWS EdStart program. AWS is looking to provide businesses with the resources they need to get started as quickly and easily on AWS to ensure they have every opportunity to prosper. After applying and getting approved, businesses will receive their credit validation. The credit amount awarded is based on the business’s needs.
AWS Free Tier
As always, the AWS Free Tier is a great option to get access to AWS products for no cost. Customers can use the product for free up to specified limits for one year from the date the account was created.
This includes 750 hours of Amazon EC2 Linux t2.micro instance usage, 5 GB of Amazon S3 standard storage, 750 hours of Amazon RDS Single-AZ db.t2.micro Instances, one million AWS Lambda requests and you can build and host most Alexa skills for free.
You only have access to promotional credits for a limited time, so make sure you take advantage of all these opportunities if you can! Whether you are just getting started with AWS or have been using it for a while, there are plenty of credits and resources available to make AWS an affordable option for you.
There are a few different AWS IP address types that AWS instances can be associated with: Public, Private or Elastic. IP addresses will be either an IPv4 or IPv6 address. Here’s a little more about these types.
A public IP is an address that can be reached from the internet. You can use a public address for communication between the internet and your AWS instances. The best use case for Public IP addresses is for small projects where a dynamic IP can be used without much overhead. AWS has over a million public IP addresses and is constantly adding new ones.
Public IP and Elastic IP addresses are similar in the sense that they are both public and allow instances to communicate with the internet. However, they differ because of the way they are associated with EC2 instances. Public IP addresses are assigned to your instances automatically from Amazon’s pool of public IPv4 addresses once they are launched and remain assigned to the instance until the instance is stopped. If an instance is stopped, a new public IP address will be assigned once the instance is started.
Now let’s look at Elastic IP addresses..
Elastic IP Addresses
An Elastic IP address is static and designed for dynamic cloud computing. An Elastic IP address is allocated to your AWS account rather than with a specific instance. When you associate an Elastic IP address with an instance, it remains allocated to your account and specific instance until it is disassociated from either.
Elastic IP addresses are most commonly used to help with fault-tolerant instances or software. For example, if you have an EC2 instance that has an Elastic IP address and that instance is stopped or terminated, you can remap the address and re-associate it with another instance in your account. You can also re-attach the same IP address to the same EC2 instance when it is restarted, allowing IP-based connections to work seamlessly – and making it possible to start and stop instances to save money while not in use, without losing the IP address.
When it comes to pricing, you can use one Elastic IP address while your instance is running at no charge. But, if you have any additional Elastic IP addresses associated with the instance, or have an EIP reserved and do not use it, you will be charged a small hourly rate of $0.01/hr.
A private address in AWS is an IP address that is not reachable over the internet. You would use private addresses for communication between instances in the same Virtual Private Cloud (VPC). Private IP addresses remain associated with the instance when it is stopped or rebooted, it will only disassociate once the instance is terminated.
When launched, an instance can be assigned a private IP address or EC2 will automatically assign an IP address to the instance within the address range of the subnet. If you don’t specify a primary private IP address, AWS selects an available IP address in the subnet range for you. An additional private IP address, known as secondary private IP address, can also be assigned.
Multiple IP Addresses
While you can give your instance multiple private IPv4 and IPv6 IP addresses, it’s important to note that the number of interfaces and private IP addresses you can specify for an instance depends on the instance type. Multiple IP addresses can be assigned and unassigned to network interfaces that are attached to instances that are stopped or running.
Once you launch an instance, you can assign a secondary private IP address to it. If the instance has already been launched, then you can assign a secondary private IP address to a network interface. A secondary private IPv4 address that’s assigned to a network interface can be reassigned to an additional one as long as you explicitly allow it.
A few use cases where it could be useful to assign multiple IP addresses to an instance in your VPC are:
If you want to host multiple websites on a single server by using multiple SSL certificates and associate every certificate with a specific IP address.
Operate network appliances that have multiple IP addresses for each network interface.
To redirect traffic to a standby instance in case your instance fails – this is done by reassigning a secondary IP address to the standby instance.
Move private IP addresses between instances or interfaces
Additional Aspects of IP Addresses to Know
Amazon Virtual Private Cloud (VPC)
Every EC2 instance in a VPC has a private IP address, users can also opt to have a public IP address. This is a virtual network that is dedicated to your AWS account. VPC offers the ability to have an isolated network that’s dedicated to you, that you can control.
A subnet is a range of IP addresses in your VPC. You can currently create 200 subnets per VPC. if an instance is in a public subnet, it can have either a private, public or elastic IP address. However, if an instance is in a private subnet, it will only have a private IP address with the option of an elastic IP address.
Elastic Network Interface (ENI)
An ENI is a virtual interface that can be created, configured and attached to an instance within a VPC. An ENI can include a public IP address, a primary private IP address, an optional elastic IP address, one or more secondary private IP addresses, and more.
If you’re powering off servers using ParkMyCloud, then you’ll want to use an Elastic IP if you need to connect from the outside world. Otherwise, use a private IP for connections from within your AWS VPC. If you’re going to use Public IPs, make sure you’re careful when restarting the servers as the public IP address will change once an instance has been stopped and started again.
It’s time to start thinking about AWS re:Invent 2020! Since 2012, AWS re:Invent has been one of the biggest cloud conferences every year – last year they drew over 60,000 attendees from around the world. Like many other big events, such as Google Cloud Next and Microsoft Ignite, re:Invent is going to look a little different this year. Over the course of three weeks (November 30 – December 18), AWS will be showing keynotes, launches and sessions – the best part is that it’s free to attend this year.
Every year there’s an unofficial listing of AWS and Vendor parties that are going on at re:Invent, while they obviously won’t be happening in person this year, we can expect there to be some watch parties and online events to look out for. Follow @reInventParties on twitter or check out their website to stay up to date on all the events.
Although planning your schedule will look different this year, here are a few things to keep in mind:
Make a schedule – block out some time on your calendar in advance to allocate enough time for the event. The session catalog will be available on November 10. Once that’s live, we recommend putting sessions and keynotes into your calendar for a clean visual of your day, and reminders. With 3 weeks’ worth of events, it will certainly take some time to determine which sessions you are most interested in, though during registration, AWS does allow you to select up to 3 tracks (from a long list) to focus on. We’ll keep this article updated once there is more information about the schedule and whether some of the tools like this one from Carlos E Silva will be available to help navigate the scheduler.
Take advantage of the online resources – since the event is virtual this year – and free – you aren’t as limited to what you can attend/do, so make sure you optimize this unique experience.
Attend a watch party – virtual watch parties allow you to connect with individuals around the world, helping to supplement what would be the in-person mingling at the actual event. If friends or coworkers are tuning in, create a channel to chat about sessions and announcements. Also, make sure to follow the #reinvent2020 and #reinvent hashtags on Twitter to follow along. Earlier this year for the online AWS Summit there were watch parties so we can expect the same for their biggest event of the year.
Look for swag and other offers from sponsors – just because you can’t visit sponsors booths doesn’t mean you can’t get swag or see a product/service. Most sponsors will likely have an online swag/prize giveaway as a creative way to get the audience involved to make up for the loss of time at the conference hall. If there are any vendors you’re interested in, sign up for their mailing lists now or make a Twitter list to keep an eye out for fun (Millenium Falcon lego set) and useful (free product license) offers.
Get engaged now – of course, AWS isn’t waiting for late November to offer new product intros, case studies, and best practice guides. Check out the upcoming Tech Talks now.
What Will Sponsor “Booths” Look Like This Year?
On that note, AWS is offering sponsor booths for past sponsors, and their materials offer a glimpse into the as-yet-unclear format of the conference, with mentions of virtual meeting rooms and attendee chats. It remains to be seen how much participation we’ll see overall in these. They seem to have a few special events in mind, which we’ll share here once there’s more information.
Look Forward to the Announcements
Last year at re:Invent, AWS announced the launch of a bunch of services and additional services that were in preview – lookout for the announcements this year! Although this isn’t your typical re:Invent experience, this virtual platform will be able to engage individuals like never before. AWS is anticipating more than 250,000 attendees during AWS re:Invent 2020.