Migrating HRL's Service to a New Platform: Identifying Idle VM Instances for Optimization

Identifying Idle VM Instances for Optimization

Question

Helicopter Racing League (HRL) is a global sports league for competitive helicopter racing.

Each year HRL holds the world championship and several regional league competitions where teams compete to earn a spot in the world championship.

HRL offers a paid service to stream the races all over the world with live telemetry and predictions throughout each race.

Solution concept - HRL wants to migrate their existing service to a new platform to expand their use of managed AI and ML services to facilitate race predictions.

Additionally, as new fans engage with the sport, particularly in emerging regions, they want to move the serving of their content, both real-time and recorded, closer to their users.

Existing technical environment - HRL is a public cloud-first company; the core of their mission-critical applications runs on their current public cloud provider.

Video recording and editing is performed at the race tracks, and the content is encoded and transcoded, where needed, in the cloud.

Enterprise-grade connectivity and local compute is provided by truck-mounted mobile data centers.

Their race prediction services are hosted exclusively on their existing public cloud provider.

Their existing technical environment is as follows:Existing content is stored in an object storage service on their existing public cloud provider.Video encoding and transcoding is performed on VMs created for each job.Race predictions are performed using TensorFlow running on VMs in the current public cloud provider.

Business requirements - HRL's owners want to expand their predictive capabilities and reduce latency for their viewers in emerging markets.

Their requirements are:Support ability to expose the predictive models to partners.Increase predictive capabilities during and before races: -‹ Race results -‹ Mechanical failures -‹ Crowd sentimentIncrease telemetry and create additional insights.Measure fan engagement with new predictions.Enhance global availability and quality of the broadcasts.Increase the number of concurrent viewers.Minimize operational complexity.Ensure compliance with regulations.Create a merchandising revenue stream.

Technical requirements -Maintain or increase prediction throughput and accuracy.Reduce viewer latency.Increase transcoding performance.Create real-time analytics of viewer consumption patterns and engagement.Create a data mart to enable processing of large volumes of race data.

Executive statement - Compute Engine instances are allocated to do video encoding and transcoding.

You suspect that these Virtual Machines are zombie machines that were not deleted after their workloads completed.

You need to quickly get a list of which VM instances are idle.

What should you do?

Answers

Explanations

Click on the arrows to vote for the correct answer

A. B. C. D.

A.

https://cloud.google.com/compute/docs/instances/viewing-and-applying-idle-vm-recommendations

The correct answer is B. Use the gcloud compute instances list to list the virtual machine instances that have the idle: true label set.

Explanation:

The question mentions that Compute Engine instances are allocated for video encoding and transcoding and it is suspected that some of these instances are zombie machines that were not deleted after their workloads completed. In order to identify which VM instances are idle, we need to look for instances that are not actively processing video data.

Option A suggests logging into each Compute Engine instance and collecting disk, CPU, memory, and network usage statistics for analysis. This option is time-consuming and inefficient because it involves manually checking each instance, which is not practical when dealing with a large number of instances.

Option B suggests using the gcloud compute instances list command to list the virtual machine instances that have the idle: true label set. This option is the best choice because it leverages the idle label feature provided by Google Cloud, which automatically identifies instances that are not actively processing data. This label is set by the Cloud Operations suite, which analyzes resource usage to determine if an instance is idle. By using this command, we can quickly get a list of idle instances without having to manually check each one.

Option C suggests using the gcloud recommender command to list the idle virtual machine instances. However, this option is not relevant to the question because the gcloud recommender command is used to provide recommendations for optimizing resource utilization and cost.

Option D suggests identifying which Compute Engine instances in the managed instance groups are no longer responding to health check probes. While this option can help identify unresponsive instances, it may not necessarily identify idle instances that are still responding to health check probes.

In summary, the best option to quickly get a list of idle Compute Engine instances is to use the gcloud compute instances list command with the idle: true label filter.