Skip to content

Commit

Permalink
Added SDN Dashboard helm chart
Browse files Browse the repository at this point in the history
Signed-off-by: csahithi <[email protected]>
  • Loading branch information
csahithi committed May 31, 2024
1 parent f5d4dfb commit 584af81
Show file tree
Hide file tree
Showing 28 changed files with 28,982 additions and 0 deletions.
1 change: 1 addition & 0 deletions helm/sdn-dashboard/.helmdocsignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
charts
31 changes: 31 additions & 0 deletions helm/sdn-dashboard/.helmignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
# Patterns to ignore when building packages.
# This supports shell glob matching, relative path matching, and
# negation (prefixed with !). Only one pattern per line.
.DS_Store
# Common VCS dirs
.git/
.bzr/
.bzrignore
.hg/
.hgignore
.svn/
# Common backup files
*.swp
*.bak
*.tmp
*.orig
*~
# Various IDEs
.project
.idea/
*.tmproj
.vscode/
# other files
*.tgz
.helmignore
.helmdocsignore
verify_digest.sh
check_lint.sh
README.md.gotmpl
README-values.md.gotmpl
README-deployment.md.gotmpl
11 changes: 11 additions & 0 deletions helm/sdn-dashboard/CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# v1.0.0
- Initial version of sdn-dashboard helm chart
- Installs grafana dashboards for the following SDN components:
- OVN Central / North Daemon
- OVN Central / Northbound DB
- OVN Central / Southbound DB
- OVN Host / Controller
- Host / OVS
- OVN K8S / Node Agent
- OVN K8S / Cluster Manager
- Host / Network Processes
8 changes: 8 additions & 0 deletions helm/sdn-dashboard/Chart.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
apiVersion: "v2"
description: "A Helm chart for sdn-dashboard"
name: "sdn-dashboard"
version: "1.0.0"
home: https://www.ovn.org/
sources:
- https://github.com/ovn-org/ovn-kubernetes
appVersion: "1.0.0"
87 changes: 87 additions & 0 deletions helm/sdn-dashboard/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,87 @@
# sdn-dashboard

-----------------------

![Version: 1.0.0](https://img.shields.io/badge/Version-1.0.0-informational?style=flat-square) ![AppVersion: 1.0.0](https://img.shields.io/badge/AppVersion-1.0.0-informational?style=flat-square)

**Homepage:** <https://www.ovn.org/>

## Source Code

* <https://github.com/ovn-org/ovn-kubernetes>

# sdn-dashboard

This helm chart installs the dashboards for ovn-kubernetes. The dashboards are installed for the following SDN components:
- OVN Central / North Daemon
- OVN Central / Northbound DB
- OVN Central / Southbound DB
- OVN Host / Controller
- Host / OVS
- OVN K8S / Node Agent
- OVN K8S / Cluster Manager
- Host / Network Processes

```
helm install sdn-dashboard sdn-dashboard/
```


## Values

<table>
<thead>
<th>Key</th>
<th>Type</th>
<th>Default</th>
<th>Description</th>
</thead>
<tbody>
<tr>
<td>global.enableDPUDashboards</td>
<td>bool</td>
<td><pre lang="json">
false
</pre>
</td>
<td>Displays DPU panels in the dashboards if set to true</td>
</tr>
<tr>
<td>global.namespace</td>
<td>string</td>
<td><pre lang="json">
"monitoring"
</pre>
</td>
<td>Namespace where the dashboards are installed. Same as the namespace where prometheus and grafana are installed.</td>
</tr>
</tbody>
</table>



Before, installing this helm chart, prometheus and grafana must be pre-installed.

## Installing prometheus-grafana helm chart

The [kube-prometheus-stack](https://github.com/prometheus-community/helm-charts/tree/main/charts/kube-prometheus-stack) helm chart installs prometheus and grafana.

```
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
helm install kube-prometheus-stack prometheus-community/kube-prometheus-stack -n <desired_namespace> --set prometheusOperator.tls.enabled=false --set prometheusOperator.admissionWebhooks.enabled=false --set prometheusOperator.admissionWebhooks.patch.enabled=false
```

By default this chart installs additional, dependent charts:
- [prometheus-community/kube-state-metrics](https://github.com/prometheus-community/helm-charts/tree/main/charts/kube-state-metrics)
- [prometheus-community/prometheus-node-exporter](https://github.com/prometheus-community/helm-charts/tree/main/charts/prometheus-node-exporter)
- [grafana/grafana](https://github.com/grafana/helm-charts/tree/main/charts/grafana)

After configuring Prometheus and Grafana and installing sdn-dashboard helm chart, ovn-kubernetes can be installed and the metrics will be scraped.

## Port Forwarding to access Grafana and Prometheus UI

```
kubectl -n <desired_namespace> port-forward deployment/kube-prometheus-stack-grafana 3000:3000 --address 0.0.0.0
kubectl -n <desired_namespace> port-forward prometheus-kube-prometheus-stack-prometheus-0 9090:9090 --address 0.0.0.0
```
52 changes: 52 additions & 0 deletions helm/sdn-dashboard/README.md.gotmpl
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
{{ template "chart.header" . }}
-----------------------

{{ template "chart.badgesSection" . }}

{{ template "chart.homepageLine" . }}

{{ template "chart.sourcesSection" . }}

# sdn-dashboard

This helm chart installs the dashboards for ovn-kubernetes. The dashboards are installed for the following SDN components:
- OVN Central / North Daemon
- OVN Central / Northbound DB
- OVN Central / Southbound DB
- OVN Host / Controller
- Host / OVS
- OVN K8S / Node Agent
- OVN K8S / Cluster Manager
- Host / Network Processes

```
helm install sdn-dashboard sdn-dashboard/
```

{{ template "chart.valuesSectionHtml" . }}

Before, installing this helm chart, prometheus and grafana must be pre-installed.

## Installing prometheus-grafana helm chart

The [kube-prometheus-stack](https://github.com/prometheus-community/helm-charts/tree/main/charts/kube-prometheus-stack) helm chart installs prometheus and grafana.

```
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
helm install kube-prometheus-stack prometheus-community/kube-prometheus-stack -n <desired_namespace> --set prometheusOperator.tls.enabled=false --set prometheusOperator.admissionWebhooks.enabled=false --set prometheusOperator.admissionWebhooks.patch.enabled=false
```

By default this chart installs additional, dependent charts:
- [prometheus-community/kube-state-metrics](https://github.com/prometheus-community/helm-charts/tree/main/charts/kube-state-metrics)
- [prometheus-community/prometheus-node-exporter](https://github.com/prometheus-community/helm-charts/tree/main/charts/prometheus-node-exporter)
- [grafana/grafana](https://github.com/grafana/helm-charts/tree/main/charts/grafana)

After configuring Prometheus and Grafana and installing sdn-dashboard helm chart, ovn-kubernetes can be installed and the metrics will be scraped.

## Port Forwarding to access Grafana and Prometheus UI

```
kubectl -n <desired_namespace> port-forward deployment/kube-prometheus-stack-grafana 3000:3000 --address 0.0.0.0

kubectl -n <desired_namespace> port-forward prometheus-kube-prometheus-stack-prometheus-0 9090:9090 --address 0.0.0.0
```
Loading

0 comments on commit 584af81

Please sign in to comment.