Google Compute Engine
Author: Ronald Fung
Creation Date: 8 June 2023
Next Modified Date: 8 June 2024
A. Introduction
Google Compute Engine is a cloud-based virtual machine (VM) hosting service that allows users to run their applications on Google’s infrastructure. It provides users with scalable and flexible computing resources that can be easily customized to meet their specific needs. Google Compute Engine is designed to be highly available, secure, and reliable, making it an excellent choice for businesses and individuals who need to run their applications in the cloud.
With Google Compute Engine, users can create virtual machines in a matter of minutes, and they only pay for the resources they use. The service provides users with a wide range of VM types, including general-purpose, memory-optimized, and compute-optimized instances. Users can also choose from a variety of operating systems and pre-configured images, making it easy to deploy applications quickly and efficiently.
Google Compute Engine provides users with a powerful set of features, including auto-scaling, load balancing, and networking capabilities. This allows users to easily manage their applications and scale their resources as needed. The service also provides users with a robust set of APIs and command-line tools, making it easy to automate tasks and integrate with other Google Cloud services.
Overall, Google Compute Engine is a powerful and flexible virtual machine hosting service that allows users to run their applications in the cloud. With its scalable and customizable infrastructure, users can easily deploy and manage their applications, while only paying for the resources they use.
B. How is it used at Seagen
Seagen can use Google Compute Engine to run their applications and workloads on Google’s infrastructure. Here are some steps to get started with Google Compute Engine:
Create a Google Cloud account: Seagen can create a Google Cloud account in the Google Cloud Console. This will give them access to Compute Engine and other Google Cloud services.
Create a project: Seagen can create a new project in the Google Cloud Console. The project will be associated with a Google Cloud billing account and can be used to manage Compute Engine instances and other resources.
Create a Compute Engine instance: Seagen can create a Compute Engine instance in the Google Cloud Console. They can choose from a variety of instance types and sizes, including general-purpose, memory-optimized, and compute-optimized instances. They can also choose from a variety of operating systems and pre-configured images.
Configure the instance: Seagen can configure the Compute Engine instance with the appropriate settings, including disk size, networking, and security. They can also install any necessary software and applications.
Deploy applications: Seagen can deploy their applications on the Compute Engine instance. They can use the instance’s public IP address to access the applications from the internet.
Scale resources: Seagen can scale their resources as needed using Compute Engine’s auto-scaling and load balancing features. This allows them to easily manage their applications and resources, while ensuring high availability and performance.
Overall, by using Google Compute Engine, Seagen can easily deploy and manage their applications and workloads in the cloud. With its scalable and customizable infrastructure, Seagen can run their applications and workloads efficiently and cost-effectively, while taking advantage of Google’s reliable and secure infrastructure.
C. Features
Google Compute Engine is a powerful cloud-based virtual machine (VM) hosting service that provides users with a wide range of features to run their applications and workloads efficiently and cost-effectively. Some of the key features of Google Compute Engine include:
Scalable infrastructure: Google Compute Engine provides users with a scalable infrastructure that allows them to easily add and remove resources as needed. This allows users to scale their resources up or down based on their application demands.
Customizable VMs: Google Compute Engine provides users with customizable VMs that can be easily configured to meet their specific needs. Users can choose from a variety of instance types and sizes, including general-purpose, memory-optimized, and compute-optimized instances, and they can also choose from a variety of operating systems and pre-configured images.
High availability: Google Compute Engine is designed to be highly available, with built-in redundancy and failover capabilities. This ensures that users’ applications and workloads are always available, even in the event of hardware failures or other issues.
Security: Google Compute Engine provides users with a secure infrastructure, with features such as firewalls, private networking, and encryption. This ensures that users’ data and applications are protected from unauthorized access and other security threats.
Auto-scaling and load balancing: Google Compute Engine provides users with auto-scaling and load balancing features that allow them to easily manage their resources and ensure high availability and performance. Users can configure their instances to automatically scale up or down based on demand, and they can also use load balancing to distribute traffic across multiple instances.
Flexible pricing: Google Compute Engine provides users with flexible pricing options, including per-second billing and sustained use discounts. This allows users to pay only for the resources they use, and to take advantage of cost savings for long-running workloads.
Overall, Google Compute Engine provides users with a powerful set of features to run their applications and workloads efficiently and cost-effectively in the cloud. With its scalable and customizable infrastructure, high availability, security, and flexible pricing, Google Compute Engine is an excellent choice for businesses and individuals who need to run their applications in the cloud.
D. Where Implemented
E. How it is tested
Testing Google Compute Engine involves ensuring that the virtual machines (VMs) and applications are running correctly on Google’s infrastructure. Here are some steps to test Google Compute Engine:
Create a test environment: Create a test environment that mimics the production environment as closely as possible. This includes creating test data, configuring Google Compute Engine instances, and setting up test infrastructure.
Create a Compute Engine instance: Create a Compute Engine instance in the test environment and configure the instance with the appropriate settings, including disk size, networking, and security. Install any necessary software and applications.
Test application functionality: Test the application functionality on the Compute Engine instance. This includes verifying that the applications are running correctly, data is being processed correctly, and that the application is responding to user requests.
Test scalability: Test the scalability of the Compute Engine instance by simulating high traffic and load on the application. Use Compute Engine’s auto-scaling and load balancing features to scale the resources up or down based on demand.
Test high availability: Test the high availability of the Compute Engine instance by simulating hardware failures or other issues. Verify that the application continues to run correctly and that users can access the application without interruption.
Monitor performance: Monitor the performance of the Compute Engine instance using Compute Engine’s monitoring and logging features. Analyze the data to identify any performance issues or bottlenecks and optimize the instance accordingly.
Overall, testing Google Compute Engine involves creating a test environment, creating a Compute Engine instance, testing application functionality, testing scalability and high availability, and monitoring performance. By thoroughly testing Google Compute Engine, users can ensure that their applications and workloads are running correctly and efficiently on Google’s infrastructure.
F. 2023 Roadmap
????
G. 2024 Roadmap
????
H. Known Issues
While Google Compute Engine is generally a reliable and stable cloud-based virtual machine hosting service, there are a few known issues that users may encounter. Some of the known issues are:
Instance creation errors: Users may encounter errors when creating instances in Google Compute Engine. This can occur if the user does not have the correct permissions, if the quota for the resource has been reached, or if the instance type is not available in the selected region.
Network connectivity errors: Users may encounter errors when configuring network connectivity in Google Compute Engine. This can occur if the firewall rules are not set up correctly, if the network configuration is incorrect, or if there are issues with the underlying network infrastructure.
Persistent disk errors: Users may encounter errors when creating or attaching persistent disks in Google Compute Engine. This can occur if the disk size is too large, if the disk is not formatted correctly, or if there are issues with the underlying disk infrastructure.
Performance issues: Users may encounter performance issues when running applications and workloads in Google Compute Engine. This can occur if the instance is not properly optimized, if the resources are not allocated correctly, or if there are issues with the underlying infrastructure.
Billing errors: Users may encounter billing errors when using Google Compute Engine. This can occur if there are issues with the billing account, if there are discrepancies in the billing data, or if there are issues with the billing infrastructure.
Overall, while these issues may impact some users, Google Compute Engine remains a powerful and flexible virtual machine hosting service that allows users to run their applications and workloads in the cloud. By carefully monitoring their instances, networks, and disks, and reviewing their usage reports and billing data, users can ensure that their Google Compute Engine resources are secure and accessible, and that they are only paying for the resources they use.
[x] Reviewed by Enterprise Architecture
[x] Reviewed by Application Development
[x] Reviewed by Data Architecture