BLOGPlatform Engineering

Advantages of Using Compute Templates for Platform Engineers

Use compute templates in Wayfinder for efficient, consistent, and secure cloud infrastructure management across providers.

Category
Platform Engineering
Time to read
5 minutes
Published
October 8, 2024
Author
Celeste Groenewald

As platform engineers, our goal is to deploy efficient, consistent, and secure infrastructure across various cloud environments. Wayfinder's compute templates simplify this process by offering standardised, predefined configurations for compute instances. This allows for quick setup and management of self-service clusters for developers, making cloud infrastructure management more straightforward.

Key Takeaways

Design compute templates that fit specific needs, whether it's for high-performance setups or cost-effective compute configurations.

Tailor these compute templates to manage costs, enforce security, and meet your compliance requirements.

Whether you choose Wayfinder’s CLI or Web Interface, setting up and managing compute templates is easy. If you're new to Wayfinder, the Web Interface is a great place to start. Developers can easily use the templates you create, while you maintain control with provisioning policies.

Why Use Compute Templates?

Use Case

Your developers are deploying applications across AWS, Azure, and GCP. You want to empower them to provision self-service clusters that meet their needs while keeping costs manageable and maintaining consistent standards across all environments. You also want to reserve higher-cost compute instances for teams that genuinely require them, like AI/ML teams. 

Cloud Provider Solutions

Let’s break down how you can tackle this use case for each of the cloud providers:

AWS: Start by using AWS CloudFormation templates that include various compute instances. Make sure to set the necessary constraints and controls to manage configurations properly. To prevent users from exceeding spending thresholds, implement IAM Policies that restrict access to specific instance types. Reserve higher-cost instances specifically for your AI/ML teams. Don’t forget to tag all compute instances with a tagging policy; this helps track resource ownership for budget control. As a last step, set up budgets and alerts, and use AWS Cost Explorer to monitor and analyse costs regularly.

Azure: For Azure, create blueprints that define a standard set of resources and policies. This will enable developers to provision resources while ensuring compliance with your standards. Use Azure Policy to enforce restrictions on VM sizes and deployment regions, which helps you manage costs effectively. Set up budgets and alerts through Azure Cost Management to gain insights into resource consumption. With Role-Based Access Control (RBAC), you can limit access to high-cost instances, ensuring only AI/ML teams have the permissions they need.

GCP: In GCP, use Resource Manager to organise your resources by team and apply IAM roles that limit access to specific VM types. Leverage GCP Billing Reports to keep an eye on costs, and set budgets with alerts for when spending approaches thresholds. Define IAM Policies that restrict developers from provisioning high-cost instances, allowing access only for designated teams. As a final step, encourage the use of preemptible VMs for non-critical workloads to achieve significant cost savings while still providing flexibility.

Wayfinder’s Solution

In Wayfinder, start by creating compute templates that define various compute instance configurations. Wayfinder operates across clouds, allowing you to build templates based on the offerings of AWS, Azure, and GCP. Use the estimated costs to tailor a compute template according to workspace requirements, such as allocating high-end instances for AI/ML teams.

Next, establish provisioning policies to implement guardrails. These policies control which teams can use specific templates, the regions they can access, and set estimated cost thresholds. Wayfinder will manage all cloud provider configurations, including permissions and tagging, so you can focus on delivering value without getting bogged down in the complexities of individual cloud environments.

Wayfinder’s Value

In Wayfinder, the focus is on simplifying resource management across cloud platforms. By providing a unified framework, it reduces the administrative burden typically associated with cloud provider solutions. This enables platform engineers to maintain control while empowering developers to provision resources efficiently and cost-effectively.

Start by considering the key value propositions:

  1. Configurability: Templates are flexible, allowing for a range of configurable options. You can adjust them to meet specific application needs while adhering to best practices.
  2. Consistency and Management: With a standardised baseline for creating clusters across AWS, Azure, and GCP, you ensure consistency across environments. This approach reduces configuration drift and ensures compliance with security standards.
  3. Cost Estimation: Wayfinder’s compute templates simplify cost estimation for node pools or entire clusters. This functionality helps optimise resource allocation and manage expenses effectively.
  4. Provisioning Policies: These templates are governed by provisioning policies that set limits on regions, instance types, and scaling parameters. This structure keeps cluster requests within predefined boundaries, ensuring a controlled and predictable environment.

What’s involved?

In Wayfinder, you can create compute templates through either the CLI or the Web Interface. If you’re new to Wayfinder, the Web Interface is a great starting point to understand how templates work and get familiar with the YAML structure.

Step 1: Identification and Description 

Start by naming and describing your compute templates to help developers easily select the right configuration.

Step 2: Cloud Provider Configuration

Tailor the template for specific cloud environments (AWS, Azure, GCP) to ensure the right resources are provisioned.

Step 3: Node Pools

Configure at least one node pool by specifying parameters like machine types, disk size, and auto-scaling.

Step 4: Estimated Costs

Use the built-in cost estimation feature to get a clear view of potential expenses, helping manage budget allocations effectively.

Step 5: Summary

Review and fine-tune your compute template before applying it.

Step 6: Apply the YAML

Apply the template directly using the Web Interface, download the YAML for the CLI, or integrate it into your CI pipeline for continuous use.

Step 7: Test

Always test your template in a sandbox environment to validate configurations and ensure smooth provisioning before pushing to production.

How Developers Use It

When developers self-service a cluster, they simply choose an available compute template from their workspace. If needed, they can further customise the compute instances to suit their specific requirements.

Here’s a quick look at what this looks like for a developer:

  • Greyed-out templates: These indicate options that are unavailable due to guardrails set by you.
  • Budget warnings: Developers will see alerts if their selections risk exceeding the allocated budget.
  • Customisation: Templates are flexible, allowing developers to adjust settings to fit their exact requirements.

Control Over Developer Choices

Wayfinder’s provisioning policies give you complete control over the regions, cluster sizes, and instance types developers can select. These policies ensure that all clusters adhere to your set cost thresholds and constraints during both creation and modification.

Conclusion

Appvia Wayfinder’s compute templates simplify cloud infrastructure management for platform engineers, offering a controlled yet flexible environment for developers, all while maintaining compliance and cost control across cloud environments.

Related Posts

Related Resources