Komiser: Detect Potential Cost Savings on GCP
The open source project Komiser has added new functionality to identify cost savings in GCP!
Join the DZone community and get the full member experience.
Join For FreeI’m super excited to announce the release of Komiser 2.1.0 with beta support for Google Cloud Platform. You can now use one single open source tool to detect both AWS and GCP overspending.
Highlights

With the GDPR becoming real in the EU, logging and storage of (potentially) personally identifiable information now needs to be reduced in many organizations. Komiser allows you to analyze and manage cloud costs, usage, security, and governance in one place — detecting potential vulnerabilities that could put your cloud environment at risk.
It also allows you to control your usage and create visibility across all used services to achieve maximum cost-effectiveness and get a deep understanding of how you spend on AWS, GCP, and Azure.
Usage
Below are the available downloads for the latest version of Komiser (2.1.0). Please download the proper package for your operating system and architecture.
Linux:
wget https://cli.komiser.io/2.1.0/linux/komiser
Windows:
wget https://cli.komiser.io/2.1.0/windows/komiser
Mac OS X:
wget https://cli.komiser.io/2.1.0/osx/komiser
Note: make sure to add the execution permission to Komiser
chmod +x komiser
and update the user’s
$PATH variable.
Komiser is also available as a Docker image:
Docker:
docker run -d -p 3000:3000 --name komiser mlabouardy/komiser:2.1.0
Note that we need to provide the three environment variablesAWS_DEFAULT_REGION
,AWS_ACCESS_KEY_ID
, andAWS_SECRET_ACCESS_KEY
set in the container so that the CLI can automatically authenticate with AWS.
Create a service account with Viewer permission (see the Creating and managing service accounts docs).
Enable the following APIs for your project through your GCP Console, gcloud
, or using the Service Usage API. You can find out more about these options in the Enabling an API in your GCP project docs.
appengine.googleapis.com
bigquery-json.googleapis.com
compute.googleapis.com
cloudfunctions.googleapis.com
container.googleapis.com
cloudresourcemanager.googleapis.com
cloudkms.googleapis.com
dns.googleapis.com
dataflow.googleapis.com
dataproc.googleapis.com
iam.googleapis.com
monitoring.googleapis.com
pubsub.googleapis.com
redis.googleapis.com
serviceusage.googleapis.com
storage-api.googleapis.com
sqladmin.googleapis.com
To analyze and optimize the infrastructure cost, you need to export your daily cost to BigQuery (see the Export Billing to BigQuery docs).
Provide authentication credentials to your application code by setting the environment variable GOOGLE_APPLICATION_CREDENTIALS:
export GOOGLE_APPLICATION_CREDENTIALS="[PATH]"
That should be it. Try out the following from your command prompt to start the server:
komiser start --port 3000 --dataset project-id.dataset-name.table-name
If you point your favorite browser to http://localhost:3000, you should see Komiser's awesome dashboard:
The versioned documentation can be found on https://docs.komiser.io.
Komiser is written in Golang and is MIT licensed — contributions are welcomed whether that means providing feedback or testing existing and new features.
Drop your comments, feedback, or suggestions below — or connect with me directly on Twitter @mlabouardy.
Opinions expressed by DZone contributors are their own.
Comments