pie

module
v0.10.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 22, 2024 License: Apache-2.0

README

GitHub release (latest by date) Main Go Reference Go Report Card

pie

An application that monitors the availability of Kubernetes storage in end-to-end manner.

Description

pie verifies that PVs are successfully provisioned on the specified nodes for the specified storage classes and that the PVs can be successfully accessed. It outputs the results as metrics.

Supported environments

  • Kubernetes: 1.29, 1.28, 1.27

Getting Started

Running on the cluster
  1. Create values.yaml. At least the following setting is mandatory.

    controller:
      monitoringStorageClasses: [<storage_classes_to_be_monitored>]
    
  2. Then you can install it using Helm.

    helm repo add pie https://topolvm.github.io/pie
    helm install pie --values values.yaml
    

Prometheus metrics

pie_io_write_latency_seconds

IO latency of write.

TYPE: gauge

pie_io_read_latency_seconds

IO latency of read.

TYPE: gauge

pie_create_probe_total

The number of attempts of the creation of the Pod object and the creation of the container.

TYPE: counter

pie_performance_probe_total

The number of attempts of performing the IO benchmarks.

TYPE: counter

pie_io_write_latency_on_mount_probe_seconds

Experimental metrics. IO latency of write, benchmarked on mount-probe Pods.

TYPE: gauge

pie_io_read_latency_on_mount_probe_seconds

Experimental metrics. IO latency of read, benchmarked on mount-probe Pods.

TYPE: gauge

pie_mount_probe_total

Experimental metrics. The number of attempts of the creation of the mount-probe Pod object and the creation of the container.

TYPE: counter

pie_performance_on_mount_probe_total

Experimental metrics. The number of attempts of performing the IO benchmarks on mount-probe Pods.

TYPE: counter

pie_provision_probe_total

Experimental metrics. The number of attempts of the creation of the provision-probe Pod object and the creation of the container.

TYPE: counter

Contributing

Test It Out
  1. Run unit tests.

    make test
    
  2. Run e2e test on the local cluster.

    make -C test/e2e create-cluster
    make -C test/e2e test
    

Directories

Path Synopsis
api
pie/v1alpha1
Package v1alpha1 contains API Schema definitions for the pie v1alpha1 API group +kubebuilder:object:generate=true +groupName=pie.topolvm.io
Package v1alpha1 contains API Schema definitions for the pie v1alpha1 API group +kubebuilder:object:generate=true +groupName=pie.topolvm.io
internal

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL