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.