gecco, short for "GCP Enterprise Cloud Cost Optimiser" is a CLI tool for searching for abandoned, idle, and/or inefficiently configured resources within your Google Cloud Platform projects. gecco aims to help enterprise cloud teams reduce their cold costs and drive a culture of cost optimisation with an easy-to-use and feature-rich tool.
Install gecco
Install go, then install gecco
go install github.com/aeihr/gecco@latest
Set your go/bin
in your $PATH
export PATH=$PATH:$(go env GOPATH)/bin
gecco should be available from anywhere in your terminal
gecco version
Getting Started
gecco makes use of gcloud credentials for a secure authentication process. Login to gcloud:
gcloud init
Provision your Application Default Credentials (ADC)
gcloud auth application-default login
You're all set, now you can run commands against projects you have access to:
gecco instances abandoned --project myproject --days 100
The above lists instances in the project that have been abandoned for 100 days or more from the current date.
Commands
To learn more about gecco commands read the user guide here or
gecco help
Features
Locate
- Abandoned instances
- Idle instances
- Abandoned disks
- Stale snapshots
- Over-sized instances (coming soon)
- Idle external addresses (coming soon)
- Storage bucket optimisations (coming soon)
- GKE cluster optimisations (coming soon)
Determine (coming soon)
- Resource cost wastage
- Action to take on resource
- Forecasted cost saving potential
Runs
- As a CLI as part of an engineers toolkit
- As a standalone automated service (Container) (coming soon)
Authenticate
- With
gcloud
(secure)
- Act as your user account or a service account
Contributing