diff --git a/installers/charm/mon/src/charm.py b/installers/charm/mon/src/charm.py
index 7833deb..d04779a 100755
--- a/installers/charm/mon/src/charm.py
+++ b/installers/charm/mon/src/charm.py
@@ -28,9 +28,9 @@
 from typing import NoReturn, Optional
 
 
+from charms.kafka_k8s.v0.kafka import KafkaEvents, KafkaRequires
 from ops.main import main
 from opslib.osm.charm import CharmedOsmBase, RelationsMissing
-from opslib.osm.interfaces.kafka import KafkaClient
 from opslib.osm.interfaces.keystone import KeystoneClient
 from opslib.osm.interfaces.mongo import MongoClient
 from opslib.osm.interfaces.prometheus import PrometheusClient
@@ -125,6 +125,9 @@
 
 
 class MonCharm(CharmedOsmBase):
+
+    on = KafkaEvents()
+
     def __init__(self, *args) -> NoReturn:
         super().__init__(
             *args,
@@ -149,9 +152,9 @@
                     },
                 },
             )
-        self.kafka_client = KafkaClient(self, "kafka")
-        self.framework.observe(self.on["kafka"].relation_changed, self.configure_pod)
-        self.framework.observe(self.on["kafka"].relation_broken, self.configure_pod)
+        self.kafka = KafkaRequires(self)
+        self.framework.observe(self.on.kafka_available, self.configure_pod)
+        self.framework.observe(self.on.kafka_broken, self.configure_pod)
 
         self.mongodb_client = MongoClient(self, "mongodb")
         self.framework.observe(self.on["mongodb"].relation_changed, self.configure_pod)
@@ -172,10 +175,7 @@
     def _check_missing_dependencies(self, config: ConfigModel):
         missing_relations = []
 
-        if (
-            self.kafka_client.is_missing_data_in_unit()
-            and self.kafka_client.is_missing_data_in_app()
-        ):
+        if not self.kafka.host or not self.kafka.port:
             missing_relations.append("kafka")
         if not config.mongodb_uri and self.mongodb_client.is_missing_data_in_unit():
             missing_relations.append("mongodb")
@@ -270,8 +270,8 @@
                 "OSMMON_EVALUATOR_INTERVAL": config.evaluator_interval,
                 # Kafka configuration
                 "OSMMON_MESSAGE_DRIVER": "kafka",
-                "OSMMON_MESSAGE_HOST": self.kafka_client.host,
-                "OSMMON_MESSAGE_PORT": self.kafka_client.port,
+                "OSMMON_MESSAGE_HOST": self.kafka.host,
+                "OSMMON_MESSAGE_PORT": self.kafka.port,
                 # Database configuration
                 "OSMMON_DATABASE_DRIVER": "mongo",
                 # Prometheus configuration
