Skip to content

Commit

Permalink
add net-exporter-1.21.0-422ccad8d44240d96c1b910ed6799bdd29951f3f.tgz
Browse files Browse the repository at this point in the history
net-exporter-1.21.0-422ccad8d44240d96c1b910ed6799bdd29951f3f.tgz-meta/README.md
net-exporter-1.21.0-422ccad8d44240d96c1b910ed6799bdd29951f3f.tgz-meta/main.yaml
net-exporter-1.21.0-422ccad8d44240d96c1b910ed6799bdd29951f3f.tgz-meta/values.schema.json
  • Loading branch information
catalogbot committed Jan 13, 2025
1 parent e146cb2 commit 1dc4d46
Show file tree
Hide file tree
Showing 5 changed files with 357 additions and 1 deletion.
19 changes: 18 additions & 1 deletion index.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7225,6 +7225,23 @@ entries:
urls:
- https://giantswarm.github.io/default-test-catalog/net-exporter-1.21.0-51a9253e1725966f85b759ae682b828a68dead70.tgz
version: 1.21.0-51a9253e1725966f85b759ae682b828a68dead70
- annotations:
application.giantswarm.io/metadata: https://giantswarm.github.io/default-test-catalog/net-exporter-1.21.0-422ccad8d44240d96c1b910ed6799bdd29951f3f.tgz-meta/main.yaml
application.giantswarm.io/readme: https://giantswarm.github.io/default-test-catalog/net-exporter-1.21.0-422ccad8d44240d96c1b910ed6799bdd29951f3f.tgz-meta/README.md
application.giantswarm.io/team: cabbage
application.giantswarm.io/values-schema: https://giantswarm.github.io/default-test-catalog/net-exporter-1.21.0-422ccad8d44240d96c1b910ed6799bdd29951f3f.tgz-meta/values.schema.json
config.giantswarm.io/version: 1.x.x
apiVersion: v1
appVersion: 1.21.0-422ccad8d44240d96c1b910ed6799bdd29951f3f
created: "2025-01-13T10:47:23.612176174Z"
description: Helm chart for net-exporter.
digest: b474733020e81af4e97fafb880681a0bf3d93b4c5aef802cdd9b9b525cb7864c
home: https://github.com/giantswarm/net-exporter
icon: https://s.giantswarm.io/app-icons/prometheus/1/light.svg
name: net-exporter
urls:
- https://giantswarm.github.io/default-test-catalog/net-exporter-1.21.0-422ccad8d44240d96c1b910ed6799bdd29951f3f.tgz
version: 1.21.0-422ccad8d44240d96c1b910ed6799bdd29951f3f
- annotations:
application.giantswarm.io/metadata: https://giantswarm.github.io/default-test-catalog/net-exporter-1.21.0-3dc19049cdec5f98782b7b94a495aa994ba2b915.tgz-meta/main.yaml
application.giantswarm.io/readme: https://giantswarm.github.io/default-test-catalog/net-exporter-1.21.0-3dc19049cdec5f98782b7b94a495aa994ba2b915.tgz-meta/README.md
Expand Down Expand Up @@ -8597,4 +8614,4 @@ entries:
urls:
- https://giantswarm.github.io/default-test-catalog/vertical-pod-autoscaler-crd-3.1.1-05d778a740e0919e1ad9a8700db30f2169705a6d.tgz
version: 3.1.1-05d778a740e0919e1ad9a8700db30f2169705a6d
generated: "2025-01-13T06:10:57.540774243Z"
generated: "2025-01-13T10:47:23.610827226Z"
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,100 @@
[![CircleCI](https://dl.circleci.com/status-badge/img/gh/giantswarm/net-exporter/tree/main.svg?style=svg)](https://dl.circleci.com/status-badge/redirect/gh/giantswarm/net-exporter/tree/main)
[![Go Report Card](https://goreportcard.com/badge/github.com/giantswarm/net-exporter)](https://goreportcard.com/report/github.com/giantswarm/net-exporter)

# net-exporter

net-exporter is a Prometheus exporter for exposing network information in Kubernetes clusters.
It is packaged as a Helm chart.

net-exporter runs as a Kubernetes Daemonset. This is to allow for intra-pod network calls,
to determine network latency.

## How to build

Build it using the standard `go build` command.

```bash
go build github.com/giantswarm/net-exporter
```

## Deployment

* Managed by [app-operator].
* Production releases are stored in the [default-catalog].
* WIP releases are stored in the [default-test-catalog].

## Installing the Chart

To install the chart locally:

```bash
$ git clone https://github.com/giantswarm/net-exporter.git
$ cd net-exporter
$ helm install helm/net-exporter
```

Provide a custom `values.yaml`:

```bash
$ helm install net-exporter -f values.yaml
```

## Changes to Charts

At the current stage under [helm](./helm), there are two charts. The [net-exporter](./helm/net-exporter) is pushed to the App Catalog. The [net-exporter-chart](./helm/net-exporter-chart) is pushed to the Quay `appr` repo.

It is **important** that they are kept in sync.

We have this differentiation in place because in our Control Planes, we don't use the app-operator to deploy.

## Release Process

Currently only members of the Giant Swarm organization can create releases for this project.
For up to date steps, please refer to internal docs here: https://intranet.giantswarm.io/docs/dev-and-releng/how-to-release-a-project/


## Collectors
All Collectors are enabled by default.

Name | Description
-----|-------------
dns | Exposes DNS latency statistics. Performs host lookups, exposing the time taken per host.
network | Exposes network latency statistics. Performs dials to the other net-exporter Pods, exposing the time taken per host.

## Metrics

Name | Description
-----|------------
`dns_latency_seconds_bucket` | A Prometheus Histogram of DNS resolution latency. See also `dns_latency_seconds_count` and `dns_latency_seconds_sum`.
`dns_resolve_error_total` | The total number of errors encountered resolving DNS.
`dns_error_total` | The total number of internal errors encountered testing DNS resolution.
`network_latency_seconds_bucket` | A Prometheus Histogram of network latency. See also `network_latency_seconds_count` and `network_latency_seconds_sum`.
`network_dial_error_total` | The total number of errors encountered dialing other hosts.
`network_error_total` | The total number of internal errors encountered testing network latency.

For example (some labels ommited for clarity):
```
dns_latency_seconds_bucket{instance="192.168.120.239:8000", host="kubernetes.default.svc.cluster.local", le="0.008"} | 7
```
Here, we expose the latency for the specific instance to resolve the dns host.

```
network_latency_seconds_bucket{instance="192.168.120.239:8000", host="192.168.120.239:8000", le="0.004"} | 28
```
Here, we expose the latency for the specific instance to resolve another instance (specifically, the net-exporter pod, labeled as host).

## Contact

- Mailing list: [giantswarm](https://groups.google.com/forum/!forum/giantswarm)
- IRC: #[giantswarm](irc://irc.freenode.org:6667/#giantswarm) on freenode.org
- Bugs: [issues](https://github.com/giantswarm/net-exporter/issues)

## Contributing & Reporting Bugs

See [CONTRIBUTING](CONTRIBUTING.md) for details on submitting patches, the
contribution workflow as well as reporting bugs.

## License

net-exporter is under the Apache 2.0 license. See the [LICENSE](LICENSE) file for
details.
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
annotations:
application.giantswarm.io/metadata: https://giantswarm.github.io/default-test-catalog/net-exporter-1.21.0-422ccad8d44240d96c1b910ed6799bdd29951f3f.tgz-meta/main.yaml
application.giantswarm.io/readme: https://giantswarm.github.io/default-test-catalog/net-exporter-1.21.0-422ccad8d44240d96c1b910ed6799bdd29951f3f.tgz-meta/README.md
application.giantswarm.io/team: cabbage
application.giantswarm.io/values-schema: https://giantswarm.github.io/default-test-catalog/net-exporter-1.21.0-422ccad8d44240d96c1b910ed6799bdd29951f3f.tgz-meta/values.schema.json
config.giantswarm.io/version: 1.x.x
chartApiVersion: v1
chartFile: net-exporter-1.21.0-422ccad8d44240d96c1b910ed6799bdd29951f3f.tgz
dateCreated: '2025-01-13T10:47:19.565575Z'
digest: b474733020e81af4e97fafb880681a0bf3d93b4c5aef802cdd9b9b525cb7864c
home: https://github.com/giantswarm/net-exporter
icon: https://s.giantswarm.io/app-icons/prometheus/1/light.svg
Original file line number Diff line number Diff line change
@@ -0,0 +1,227 @@
{
"$schema": "http://json-schema.org/schema#",
"type": "object",
"properties": {
"NetExporter": {
"type": "object",
"properties": {
"DNSCheck": {
"type": "object",
"properties": {
"TCP": {
"type": "object",
"properties": {
"Disabled": {
"type": "boolean"
}
}
}
}
},
"Hosts": {
"type": "string"
},
"NTPServers": {
"type": "string"
}
}
},
"ciliumNetworkPolicy": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
}
}
},
"cluster": {
"type": "object",
"properties": {
"kubernetes": {
"type": "object",
"properties": {
"DNS": {
"type": "object",
"properties": {
"IP": {
"type": "string"
}
}
}
}
}
}
},
"controlPlaneSubnets": {
"type": "array"
},
"daemonset": {
"type": "object",
"properties": {
"priorityClassName": {
"type": "string"
}
}
},
"dns": {
"type": "object",
"properties": {
"label": {
"type": "string"
},
"namespace": {
"type": "string"
},
"port": {
"type": "integer"
},
"service": {
"type": "string"
}
}
},
"dnscache": {
"type": "object",
"properties": {
"port": {
"type": "integer"
}
}
},
"global": {
"type": "object",
"properties": {
"podSecurityStandards": {
"type": "object",
"properties": {
"enforced": {
"type": "boolean"
}
}
}
}
},
"groupID": {
"type": "integer"
},
"image": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"registry": {
"type": "string"
},
"tag": {
"type": "string"
}
}
},
"kubectl": {
"type": "object",
"properties": {
"image": {
"type": "object",
"properties": {
"name": {
"type": "string"
},
"registry": {
"type": "string"
},
"tag": {
"type": "string"
}
}
}
}
},
"name": {
"type": "string"
},
"podSecurityContext": {
"type": "object"
},
"port": {
"type": "integer"
},
"resources": {
"type": "object",
"properties": {
"limits": {
"type": "object",
"properties": {
"memory": {
"type": "string"
}
}
},
"requests": {
"type": "object",
"properties": {
"cpu": {
"type": "string"
},
"memory": {
"type": "string"
}
}
}
}
},
"securityContext": {
"type": "object"
},
"serviceMonitor": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
},
"interval": {
"type": "string"
},
"scrapeTimeout": {
"type": "string"
}
}
},
"serviceType": {
"type": "string"
},
"timeout": {
"type": "string"
},
"userID": {
"type": "integer"
},
"verticalPodAutoscaler": {
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
},
"maxAllowed": {
"type": "object",
"properties": {
"memory": {
"type": "string"
}
}
},
"minAllowed": {
"type": "object",
"properties": {
"cpu": {
"type": "string"
},
"memory": {
"type": "string"
}
}
}
}
}
}
}

0 comments on commit 1dc4d46

Please sign in to comment.