Optimize Your AWS Consumption

Optimize AWS Consumption

With PyraCloud and GorillaStack

How PyraCloud and GorillaStack Can Help You Optimize Your AWS Consumption

Amazon Web Services (AWS) allows you to serve any cloud environment via the plethora of resources it provides. More and more organizations are adopting AWS due to the benefits and value it provides:

  • Its pay-as-you-go model allows you to avoid large capital investments while obtaining results quickly
  • AWS services also provide flexibility to scale applications and cloud resource usage
  • Organizations no longer need to manage the infrastructure related to the cloud, such as hardware, physical access, and setup

These advantages manifest differently in costs when compared to on-premise servers. While on-premise mainly required the large upfront cost to sustain requirements, cloud resources can be enabled/disabled, upgraded, downgraded, scheduled, and generally be tweaked to obtain the best "bang for your buck" from the investment. However, this does come at a cost from the management perspective to tailor the cloud environment to the organization. That is where SoftwareONE can be of assistance to your organization.

SoftwareONE and Cost Optimization

PyraCloud

To correctly optimize AWS cloud resources, it's necessary to perform a cost and performance analysis.

  • Are we using the correct Compute resources?
  • Are we scaling down when there are fewer requests from our users?
  • Are there redundant resources such as snapshots or detaches EBS volumes lying around?

 

With this analysis, we can automate cost optimization based on each particular cloud user. SoftwareONE offers a solution specialized in cost analysis called PyraCloud. PyraCloud allows companies and organizations to track, control, and predict cloud spend across multiple cloud providers. Costs can be filtered by product, usage, tenant, location, and more to allow for more transparent and understandable reports.

PyraCloud offers a recommendation engine based on all the cost information being received. It provides alerts based on cost savings, security performance, and many other categories for actions to be taken. Based on the information and recommendations that PyraCloud offers, users can leverage another powerful tool by SoftwareONE called GorillaStack.

GorillaStack

SoftwareONE leverages another tool called GorillaStack that complements PyraCloud. While PyraCloud allows us to track, understand, and predict cloud spend, GorillaStack enables us to automate elasticity and cleanup redundant resources to optimize cost. Using this combination, we can use PyraCloud to diagnose the resources causing the spending and GorillaStack to automate the optimization of said resources.

To understand GorillaStack, its users need to be familiar with the following terms:

Team

The organization using GorillaStack. A Team is composed of multiple User and User Groups. AWS accounts are linked to a Team.

User

An entity with access to GorillaStack. A User can belong to multiple Teams.

Role

Defines policies that allow/deny privileges. Roles are assigned to Users. A Role can inherit policies from a parent Role.

User Group

A group of Users in a Team. The Role assigned to a User in a User Group defines the level of privilege when interacting with entities belonging to the User Group.

Rule

Defines how one or multiple Actions are performed on a resource within a given Context in response to a Trigger. A Rule is composed of:

  • Context - Scope of a Rule that contains an AWS Account Group.
  • Trigger - Event that will cause the Rule to run.
  • Actions - Specifies interaction with the targeted cloud resources.
  • Pauses – Controls Action execution flow.

Tag Group

An entity used in an Action to define how cloud resources are targeted. They are reusable and can be used across different Rules. Consists of Key-Value pairs and Boolean expressions to be filtered during the execution of an Action that features Tag Group selection.

AWS Account Groups

Contains the AWS Accounts that will be used as target in a Rule. It can include one, many, or all AWS Accounts belonging to the Team.

Template

A static definition of resources that can be deployed to create many resources at once.

Once a User is registered on GorillaStack, the first step consists of creating a Team and linking the AWS account via a CloudFormation template that is provided either via the AWS Console or AWS Command Line Interface (CLI). Once the CloudFormation Stack is completed, a User with an Admin Role will be created and is ready to use GorillaStack.

From there, users can link new AWS accounts, add Users, create new Roles, and group them to define the level of privilege when interacting with AWS resources. Users and Groups allows team members to manage and control costs without depending on specific a specific member. Roles meanwhile provide guardrails that prevent Users and Groups from managing resources they are not supposed to manage. With GorillaStack, there is no centralization regarding the management of cloud resources, with Users and Roles team members will be able to optimize the cloud infrastructure safely.

Based on the information obtained from PyraCloud, we can now define Rules that result in the automated management of AWS resources. Rules can tackle common scenarios and will no longer require error-prone manual management from an administrator. Common scenarios include:

  • Do we have less user traffic on weekends? Define a Rule that deallocates Virtual Machines at 6:00 PM on Friday and allocates Virtual Machines Monday at 6:00 AM
  • Do we need to run an AWS Lambda function if we have detached volumes? Define a Rule that triggers when detached volumes are detected and assign an Action that triggers a Lambda by name.
  • Do we want to notify engineers when costs reach a particular threshold? Define a Rule that triggers a notification that is sent to a set of users to Slack.

Rules can be further customized with notifications, manual approvals, delays, and many other features provided. Various actions and pauses can be chained to provide more complex results for specific optimizations.

Conclusion

Amazon Web Services provides powerful services that have allowed numerous organizations to migrate and explore the cloud. While its pay-as-you-go model has numerous advantages, the management of consumption has an important impact on any organization's costs. Leveraging SoftwareONE's PyraCloud and GorillaStack will serve as a primary pillar in the realm of cost optimization for your Cloud Environments.

Take Advantage of Reliability, Performance, and Scalability in an AWS Environment

Join our upcoming webinar for an interactive approach to learning the benefits of offloading the management of your AWS workloads. We will also discuss tools for managing your AWS infrastructure and how to control costs and optimize your environment.

RSVP Today

Comment on this article

Leave a comment to let us know what you think about this topic!

Leave a comment

Author

Future Data Center - AWS Consultant

Carlos Perez

Future Data Center - AWS Consultant

Future Data Center, AWS

Related Articles

Plan Your Roadmap for SAP on Azure

Find out how SAP Advisory Services can support your business plan for your adoption of the Azure Cloud for SAP with our standardized approach, experienced resources, tooling, and accelerators.

Resolving SAP Downtime & Visualization Challenges with PowerConnect & Splunk

Reduce SAP Downtime & Visualization of SAP Telemetry

It’s difficult to investigate failures in SAP to prevent them from happening in the future. Find out how to gain SAP intelligence via PowerConnect and Splunk.

6 Ways to Optimize Your Cloud Spend
  • 23 November 2020
  • Blog Editorial Team
  • Cloud Spend Management, PyraCloud

6 Ways to Optimize Your Cloud Spend

To help you preemptively address concerns with your cloud budget, we have outlined six ways that you can optimize wasted cloud spend.