---
title: Charmhub | Deploy Opensearch K8S using Charmhub - The Open Operator Collection
description: Deploy the latest version of Opensearch K8S as a Kubernetes Operator
  on any cloud.
url: https://charmhub.io/opensearch-k8s/docs/h-monitoring-enable
---

# Opensearch K8S

[Canonical](https://charmhub.io/publisher/data-platform "View all packages from Canonical")

* [Canonical](https://charmhub.io/publisher/data-platform "View all packages from Canonical")

Platform:

2/edge 22

```
juju deploy opensearch-k8s --channel 2/edge
```

[Learn to deploy on juju >](https://juju.is/docs/juju/manage-applications)

---

Share your thoughts on this charm with the community on discourse.

[Join the discussion](https://discourse.charmhub.io/)

# How to enable monitoring (COS)

All commands are written for juju >= v.3.1.7

## [Prerequisites](https://charmhub.io/opensearch-k8s/docs/h-monitoring-enable#p-32295-prerequisites)

* A deployed [Charmed OpenSearch operator](https://charmhub.io/opensearch-k8s/docs/t-deploy-opensearch)
* A deployed [`cos-lite` bundle in a Kubernetes environment](https://charmhub.io/topics/canonical-observability-stack/tutorials/install-microk8s)

## [Summary](https://charmhub.io/opensearch-k8s/docs/h-monitoring-enable#p-32295-summary)

* [Offer interfaces via the COS controller](https://charmhub.io/opensearch-k8s/docs/h-monitoring-enable#offer-interfaces-via-the-cos-controller)
* [Consume offers via the OpenSearch model](https://charmhub.io/opensearch-k8s/docs/h-monitoring-enable#consume-offers-via-the-opensearch-model)
* [Deploy and integrate Grafana](https://charmhub.io/opensearch-k8s/docs/h-monitoring-enable#deploy-and-integrate-grafana)
* [Connect to the Grafana web interface](https://charmhub.io/opensearch-k8s/docs/h-monitoring-enable#connect-to-the-grafana-web-interface)

---

## [Offer interfaces via the COS controller](https://charmhub.io/opensearch-k8s/docs/h-monitoring-enable#p-32295-offer-interfaces-via-the-cos-controller)

First, we will switch to the COS K8s environment and offer COS interfaces to be cross-model integrated with the Charmed OpenSearch model.

To switch to the Kubernetes controller for the COS model, run

```
juju switch <k8s_cos_controller>:<cos_model_name>
```

To offer the COS interfaces, run

```
juju offer grafana:grafana-dashboard
juju offer loki:logging
juju offer prometheus:receive-remote-write
```

## [Consume offers via the OpenSearch model](https://charmhub.io/opensearch-k8s/docs/h-monitoring-enable#p-32295-consume-offers-via-the-opensearch-model)

Next, we will switch to the Charmed OpenSearch model, find offers, and consume them.

We are currently on the Kubernetes controller for the COS model. To switch to the OpenSearch model, run

```
juju switch <db_controller>:<opensearch_model_name>
```

To consume offers to be reachable in the current model, run

```
juju consume <k8s_cos_controller>:admin/cos.grafana
juju consume <k8s_cos_controller>:admin/cos.loki
juju consume <k8s_cos_controller>:admin/cos.prometheus
```

## [Deploy and integrate Grafana](https://charmhub.io/opensearch-k8s/docs/h-monitoring-enable#p-32295-deploy-and-integrate-grafana)

First, deploy [grafana-agent](https://charmhub.io/grafana-agent):

```
juju deploy grafana-agent
```

Then, integrate (previously known as “[relate](https://juju.is/docs/juju/integration)”) it with Charmed OpenSearch:

```
juju integrate grafana-agent grafana
juju integrate grafana-agent loki
juju integrate grafana-agent prometheus
```

Finally, integrate `grafana-agent` with consumed COS offers:

```
juju integrate grafana-agent-k8s opensearch:grafana-dashboard
juju integrate grafana-agent-k8s opensearch:logging
juju integrate grafana-agent-k8s opensearch:metrics-endpoint
```

After this is complete, Grafana will show the new dashboard `Charmed OpenSearch` and will allow access to Charmed OpenSearch logs on Loki.

### [Extend to Large Deployments](https://charmhub.io/opensearch-k8s/docs/h-monitoring-enable#p-32295-extend-to-large-deployments)

Large deployments run across multiple juju applications. Connect all the units of each application to grafana-agent, as explained above, and the dashboard will be able to summarize the entire cluster.

### [Connect Multiple Clusters](https://charmhub.io/opensearch-k8s/docs/h-monitoring-enable#p-32295-connect-multiple-clusters)

It is possible to have the same COS and dashboard for multiple deployments. The dashboard provides selectors to filter which cluster to watch at the time.

## [Connect to the Grafana web interface](https://charmhub.io/opensearch-k8s/docs/h-monitoring-enable#p-32295-connect-to-the-grafana-web-interface)

To connect to the Grafana web interface, follow the [Browse dashboards](https://charmhub.io/topics/canonical-observability-stack/tutorials/install-microk8s?_ga=2.201254254.1948444620.1704703837-757109492.1701777558#heading--browse-dashboards) section of the MicroK8s “Getting started” guide.

```
juju run grafana/leader get-admin-password --model <k8s_cos_controller>:<cos_model_name>
```

### [Dashboard details](https://charmhub.io/opensearch-k8s/docs/h-monitoring-enable#p-32295-dashboard-details)

After accessing Grafana web interface, select the “Charmed OpenSearch” dashboard.

The dashboard filters for juju-specific elements, e.g. application name, unit, model; and also OpenSearch’s cluster and roles. The cluster dropdown allows to select which cluster we want to see the statistics from:

It is also possible to select a subset of nodes following roles. That can select nodes across models or applications as well.

---
