Custom metrics for applications in Prometheus on Kubernetes

Ғылым және технология

Subscribe to show your support! goo.gl/1Ty1Q2 .
Patreon 👉🏽 / marceldempers
Checkout the source code below 👇🏽 and follow along 🤓
Also if you want to support the channel further, become a member 😎
marceldempers.dev/join
Checkout "That DevOps Community" too
marceldempers.dev/community
Source Code 🧐
--------------------------------------------------------------
github.com/marcel-dempers/doc...
Checkout my Datree video
------------------------------------------
👉🏽 • Detect Kubernetes misc...
Introduction to Service Monitors
👉🏽 • Introduction to Servic...
How to monitor Kubernetes in 2022
👉🏽 • How to Monitor a Kuber...
If you are new to Kubernetes, check out my getting started playlist on Kubernetes below :)
Kubernetes Guide for Beginners:
---------------------------------------------------
• Kubernetes development...
Kubernetes Monitoring Guide:
-----------------------------------------------
• Kubernetes Monitoring ...
Kubernetes Secret Management Guide:
--------------------------------------------------------------
• Kubernetes Secret Mana...
Like and Subscribe for more :)
Follow me on socials!
marceldempers.dev
Twitter | / marceldempers
GitHub | github.com/marcel-dempers
Facebook | thatdevopsguy
LinkedIn | / marceldempers
Instagram | / thatdevopsguy
Music:
Track: JOURNAL - Dream of you | is licensed under a Creative Commons Attribution licence (creativecommons.org/licenses/...)
Listen: / dreamofyou
Track: Loxbeats - Surface | is licensed under a Creative Commons Attribution licence (creativecommons.org/licenses/...)
Listen: / surface
Track: Reckoner - lofi hip hop chill beats for study~game~sleep | is licensed under a Creative Commons Attribution licence (creativecommons.org/licenses/...)
Listen: / reckoner-lofi-hip-hop-...
Track: souKo - souKo - Parallel | is licensed under a Creative Commons Attribution licence (creativecommons.org/licenses/...)
Listen: / parallel
Timestamps
00:00 Introduction - agenda
00:46 Overview
01:14 Source Code
02:55 Datree sponsor
04:22 Three High level components
05:25 Applications - add metrics
08:39 Starting applications with compose
10:00 Monitoring components
12:08 Create Kubernetes cluster
13:08 kube prometheus deployment
15:08 Grafana Dashboards
16:53 Deploy prometheus
19:26 Deploy service monitor
21:03 Deploy our application
22:10 Bringing it together
06:46
08:23 Check the Install
08:53 View Grafana and Prometheus Dashboards
10:00 Deploy a Prometheus
12:41 Deploy a Service Monitor
15:32 Deploy an Example Application to scrape
18:06 Check Prometheus results

Пікірлер: 45

  • @UltimateKeyboardHero
    @UltimateKeyboardHero Жыл бұрын

    Over the past year or so, this has to be the 3rd time you magically read my mind about what I'm stuck with and released a video about it. Cheers Marcel 🍻

  • @aceisastud
    @aceisastud Жыл бұрын

    I pass your videos around all the time. Love your attitude and great way you explain the topics. Your videos over the years have helped me countless of times. Thank you!

  • @dillonhansen71
    @dillonhansen71 Жыл бұрын

    This channel is so under appreciated. I hope the KZread algorithm blesses this channel. This is quality content that can change peoples careers...

  • @madrum
    @madrum Жыл бұрын

    Well done! I appreciate all the time you’ve put into this video.

  • @suhasraj9054
    @suhasraj9054 Жыл бұрын

    You and Venkat are best for Kubernetes tutorials !! such a quality content ..Much Thanks for the effort you put in !!

  • @ah47f
    @ah47f5 ай бұрын

    This tutorial is GOLD! Helped me understand a lot of prometheous mysteries! Thank you

  • @weiyen
    @weiyen Жыл бұрын

    Thanks, I watched your guide to this in regards to this and I have to say that this and I have to say that it clarified a lot of the mysteries behind prometheus and metrics. This is a very very good video and it was the video I needed to watch to understand how it works

  • @NivaldoPaulo
    @NivaldoPaulo29 күн бұрын

    GOLD content man, thanks!

  • @metaldragon24x7
    @metaldragon24x7 Жыл бұрын

    Outstanding material ! How have ppl not found this channel yet ?

  • @mrcharm767
    @mrcharm767 Жыл бұрын

    i always loved all ur videos and continuing thanks for such value add

  • @iposipos9342
    @iposipos9342 Жыл бұрын

    Your videos have helped me alot and i appreciate it. Thanks:) Will you also make a video on podmonitors?

  • @ReviewSmartTech
    @ReviewSmartTech3 ай бұрын

    Awesome knowledge shared

  • @chasim1982
    @chasim1982 Жыл бұрын

    Great Videos as always, please make video with application slack alerting & application monitoring in grafana as well, thanks

  • @thanhlocnguyen4910
    @thanhlocnguyen4910 Жыл бұрын

    Great video. I wonder is how to show all custom metrics of prometheus intances in grafana ? Thank you...

  • @unkwnown1947
    @unkwnown1947 Жыл бұрын

    Very informative, got a good help in development, Thanks 👍. Can you guide how to expose custom metrics for application written in C language.

  • @georgelza
    @georgelza Жыл бұрын

    For Kube-prometheus, which Grafana dashboard do you recommend/prefer ?

  • @georgelza
    @georgelza Жыл бұрын

    @18:20 ... you deploy a 2nd ? Prometheus instance (running the service monitors/prometheus.yaml file) ? did I understand that correct, this separate from the one deployed as part of the kube-prometheus deployment. Some how seems to remember that deployment deployed a instance

  • @habibtahardjebbar2056
    @habibtahardjebbar2056 Жыл бұрын

    can we have a video about Exporter query MongoDB and Prometheus on Kubernetes

  • @SPT-bk9qc
    @SPT-bk9qc6 ай бұрын

    This is very helpful. When I follow the tutorial - I face two issues and would be helpful if you can guide me. First, there are no default dashboards populated on the grafana page, zero dashboards. Second, when I select a particular metric and see the table or graph and execute it, I do not see any values in the dashboard. Can you help me please

  • @do3484
    @do3484 Жыл бұрын

    how i could save the prometheus data using volumes? I have an EKS cluster

  • @JackReacher1
    @JackReacher1 Жыл бұрын

    I created my own custom metrics using prom-client in python which is a counter called "request_count" for my flask app. When I tried to scale with hpa using "request_count"; in the prometheus seeing the "request_count_total" I found that only one pod is serving all the requests; instead of all the pods getting created with hpa. Marcel do you know what went wrong?

  • @user-wr4jh1ul8x

    @user-wr4jh1ul8x

    9 ай бұрын

    hi, were you able to find the solution?

  • @180doman
    @180doman Жыл бұрын

    Maybe next topic: Network Policies with Calico and kube-iptables-tailer?

  • @yogeshmandge1927
    @yogeshmandge1927Ай бұрын

    How to check metrics details using CLI instead of Web?

  • @avanthaditya8596
    @avanthaditya8596 Жыл бұрын

    We have a legacy app and cannot instrument it with prometheus library. The app writes metrics data to a json file on disk. How can we scrape this data in prometheus?

  • @user-ur4lm7rg5t
    @user-ur4lm7rg5t Жыл бұрын

    how I can change /metrics path for each pod to my spring boot path /actuator/prometheus which has basic auth with specific credentionals?

  • @MarcelDempers

    @MarcelDempers

    Жыл бұрын

    you can. service monitors allow you to change the paths and supply basic auth credentials too. See the docs github.com/prometheus-operator/prometheus-operator/blob/main/Documentation/user-guides/basic-auth.md

  • @user-ur4lm7rg5t

    @user-ur4lm7rg5t

    Жыл бұрын

    @@MarcelDempers thanks!

  • @eduardmart1237
    @eduardmart1237 Жыл бұрын

    How will it work if you have several instances of your application? Like several pods..

  • @MarcelDempers

    @MarcelDempers

    Жыл бұрын

    Service monitors translates to multiple endpoints as IP addresses under Prometheus targets page.

  • @user-fs8gu4ny9h
    @user-fs8gu4ny9h Жыл бұрын

    I have a problem. At 23:31, I typed python_request_operations_total and executed it. However I always got zero value of the counter. Is it correct?

  • @ad_it

    @ad_it

    Жыл бұрын

    Have you exposed application service and hit application in web browser? Without hitting an application counter won't increment.

  • @user-fs8gu4ny9h

    @user-fs8gu4ny9h

    Жыл бұрын

    @@ad_it I forgot it but I can do custom metrics in my case now. I used the Kubernetes in docker desktop currently and realized that I need to deploy my app on Kubernetes but not in the docker. In my opinion, I may connect to the wrong app(port) and the Prometheus get the zero counter from another app.

  • @vinvvinv7460
    @vinvvinv7460 Жыл бұрын

    Hi, Can you please make a video & explain how to write an ansible playbook step by step in a very simple way? It's a bit confusing regarding spaces & hyphens. I think it's called indentation. In Terraform as well it's used spaces and curly brackets etc,, I am not from a programming background so face difficulty in understanding variables that are used in both applications. Please, it's a request. & Please do reply. if you can explain I would be really grateful Thanks & regards

  • @Bandude231
    @Bandude231 Жыл бұрын

    Can a service monitor watch two or more services?

  • @MarcelDempers

    @MarcelDempers

    Жыл бұрын

    Yes, as long as its selection \ ports match, it sure can 💪🏽

  • @Babbili
    @Babbili Жыл бұрын

    from where you got your k8s T 😆

  • @georgelza
    @georgelza Жыл бұрын

    sorry to bug... it seems my prometheus-applications-0 is seeing the serviceminitor (or well i can see it under config, but it's not showing in service-discovery) and also not picking up my target. additionally... I can port forward directly to the pod, but can't get Grafana connecting to prometheus-applications-0, thinking I might need a service defined for the additional prometheus-applications-o instance ? some self diagnosing ... I've did a port forward of my container/app and I can see the metrics at ../metrics so the python and prometheus instrumentation is working, it's the service discovery where I think i broke something. it's not picking up my targets it seem. please assist. This loooooks like the absolute closest I've been to get this now working :) Appreciate this newer video.

  • @MarcelDempers

    @MarcelDempers

    Жыл бұрын

    prometheus needs to be correctly configured to select the service monitor and the monitor needs to exist where prometheus is looking as mentioned in the video on service monitors. Same for the service the monitor tries to select, else you will have this issue. For grafana to access prometheus, you need a service and a datasource setup for it

  • @georgelza

    @georgelza

    Жыл бұрын

    @@MarcelDempers :) figure that much. but somehow with me moving app from "default" NS to "trustreg" NS I broke it... I got Grafana working. would love / appreciate if you can do example of the app not in default NS, as that will anyhow never be done in prod.

  • @MarcelDempers

    @MarcelDempers

    Жыл бұрын

    It works on any namespace, just update the namespace selector. kzread.info/dash/bejne/kYKotM17mdPLoMo.html

  • @thanhlocnguyen4910

    @thanhlocnguyen4910

    Жыл бұрын

    I have the same problem like you. Can you look a little bit my issue ?

  • @georgelza

    @georgelza

    Жыл бұрын

    @@thanhlocnguyen4910 ... me still. haven't been able to get this working. haven't looked at it in a while either.

  • @BR-lx7py
    @BR-lx7py Жыл бұрын

    Aren't the cool kids using Opentelemetry these days?

Келесі