Skip to content

leonardpahlke/carbonaut

Repository files navigation

carbonaut-banner

GitHub go.mod Go version of a Go module Go Report Card

Carbonaut is an open source cloud native software project which aims to establish transparency for energy and IT-Resources used, emissions caused and eventually, which natural resources are used to run your software. The project is a POC published end of May 2024 and may not get developed further.

Information about the project is available on the carbonaut.dev website

  • ARCHITECTURE: link.
  • API SCHEMA: link.
  • DATA SCHEMA: link.
  • DEVELOPMENT AND CONTRIBUTION: link.
  • INSTALLATION AND DEPLOYMENT: link

OPEN ISSUES / TODO

(S) Own Stress Test Container images

Build own stress test container images since polinux/stress and yauritux/sysbench are not maintained. Smth like this could work.

FROM debian:12

RUN apt-get update && apt-get install -y stress \
        --no-install-recommends && rm -r /var/lib/apt/lists/*

CMD ["stress", "--verbose", "--vm", "1", "--vm-bytes", "256M"]

(S) Provider Equinix Paging

Extend Equinix provider to support paging in resource & project discovery. Paging information is provided in the "Meta" information which right now is not parsed and processed.

(S) Cache energy mix data

The energy mix data could be cached across resources. It's likely that multiple resources are deployed in the same region - its therefore not needed to query data by resource.

(M) Detect static resource updates of remaining resources

Some of the static data may be updated without changing the resource name. This is not picked up by carbonaut right now.

(M) Implement prometheus exporter

Carbonaut just exposes metrics in json format. This should get extended in the future to a prometheus exporter.