All Projects → mlabouardy → Komiser

mlabouardy / Komiser

Licence: mit
☁️ Cloud Environment Inspector 👮🔒 💰

Programming Languages

go
31211 projects - #10 most used programming language
typescript
32286 projects
HTML
75241 projects
CSS
56736 projects

Projects that are alternatives of or similar to Komiser

Awesome Aws
A curated list of awesome Amazon Web Services (AWS) libraries, open source repos, guides, blogs, and other resources. Featuring the Fiery Meter of AWSome.
Stars: ✭ 9,895 (+268.67%)
Mutual labels:  aws, serverless, lambda, ec2, rds, dynamodb
Grant
OAuth Proxy
Stars: ✭ 3,509 (+30.74%)
Mutual labels:  aws, serverless, azure, lambda, gcp
Cloud Custodian
Rules engine for cloud security, cost optimization, and governance, DSL in yaml for policies to query, filter, and take actions on resources
Stars: ✭ 3,926 (+46.27%)
Mutual labels:  aws, serverless, azure, lambda, gcp
Pulumi
Pulumi - Developer-First Infrastructure as Code. Your Cloud, Your Language, Your Way 🚀
Stars: ✭ 10,887 (+305.63%)
Mutual labels:  aws, serverless, azure, gcp, containers
Aws Cli Cheatsheet
☁️ AWS CLI + JQ = Make life easier
Stars: ✭ 94 (-96.5%)
Mutual labels:  aws, lambda, ec2, rds, dynamodb
Realworld Dynamodb Lambda
λ serverless backend implementation for RealWorld using AWS DynamoDB + Lambda
Stars: ✭ 185 (-93.11%)
Mutual labels:  aws, serverless, lambda, dynamodb
Examples
Infrastructure, containers, and serverless apps to AWS, Azure, GCP, and Kubernetes... all deployed with Pulumi
Stars: ✭ 1,085 (-59.58%)
Mutual labels:  aws, serverless, azure, gcp
Serverless Analytics
Track website visitors with Serverless Analytics using Kinesis, Lambda, and TypeScript.
Stars: ✭ 219 (-91.84%)
Mutual labels:  aws, serverless, lambda, dynamodb
Lambda Refarch Webapp
The Web Application reference architecture is a general-purpose, event-driven, web application back-end that uses AWS Lambda, Amazon API Gateway for its business logic. It also uses Amazon DynamoDB as its database and Amazon Cognito for user management. All static content is hosted using AWS Amplify Console.
Stars: ✭ 1,208 (-54.99%)
Mutual labels:  aws, serverless, lambda, dynamodb
Pragmaticai
[Book-2019] Pragmatic AI: An Introduction to Cloud-based Machine Learning
Stars: ✭ 79 (-97.06%)
Mutual labels:  aws, serverless, azure, gcp
Historical
A serverless, event-driven AWS configuration collection service with configuration versioning.
Stars: ✭ 85 (-96.83%)
Mutual labels:  aws, serverless, lambda, dynamodb
Workshop Donkeytracker
Workshop to build a serverless tracking application for your mobile device with an AWS backend
Stars: ✭ 27 (-98.99%)
Mutual labels:  aws, serverless, lambda, dynamodb
Caprover
Scalable PaaS (automated Docker+nginx) - aka Heroku on Steroids
Stars: ✭ 7,964 (+196.72%)
Mutual labels:  aws, azure, digitalocean, containers
Cloudcomparer
Compare the various managed cloud services offered by the major public cloud providers in the market.
Stars: ✭ 678 (-74.74%)
Mutual labels:  aws, azure, alibaba, ibm
Hybrid multicloud overlay
MutiCloud_Overlay demonstrates a use case of overlay over one or more clouds such as AWS, Azure, GCP, OCI, Alibaba and a vSphere private infrastructure in Hub and spoke topology, point to point topology and in a Single cloud. Overlay protocols IPv6 and IPv4 are independent of underlying infrastructure. This solution can be integrated with encryption and additional security features.
Stars: ✭ 127 (-95.27%)
Mutual labels:  aws, azure, gcp, alibaba
Aws Mobile React Sample
A React Starter App that displays how web developers can integrate their front end with AWS on the backend. The App interacts with AWS Cognito, API Gateway, Lambda and DynamoDB on the backend.
Stars: ✭ 650 (-75.78%)
Mutual labels:  aws, serverless, lambda, dynamodb
Awstaghelper
AWS bulk tagging tool
Stars: ✭ 98 (-96.35%)
Mutual labels:  aws, lambda, ec2, rds
Designing Cloud Native Microservices On Aws
Introduce a fluent way to design cloud native microservices via EventStorming workshop, this is a hands-on workshop. Contains such topics: DDD, Event storming, Specification by example. Including the AWS product : Serverless Lambda , DynamoDB, Fargate, CloudWatch.
Stars: ✭ 131 (-95.12%)
Mutual labels:  aws, serverless, lambda, dynamodb
Aws Microservices Deploy Options
This repo contains a simple application that consists of three microservices. Each application is deployed using different Compute options on AWS.
Stars: ✭ 370 (-86.21%)
Mutual labels:  aws, serverless, lambda, containers
Dazn Lambda Powertools
Powertools (logger, HTTP client, AWS clients, middlewares, patterns) for Lambda functions.
Stars: ✭ 501 (-81.33%)
Mutual labels:  aws, serverless, lambda, dynamodb

Komiser is back 🎉 and we're looking for maintainers to work on the new roadmap, if you're interested, join us on our Slack community channel: https://community.komiser.io

Amp Logo

Amp

Price Docker Stars MIT License CircleCI Docker Stars OpenCollective OpenCollective Patreon donate button Open Collective donate button

Stay under budget by uncovering hidden costs, monitoring increases in spend, and making impactful changes based on custom recommendations.

Discuss it on Product Hunt 🦄

Komiser EE is available in private beta test stage, sign in for free at https://cloud.komiser.io

Twitter URL Tweet

Highlights

  • Analyze and manage cloud cost, usage, security, and governance in one place.
  • Control your usage and create visibility across all used services to achieve maximum cost-effectiveness.
  • Detect potential vulnerabilities that could put your cloud environment at risk.
  • Get a deep understanding of how you spend on the AWS, GCP, OVH, DigitalOcean and Azure.

IMAGE ALT TEXT HERE

Backers

Become a backer and show your support to our open source project.

Sponsors

Does your company use Komiser? Ask your manager or marketing team if your company would be interested in supporting our project. Support will allow the maintainers to dedicate more time for maintenance and new features for everyone. Also, your company's logo will show on GitHub and on our site - who doesn't want a little extra exposure? Here's the info.

Download

Below are the available downloads for the latest version of Komiser (2.4.0). Please download the proper package for your operating system and architecture.

Linux:

wget https://cli.komiser.io/2.4.0/linux/komiser

Windows:

wget https://cli.komiser.io/2.4.0/windows/komiser

Mac OS X:

wget https://cli.komiser.io/2.4.0/osx/komiser

Note: make sure to add the execution permission to Komiser chmod +x komiser

brew tap komiserio/komiser
brew install komiser

Docker:

docker run -d -p 3000:3000 -e AWS_ACCESS_KEY_ID="" -e AWS_SECRET_ACCESS_KEY="" -e AWS_DEFAULT_REGION="" --name komiser mlabouardy/komiser:2.4.0

How to use

AWS

  • Create an IAM user with the following IAM policy:
wget https://komiser.s3.amazonaws.com/policy.json
  • Add your Access Key ID and Secret Access Key to ~/.aws/credentials using this format
[default]
aws_access_key_id = <access key id>
aws_secret_access_key = <secret access key>
region = <AWS region>
  • That should be it. Try out the following from your command prompt to start the server:
komiser start --port 3000

You can also use Redis as a caching server:

komiser start --port 3000 --redis localhost:6379 --duration 30

Multiple AWS Accounts Support

Komiser support multiple AWS accounts through named profiles that are stored in the config and credentials files. You can configure additional profiles by using aws configure with the --profile option, or by adding entries to the config and credentials files.

The following example shows a credentials file with 3 profiles (production, staging & sandbox accounts):

[Production]
aws_access_key_id=<AWS_ACCESS_KEY_ID>
aws_secret_access_key=<AWS_SECRET_ACCESS_KEY>

[Staging]
aws_access_key_id=<AWS_ACCESS_KEY_ID>
aws_secret_access_key=<AWS_SECRET_ACCESS_KEY>

[Sandbox]
aws_access_key_id=<AWS_ACCESS_KEY_ID>
aws_secret_access_key=<AWS_SECRET_ACCESS_KEY>

To enable multiple AWS accounts feature, add the --multiple option to Komiser:

komiser start --port 3000 --redis localhost:6379 --duration 30 --multiple

GCP

  • Create a service account with Viewer permission, see Creating and managing service accounts docs.

  • Enable the below APIs for your project through GCP Console, gcloud or using the Service Usage API. You can find out more about these options in 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 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

OVH

  • Create an API application from here.

  • This CLI will first look for direct instanciation parameters then OVH_ENDPOINT, OVH_APPLICATION_KEY, OVH_APPLICATION_SECRET and OVH_CONSUMER_KEY environment variables. If either of these parameter is not provided, it will look for a configuration file of the form:

[default]
; general configuration: default endpoint
endpoint=ovh-eu

[ovh-eu]
; configuration specific to 'ovh-eu' endpoint
application_key=my_app_key
application_secret=my_application_secret
consumer_key=my_consumer_key
  • The CLI will successively attempt to locate this configuration file in

    • Current working directory: ./ovh.conf
    • Current user's home directory ~/.ovh.conf
    • System wide configuration /etc/ovh.conf
  • If you point your browser to http://localhost:3000, you should be able to see your projects:

DigitalOcean

  • To generate a personal access token, log in to the DigitalOcean Control Panel.

  • Click the API link in the main navigation, In the Personal access tokens section, click the Generate New Token button.

  • Create a ready-only scope token. When you click Generate Token, your token will be generated.

  • Set DIGITALOCEAN_ACCESS_TOKEN environment variable:

export DIGITALOCEAN_ACCESS_TOKEN=<TOKEN>

Options

komiser start [OPTIONS]
   --port value, -p value      Server port (default: 3000)
   --duration value, -d value  Cache expiration time (default: 30 minutes)
   --redis value, -r value     Redis server (localhost:6379)
   --dataset value, -ds value  BigQuery dataset name (project-id.dataset-name.table-name)
   --multiple, -m              Enable multiple AWS accounts feature

Configuring Credentials

When using the CLI with AWS, you'll generally need your AWS credentials to authenticate with AWS services. Komiser supports multiple methods of supporting these credentials. By default the CLI will source credentials automatically from its default credential chain.

  • Environment Credentials - Set of environment variables that are useful when sub processes are created for specific roles.

  • Shared Credentials file (~/.aws/credentials) - This file stores your credentials based on a profile name and is useful for local development.

  • EC2 Instance Role Credentials - Use EC2 Instance Role to assign credentials to application running on an EC2 instance. This removes the need to manage credential files in production.

When using the CLI with GCP, Komiser checks to see if the environment variable GOOGLE_APPLICATION_CREDENTIALS is set. If not an error occurs.

Documentation

See our documentation on docs.komiser.io. The source repository for the documentation website is komiserio/docs.

Bugs and feature requests

Have a bug or a feature request? Please first read the issue guidelines and search for existing and closed issues. If your problem or idea is not addressed yet, please open a new issue.

Roadmap and contributing

Komiser is written in Golang and is MIT licensed - contributions are welcomed whether that means providing feedback or testing existing and new feature.

Users

If you'd like to have your company represented and are using Komiser please give formal written permission below via a comment on this thread or via email to [email protected].

We will need a URL to a svg or png logo, a text title and a company URL.

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

License

FOSSA Status

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].