Skip to content

Latest commit

 

History

History
68 lines (46 loc) · 2.5 KB

kubernetes.rst

File metadata and controls

68 lines (46 loc) · 2.5 KB

Kubernetes integration

This software is pre-production and should not be deployed to production servers.

The diagram below puts Kubernetes integration in context of a cluster and monitoring infrastructure:

kubernetes_context.png

  • Monitoring
  • Allocation
Note:In allocation mode, because of Kubernetes internal reconcillation loop for resource managment (--sync-frequency defaults to 60s), it is required from Allocator class to repeat desired allocations in every iteration. This will be fixed in future versions.
  • Kubernetes version >= 1.13.x,
  • cgroup driver: systemd or cgroupfs.

In wca configuration file one can set below listed parameters. Please refer to example configuration file for kubernetes.

Reference configs are in configuration file for kubernetes.

How deploy wca solution How deploy cadvisor solution

Task metrics (e.g. cycles, cache_misses_per_kilo_instructions) have labels which are generated in the manner:

  • pod's label sanitized (replaced '.' with '_'),
  • additional label task_name which value is created by joining pod namespace and pod name (e.g. 'default/stress_ng'),
  • additional label task_id which value is equal to pod identifier.

List of available resources:

  • disk
  • mem
  • cpus
  • limits_mem
  • limits_cpus
  • requests_mem
  • requests_cpus

Task resources "disk" and "mem" are scalar values expressed in bytes. Fractional "cpus" values correspond to partial shares of a CPU. They are calculated from containers spec (https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/#meaning-of-memory). limits_* and requests_* are added according to k8s documentation (https://kubernetes.io/docs/concepts/configuration/manage-compute-resources-container/#resource-requests-and-limits-of-pod-and-container).