Aye - an open source tool for scanning images on Kubernetes cluster

Related tags

Spring Boot Aye
Overview

Aye


Aye is an open source tool for scanning images on Kubernetes cluster. It uses Anchore CLI behind the scenes to get information about all images that are currently on the cluster. It also provides Prometheus metrics for each image, so teams are aware of different levels of vulnerabilities found inside them.

Installation

Official docker image: docker pull joyodev/aye

Configuring Aye

There are seven environment variables that can be configured.

export ANCHORE_CLI_URL=http://myanchore.server.com:8228/v1
export ANCHORE_CLI_USER=admin
export ANCHORE_CLI_PASS=foobar

Anchore URL defaults to http://localhost:8228/v1/ if you do not specify it. User and password have to be exported/set explicitly.

Besides these three, you can also set values for application port, logging level, service delay in milliseconds and detailed metrics.

export SERVER_PORT=8080
export LOGGING_LEVEL_ROOT=INFO
export SERVICE_DELAY_IN_MILLISECONDS=300000
export ENABLE_DETAILED_METRICS=true

Enabling detailed metrics will result in Aye exposing all vulnerabilities in the image in a form ofPackage: package_name URL: vulnerability_url to Prometheus. For SERVICE_DELAY_IN_MILLISECONDS default value is 5 minutes (300 000 milliseconds) - time between loops.

How Aye works

In each iteration of the loop Aye gets all unique images that are present on the cluster (goes over all containers inside all pods) and sends them to the Anchore Engine. It checks status and evaluation status for every image and exposes certain metrics the Prometheus.

If scanning fails for some reason, Aye will wait for 15 minutes before trying to send that image to Anchore again.

Metrics of images that are no longer present are deleted automatically by Aye. This is done by comparing the list of images from the current loop iteration to the previous one.

Examples

Number of vulnerabilities for each severity found in the image (aye_image_severity_vulnerabilities):

Detailed vulnerabilities metric for image (aye_image_vulnerability_details):

  • List of all metrics
    • aye_added_images_total (total number of total images added by Aye)
    • aye_failed_images_total (total number of images that didn't pass analysis)
    • aye_failed_analysis_total (total number of unsuccessful analysis)
    • aye_image_severity_vulnerabilities (number of vulnerabilities for each severity in the image)
    • aye_image_vulnerability_details (details for all vulnerabilities in the image) - optional, enabled by setting ENABLE_DETAILED_METRICS to true.

Prometheus metrics are exposed at /actuator/prometheus.

Contact

Please email us via JoyoDev

You might also like...

Keycloak - an Open Source Identity and Access Management tool

Keycloak - an Open Source Identity and Access Management tool

Keycloak is an Open Source Identity and Access Management tool. You can use it to add authentication to applications and secure services with minimum effort. No need to deal with storing users or authenticating users.

Sep 20, 2022

Processing and node.js project for rendering MouseGAN images from RunwayML

Processing and node.js project for rendering MouseGAN images from RunwayML

Computer MouseGAN Processing and node.js project for rendering MouseGAN images from RunwayML. Usage Clone or download this repository. git clone https

Apr 1, 2022

a simple program to turn stockX images into gifs!

a simple program to turn stockX images into gifs!

StockX Gif Converter make stockx images look cool Idea I got this idea from Fyko/stockx-gif-next Usage import me.brennan.stockxgiffer.StockXGiffer; p

Jul 19, 2022

🏗 Build container images for your Java applications.

🏗 Build container images for your Java applications.

Jib ☑️ Jib User Survey What do you like best about Jib? What needs to be improved? Please tell us by taking a one-minute survey. Your responses will h

Jan 9, 2023

An Android library for managing images and the memory they use.

An Android library for managing images and the memory they use.

Fresco Fresco is a powerful system for displaying images in Android applications. Fresco takes care of image loading and display, so you don't have to

Jan 3, 2023

Powerful and flexible library for loading, caching and displaying images on Android.

Powerful and flexible library for loading, caching and displaying images on Android.

Universal Image Loader The great ancestor of modern image-loading libraries :) UIL aims to provide a powerful, flexible and highly customizable instru

Jan 2, 2023

Library to generate images from layers

Library to generate images from layers

react-native-image-generator Library for generate images from other images Installation yarn add react-native-image-generator Usage import { generate

Nov 16, 2022

Project for coding information into images via teganography and cryptography.

Project for coding information into images via teganography and cryptography.

SecurePic This project is created as part of the 'Software Engineering' lecture in summer semester 2022 in the Applied Computer Science course at DHBW

Jun 6, 2022

Spring-Boot-Plus is a easy-to-use, high-speed, high-efficient,feature-rich, open source spring boot scaffolding

Spring-Boot-Plus is a easy-to-use, high-speed, high-efficient,feature-rich, open source spring boot scaffolding

Everyone can develop projects independently, quickly and efficiently! What is spring-boot-plus? A easy-to-use, high-speed, high-efficient, feature-ric

Dec 31, 2022
Releases(v1.0.0)
Owner
null
A command-line tool to generate different types of noise as images.

noisegen A command-line tool to generate different types of noise as images. Usage Run one of the releases, either the JAR using java -jar noisegen-0.

Tommy Ettinger 6 Jul 21, 2022
A tool generating local images based on ECharts-Java

Test plan Local unit testing Docker AWS remote Linux Windows MacOS Integration Test with Snapshot version Introduction This library is used to take sn

ECharts Java Open Source Project 5 Dec 16, 2022
The Google code scanner API provides a complete solution for scanning codes without requiring your app to request camera permission.

Android Google Code Scanner The Google code scanner API provides a complete solution for scanning codes without requiring your app to request camera p

Prabhakar Thota 7 Nov 23, 2022
CRUD operation using java springboot microservice hosted in kubernetes env, data stored in mongodb

springboot-mongodb-k8s-parth Brief Introduction Hello Friends, I have created REST API using Springboot and Spring cloud application which performs CR

Parth Shah 1 Nov 11, 2021
Practice and testing with Java 11, Prometheus, and Spring-boot with MicroService Architecture. Designed to run on Kubernetes in minikube.

This application was written by Andrew Aslakson Built to run on minikube using kubernetes General race tracking system? Secure with Firebase Authentic

null 1 Feb 5, 2022
helm、kubernetes、spring boot、java

建立好 K8s 後需要再 /etc/default/kubelet 新增 --node-ip 的字段其值為當前主機的 IP 在 deployment/kubernetes 下使用 kubectl apply -f . 即可運行服務 Helm Initialize a Helm Chart Repos

CCHong 3 Mar 5, 2022
Hi, Spring fans! We're going to learn how to build Kubernetes operators, CRDs, and controllers

Bootiful Kubernetes Operators Make sure youre in the default namespace of a Kubernetes cluster. Not sure fi this matters but I am, so it might help. T

Josh Long 14 Dec 29, 2022
The Spring Boot Sample App on K8S has been implemented using GKE K8S Cluster, Spring Boot, Maven, and Docker.

gke-springboot-sampleapp ?? The Spring Boot Sample App on K8S has been implemented using GKE K8S Cluster, Spring Boot, Maven, and Docker. Usage To be

KYEONGMIN CHO 1 Feb 1, 2022
Automated health check for Zeebe cluster

cluster-healthcheck Automated health check for Camunda Cloud clusters. See HealthCheck for usage. This project is in very very early stages of develop

Peter Ihme 2 Oct 16, 2021
A redis based cluster cloud system for minecraft.

RediCloud A redis based cluster cloud system for minecraft. [Discord | Developer] Overview What is RediCloud? Features Commands Requirements Installat

null 21 Dec 27, 2022