100 Commits

Author SHA1 Message Date
d25cee3c8c Merge branch 'automated-tasks' into 'development'
chore(gitlab-ci): Automated update of git sub-module

See merge request nofusscomputing/projects/kubernetes_monitoring!28
2025-02-26 13:09:42 +00:00
05bd0cd6d4 chore(git): updated submodule gitlab-ci
Automation Data:
{
    "branch": "development",
    "current_commit": "6f8dfcba0b25313b59bc17b4c99d674fcedd207a)",
    "name": "gitlab-ci",
    "path": "/builds/nofusscomputing/projects/kubernetes_monitoring/_automation_/gitlab-ci",
    "remote_head": "224ef831571458ad433a0143eec00df0f7e8b409)",
    "remote_name": "origin",
    "url": "https://gitlab.com/nofusscomputing/projects/gitlab-ci.git"
}

Changes: Submodule path gitlab-ci: checked out 224ef831571458ad433a0143eec00df0f7e8b409

MR !28
2025-02-26 13:08:57 +00:00
ac6b7ef31e Merge branch 'automated-tasks' into 'development'
chore(gitlab-ci): Automated update of git sub-module

See merge request nofusscomputing/projects/kubernetes_monitoring!25
2024-08-19 07:25:36 +00:00
6b44c1df69 chore(git): updated submodule gitlab-ci
Automation Data:
{
    "branch": "development",
    "current_commit": "58ffcabbfb503af3e57d9cb3ab43931b23dc4cd8)",
    "name": "gitlab-ci",
    "path": "/builds/nofusscomputing/projects/kubernetes_monitoring/_automation_/gitlab-ci",
    "remote_head": "6f8dfcba0b25313b59bc17b4c99d674fcedd207a)",
    "remote_name": "origin",
    "url": "https://gitlab.com/nofusscomputing/projects/gitlab-ci.git"
}

Changes: Submodule path gitlab-ci: checked out 6f8dfcba0b25313b59bc17b4c99d674fcedd207a

MR !25
2024-08-19 07:24:49 +00:00
d5deb022c5 Merge branch 'automated-tasks' into 'development'
chore(website-template): Automated update of git sub-module

See merge request nofusscomputing/projects/kubernetes_monitoring!24
2024-08-01 06:09:00 +00:00
21c5e87c85 chore(git): updated submodule gitlab-ci
Automation Data:
{
    "branch": "development",
    "current_commit": "673441f83a7d943434252ee23899e3572cdfb141)",
    "name": "gitlab-ci",
    "path": "/builds/nofusscomputing/projects/kubernetes_monitoring/_automation_/gitlab-ci",
    "remote_head": "58ffcabbfb503af3e57d9cb3ab43931b23dc4cd8)",
    "remote_name": "origin",
    "url": "https://gitlab.com/nofusscomputing/projects/gitlab-ci.git"
}

Changes: Submodule path gitlab-ci: checked out 58ffcabbfb503af3e57d9cb3ab43931b23dc4cd8

MR !24
2024-08-01 06:08:17 +00:00
6ac6ced4bb chore(git): updated submodule website-template
Automation Data:
{
    "branch": "development",
    "current_commit": "92c4b16a14524e7b5b18171d4e21b72676c36fbf)",
    "name": "website-template",
    "path": "/builds/nofusscomputing/projects/kubernetes_monitoring/_automation_/website-template",
    "remote_head": "8735f623dc5e1d9c9e46e50db03b4c41cb3d1efd)",
    "remote_name": "origin",
    "url": "https://gitlab.com/nofusscomputing/infrastructure/website-template.git"
}

Changes: Submodule path website-template: checked out 8735f623dc5e1d9c9e46e50db03b4c41cb3d1efd

MR !24
2024-06-30 18:03:35 +00:00
39f26c8f82 Merge branch 'automated-tasks' into 'development'
chore(website-template): Automated update of git sub-module

See merge request nofusscomputing/projects/kubernetes_monitoring!23
2024-06-30 17:48:54 +00:00
13e60d0a76 chore(git): updated submodule website-template
Automation Data:
{
    "branch": "development",
    "current_commit": "f5a82d3604faca56756eec91acee28ff89defd1d)",
    "name": "website-template",
    "path": "/builds/nofusscomputing/projects/kubernetes_monitoring/_automation_/website-template",
    "remote_head": "92c4b16a14524e7b5b18171d4e21b72676c36fbf)",
    "remote_name": "origin",
    "url": "https://gitlab.com/nofusscomputing/infrastructure/website-template.git"
}

Changes: Submodule path website-template: checked out 92c4b16a14524e7b5b18171d4e21b72676c36fbf

MR !23
2024-06-30 17:48:10 +00:00
22d3308464 Merge branch 'automated-tasks' into 'development'
chore(gitlab-ci): Automated update of git sub-module

See merge request nofusscomputing/projects/kubernetes_monitoring!22
2024-06-30 17:46:48 +00:00
a83648e2ac chore(git): updated submodule gitlab-ci
Automation Data:
{
    "branch": "development",
    "current_commit": "a24f352ca3d82b8d0f02f5db20173fe2c3f71a4a)",
    "name": "gitlab-ci",
    "path": "/builds/nofusscomputing/projects/kubernetes_monitoring/_automation_/gitlab-ci",
    "remote_head": "673441f83a7d943434252ee23899e3572cdfb141)",
    "remote_name": "origin",
    "url": "https://gitlab.com/nofusscomputing/projects/gitlab-ci.git"
}

Changes: Submodule path gitlab-ci: checked out 673441f83a7d943434252ee23899e3572cdfb141

MR !22
2024-06-30 17:46:02 +00:00
b01c6bbb06 Merge branch 'automated-tasks' into 'development'
chore(gitlab-ci): Automated update of git sub-module

See merge request nofusscomputing/projects/kubernetes_monitoring!21
2024-03-16 11:35:32 +00:00
d6e21083c9 chore(git): updated submodule gitlab-ci
Automation Data:
{
    "branch": "development",
    "current_commit": "9afa68d1f3849e491fa8ca034749388808531b74)",
    "name": "gitlab-ci",
    "path": "/builds/nofusscomputing/projects/kubernetes_monitoring/_automation_/gitlab-ci",
    "remote_head": "a24f352ca3d82b8d0f02f5db20173fe2c3f71a4a)",
    "remote_name": "origin",
    "url": "https://gitlab.com/nofusscomputing/projects/gitlab-ci.git"
}

Changes: Submodule path gitlab-ci: checked out a24f352ca3d82b8d0f02f5db20173fe2c3f71a4a

MR !21
2024-03-16 11:34:52 +00:00
bfa20b6a09 Merge branch 'automated-tasks' into 'development'
chore(gitlab-ci): Automated update of git sub-module

See merge request nofusscomputing/projects/kubernetes_monitoring!20
2024-03-14 12:47:17 +00:00
d6cf67b930 chore(git): updated submodule gitlab-ci
Automation Data:
{
    "branch": "development",
    "current_commit": "41eeb7badd582175b371cd4a5b2192decbcb0210)",
    "name": "gitlab-ci",
    "path": "/builds/nofusscomputing/projects/kubernetes_monitoring/_automation_/gitlab-ci",
    "remote_head": "9afa68d1f3849e491fa8ca034749388808531b74)",
    "remote_name": "origin",
    "url": "https://gitlab.com/nofusscomputing/projects/gitlab-ci.git"
}

Changes: Submodule path gitlab-ci: checked out 9afa68d1f3849e491fa8ca034749388808531b74

MR !20
2024-03-14 12:46:20 +00:00
5aea6f620e Merge branch 'automated-tasks' into 'development'
chore(gitlab-ci): Automated update of git sub-module

See merge request nofusscomputing/projects/kubernetes_monitoring!19
2024-02-25 09:32:31 +00:00
3a31680ab5 chore(git): updated submodule gitlab-ci
Automation Data:
{
    "branch": "development",
    "current_commit": "6f80ea3af7fdc64e9998820a8800c288d7facbc6)",
    "name": "gitlab-ci",
    "path": "/builds/nofusscomputing/projects/kubernetes_monitoring/_automation_/gitlab-ci",
    "remote_head": "41eeb7badd582175b371cd4a5b2192decbcb0210)",
    "remote_name": "origin",
    "url": "https://gitlab.com/nofusscomputing/projects/gitlab-ci.git"
}

Changes: Submodule path gitlab-ci: checked out 41eeb7badd582175b371cd4a5b2192decbcb0210

MR !19
2024-02-25 09:31:52 +00:00
e22e98fd08 Merge branch 'automated-tasks' into 'development'
chore(gitlab-ci): Automated update of git sub-module

See merge request nofusscomputing/projects/kubernetes_monitoring!18
2024-02-24 06:31:22 +00:00
78ff4066ea chore(git): updated submodule gitlab-ci
Automation Data:
{
    "branch": "development",
    "current_commit": "4f65bc1367585146490637dfc7c57c987216e652)",
    "name": "gitlab-ci",
    "path": "/builds/nofusscomputing/projects/kubernetes_monitoring/_automation_/gitlab-ci",
    "remote_head": "6f80ea3af7fdc64e9998820a8800c288d7facbc6)",
    "remote_name": "origin",
    "url": "https://gitlab.com/nofusscomputing/projects/gitlab-ci.git"
}

Changes: Submodule path gitlab-ci: checked out 6f80ea3af7fdc64e9998820a8800c288d7facbc6

MR !18
2024-02-24 06:30:29 +00:00
3b33cf43d8 Merge branch 'automated-tasks' into 'development'
chore(gitlab-ci): Automated update of git sub-module

See merge request nofusscomputing/projects/kubernetes_monitoring!17
2024-02-23 09:07:43 +00:00
e5bc593611 chore(git): updated submodule gitlab-ci
Automation Data:
{
    "branch": "development",
    "current_commit": "8094694d43449f1d17b763e215485b2950e6b6b4)",
    "name": "gitlab-ci",
    "path": "/builds/nofusscomputing/projects/kubernetes_monitoring/_automation_/gitlab-ci",
    "remote_head": "4f65bc1367585146490637dfc7c57c987216e652)",
    "remote_name": "origin",
    "url": "https://gitlab.com/nofusscomputing/projects/gitlab-ci.git"
}

Changes: Submodule path gitlab-ci: checked out 4f65bc1367585146490637dfc7c57c987216e652

MR !17
2024-02-23 09:06:59 +00:00
e4a98648e2 Merge branch 'automated-tasks' into 'development'
chore(gitlab-ci): Automated update of git sub-module

See merge request nofusscomputing/projects/kubernetes_monitoring!16
2024-02-23 02:52:07 +00:00
8d1ad238e4 chore(git): updated submodule gitlab-ci
Automation Data:
{
    "branch": "development",
    "current_commit": "34c81c98494b5ce448f4da4e645952439c897906)",
    "name": "gitlab-ci",
    "path": "/builds/nofusscomputing/projects/kubernetes_monitoring/_automation_/gitlab-ci",
    "remote_head": "8094694d43449f1d17b763e215485b2950e6b6b4)",
    "remote_name": "origin",
    "url": "https://gitlab.com/nofusscomputing/projects/gitlab-ci.git"
}

Changes: Submodule path gitlab-ci: checked out 8094694d43449f1d17b763e215485b2950e6b6b4

MR !16
2024-02-23 02:51:26 +00:00
2bfa45d5a3 Merge branch 'automated-tasks' into 'development'
chore(gitlab-ci): Automated update of git sub-module

See merge request nofusscomputing/projects/kubernetes_monitoring!15
2024-02-22 09:54:06 +00:00
a33a0514d7 chore(git): updated submodule gitlab-ci
Automation Data:
{
    "branch": "development",
    "current_commit": "c7c966bbee4fefc044d4c58e60dd5f10ec63862b)",
    "name": "gitlab-ci",
    "path": "/builds/nofusscomputing/projects/kubernetes_monitoring/_automation_/gitlab-ci",
    "remote_head": "34c81c98494b5ce448f4da4e645952439c897906)",
    "remote_name": "origin",
    "url": "https://gitlab.com/nofusscomputing/projects/gitlab-ci.git"
}

Changes: Submodule path gitlab-ci: checked out 34c81c98494b5ce448f4da4e645952439c897906

MR !15
2024-02-22 09:53:24 +00:00
ea59c866d6 Merge branch 'automated-tasks' into 'development'
chore(gitlab-ci): Automated update of git sub-module

See merge request nofusscomputing/projects/kubernetes_monitoring!14
2024-02-22 08:35:20 +00:00
2bdde14a5a chore(git): updated submodule gitlab-ci
Automation Data:
{
    "branch": "development",
    "current_commit": "74ac15925c75ba0178ae21932b02b6a90a9169c3)",
    "name": "gitlab-ci",
    "path": "/builds/nofusscomputing/projects/kubernetes_monitoring/_automation_/gitlab-ci",
    "remote_head": "c7c966bbee4fefc044d4c58e60dd5f10ec63862b)",
    "remote_name": "origin",
    "url": "https://gitlab.com/nofusscomputing/projects/gitlab-ci.git"
}

Changes: Submodule path gitlab-ci: checked out c7c966bbee4fefc044d4c58e60dd5f10ec63862b

MR !14
2024-02-22 08:34:39 +00:00
07be00f24c Merge branch 'automated-tasks' into 'development'
chore(gitlab-ci): Automated update of git sub-module

See merge request nofusscomputing/projects/kubernetes_monitoring!13
2024-02-22 08:05:01 +00:00
452087a111 chore(git): updated submodule gitlab-ci
Automation Data:
{
    "branch": "development",
    "current_commit": "e046f9ea49a617ce91ff2eda53b897f798dfb810)",
    "name": "gitlab-ci",
    "path": "/builds/nofusscomputing/projects/kubernetes_monitoring/_automation_/gitlab-ci",
    "remote_head": "74ac15925c75ba0178ae21932b02b6a90a9169c3)",
    "remote_name": "origin",
    "url": "https://gitlab.com/nofusscomputing/projects/gitlab-ci.git"
}

Changes: Submodule path gitlab-ci: checked out 74ac15925c75ba0178ae21932b02b6a90a9169c3

MR !13
2024-02-22 08:04:18 +00:00
df7917aef8 Merge branch 'automated-tasks' into 'development'
chore(gitlab-ci): Automated update of git sub-module

See merge request nofusscomputing/projects/kubernetes_monitoring!12
2024-02-22 06:31:22 +00:00
dbacb1794c chore(git): updated submodule gitlab-ci
Automation Data:
{
    "branch": "development",
    "current_commit": "d29064f1490073599518b629c7bf6585b48c8736)",
    "name": "gitlab-ci",
    "path": "/builds/nofusscomputing/projects/kubernetes_monitoring/_automation_/gitlab-ci",
    "remote_head": "e046f9ea49a617ce91ff2eda53b897f798dfb810)",
    "remote_name": "origin",
    "url": "https://gitlab.com/nofusscomputing/projects/gitlab-ci.git"
}

Changes: Submodule path gitlab-ci: checked out e046f9ea49a617ce91ff2eda53b897f798dfb810

MR !12
2024-02-22 06:30:38 +00:00
eecb42a4e5 Merge branch 'automated-tasks' into 'development'
chore(gitlab-ci): Automated update of git sub-module

See merge request nofusscomputing/projects/kubernetes_monitoring!11
2024-02-17 04:50:21 +00:00
d53d28314e chore(git): updated submodule gitlab-ci
Automation Data:
{
    "branch": "development",
    "current_commit": "02252db664a428e83fb9ae24662b56b53e615989)",
    "name": "gitlab-ci",
    "path": "/builds/nofusscomputing/projects/kubernetes_monitoring/_automation_/gitlab-ci",
    "remote_head": "d29064f1490073599518b629c7bf6585b48c8736)",
    "remote_name": "origin",
    "url": "https://gitlab.com/nofusscomputing/projects/gitlab-ci.git"
}

Changes: Submodule path gitlab-ci: checked out d29064f1490073599518b629c7bf6585b48c8736

MR !11
2024-02-17 04:49:41 +00:00
0a0d37e44d Merge branch 'automated-tasks' into 'development'
chore(gitlab-ci): Automated update of git sub-module

See merge request nofusscomputing/projects/kubernetes_monitoring!10
2024-02-15 13:49:09 +00:00
65e247958c chore(git): updated submodule gitlab-ci
Automation Data:
{
    "branch": "development",
    "current_commit": "bea398200f838736c6111a399478667df37435cb)",
    "name": "gitlab-ci",
    "path": "/builds/nofusscomputing/projects/kubernetes_monitoring/_automation_/gitlab-ci",
    "remote_head": "02252db664a428e83fb9ae24662b56b53e615989)",
    "remote_name": "origin",
    "url": "https://gitlab.com/nofusscomputing/projects/gitlab-ci.git"
}

Changes: Submodule path gitlab-ci: checked out 02252db664a428e83fb9ae24662b56b53e615989

MR !10
2024-02-15 13:48:27 +00:00
fce97d5aa2 Merge branch 'automated-tasks' into 'development'
chore(website-template): Automated update of git sub-module

See merge request nofusscomputing/projects/kubernetes_monitoring!9
2024-02-08 05:32:49 +00:00
b2d3cad87d chore(git): updated submodule website-template
Automation Data:
{
    "branch": "development",
    "current_commit": "2bcc17652babd4027e7245c6367841e2580ec317)",
    "name": "website-template",
    "path": "/builds/nofusscomputing/projects/kubernetes_monitoring/_automation_/website-template",
    "remote_head": "f5a82d3604faca56756eec91acee28ff89defd1d)",
    "remote_name": "origin",
    "url": "https://gitlab.com/nofusscomputing/infrastructure/website-template.git"
}

Changes: Submodule path website-template: checked out f5a82d3604faca56756eec91acee28ff89defd1d

MR !9
2024-02-08 05:32:09 +00:00
Jon
496c7637c3 Merge branch 'feat-refine-deployment-options' into 'development'
feat: refine deployment options

See merge request nofusscomputing/projects/kubernetes_monitoring!8
2024-02-07 08:32:40 +00:00
Jon
99e503324d feat(grafana_dashboard): add cert manager dashboard
!8
2024-02-05 16:01:08 +09:30
Jon
486f2c4728 refactor(service_monitor): use job name prometheus for prometheus
required for built in grafana dashboards to work

!8
2024-02-05 15:11:49 +09:30
Jon
a2c3daa44e fix(service_monitor): correct syntax for calico
!8
2024-02-05 14:17:27 +09:30
Jon
faf4abf6b3 feat(grafana_dashboard): add calico dashboard
!8
2024-02-05 14:16:28 +09:30
Jon
cd2b99dd3d fix(service_monitor): dont deploy calico unless enabled
!8
2024-02-05 14:15:53 +09:30
Jon
efd6d15dc4 fix(role_binding): use namespace lookup to build role bindings
!8
2024-02-05 13:37:10 +09:30
Jon
f08cba1dfb feat(grafana): update to latest version 10.3.1
!8
2024-02-05 13:36:30 +09:30
Jon
49bf414caa refactor(network_policy): move network policy to template
!8
2024-02-05 11:31:39 +09:30
Jon
36ee3a10ff feat(role): dynamically add roles to all available namesapces
!8
2024-02-05 10:38:28 +09:30
Jon
6a20b69910 docs(values): notate remotewirte configured seperatly
!8
2024-02-05 10:25:52 +09:30
Jon
1fd5e49247 refactor(prometheus_rule): correct common rules name
!8
2024-02-04 20:26:39 +09:30
Jon
5323377852 fix(prometheus): use alertmanager instance name
!8
2024-02-04 20:24:46 +09:30
Jon
4e8f25ec3d refactor(prometheus_rule): move watchdog and info inhibitor to common rules file
these rules ar for all metrics rules

!8
2024-02-04 20:22:58 +09:30
Jon
cb12f338f1 fix(prometheus_rule): dont deploy loki rules of not configured
!8
2024-02-04 20:12:45 +09:30
Jon
39af78c6ea fix(prometheus_rule): use instance name instead of hard coded value
!8
2024-02-04 20:05:28 +09:30
Jon
73f25cfaa2 feat(prometheus_rule): add node exporter absent alert for ALL nodes
!8
2024-02-04 19:58:15 +09:30
Jon
beaa4f4896 fix(calico): use the operator created ns for monitoring
!8
2024-02-04 17:33:16 +09:30
Jon
e8b4b5a00b fix(ingress): move from values to template for dynomagic setup
!8
2024-02-04 17:07:31 +09:30
Jon
490e497d15 refactor: remove k8s and use release name for instance
!8
2024-02-04 17:06:39 +09:30
Jon
38f08985f5 fix(values): fix service_monitor variable
!8
2024-02-04 16:07:49 +09:30
Jon
c7746122cd fix(prometheus): service monitor missing close
!8
2024-02-04 15:56:50 +09:30
Jon
57a1706590 chore: set values.yaml to have sensible defaults
!8
2024-02-04 15:55:16 +09:30
Jon
bdb555a4b5 feat: turn off k8s non-metrics server deployed features
!8
2024-02-04 15:51:28 +09:30
Jon
bdb3a09c2b feat(kube_monitor_proxy): don't deploy if not enabled
!8
2024-02-04 15:49:43 +09:30
Jon
9c35a4d140 feat(kube_state_metrics): don't deploy if not enabled
!8
2024-02-04 15:38:19 +09:30
Jon
bc4d72ff8e feat(service_monitor): don't deploy if not enabled
!8
2024-02-04 15:33:50 +09:30
Jon
e13d55e61e feat(grafana_agent): not enable if not configured
!8
2024-02-04 15:08:53 +09:30
Jon
257da9cd38 fix(prometheus): configurable image and tag
!8
2024-02-04 15:07:13 +09:30
Jon
106f2e6ec8 feat(prometheus): configurable remote write
!8
2024-02-04 15:06:44 +09:30
Jon
f1c54567a7 feat(prometheus): configurable replicas
!8
2024-02-04 15:06:16 +09:30
Jon
cd2bceec3a feat(thanos_sidecar): if enabled must also be configured for deploy to occur
!8
2024-02-04 15:04:24 +09:30
Jon
18649086b5 feat(alertmanager): instance name set to pod name
!8
2024-02-04 15:02:34 +09:30
Jon
e0cb8f57e2 feat(grafana): enabled/disabled configurable
!8
2024-02-04 15:02:00 +09:30
Jon
c5bb46f48a feat(alertmanager): configurable replicas
!8
2024-02-04 14:58:08 +09:30
103a529184 Merge branch 'automated-tasks' into 'development'
chore(website-template): Automated update of git sub-module

See merge request nofusscomputing/projects/kubernetes_monitoring!7
2024-02-02 13:12:16 +00:00
51a187bb75 chore(git): updated submodule gitlab-ci
Automation Data:
{
    "branch": "development",
    "current_commit": "a5a9fa44374107657b2587ce52607d96a825be56)",
    "name": "gitlab-ci",
    "path": "/builds/nofusscomputing/projects/kubernetes_monitoring/_automation_/gitlab-ci",
    "remote_head": "bea398200f838736c6111a399478667df37435cb)",
    "remote_name": "origin",
    "url": "https://gitlab.com/nofusscomputing/projects/gitlab-ci.git"
}

Changes: Submodule path gitlab-ci: checked out bea398200f838736c6111a399478667df37435cb

MR !7
2024-02-02 13:11:36 +00:00
f613ba29cd chore(git): updated submodule website-template
Automation Data:
{
    "branch": "development",
    "current_commit": "992b54805b8b6c78a3d2a5ea7de71c7be2b070c8)",
    "name": "website-template",
    "path": "/builds/nofusscomputing/projects/kubernetes_monitoring/_automation_/website-template",
    "remote_head": "2bcc17652babd4027e7245c6367841e2580ec317)",
    "remote_name": "origin",
    "url": "https://gitlab.com/nofusscomputing/infrastructure/website-template.git"
}

Changes: Submodule path website-template: checked out 2bcc17652babd4027e7245c6367841e2580ec317

MR !7
2024-02-02 13:11:27 +00:00
Jon
3eafca6c41 feat(nfc_automation): add automation file
!5
2024-02-02 22:32:19 +09:30
f406e891b7 build(version): bump version 0.2.0rc0 → 0.2.0 2023-11-19 15:09:48 +00:00
Jon
61289121e2 Merge branch '2-fix-multiple-issues' into 'development'
fix: multiple

See merge request nofusscomputing/projects/kubernetes_monitoring!5
2023-11-19 14:17:02 +00:00
Jon
11563741a9 fix(ingress): underscore removed from ingress name
!5 nofusscomputing/infrastructure/configuration-management/inventory-production!3
2023-11-19 18:40:37 +09:30
Jon
33883ec640 fix(ingress): function bool not defined
!5 nofusscomputing/infrastructure/configuration-management/inventory-production!3
2023-11-19 18:31:28 +09:30
Jon
562bb7d6f5 feat(prometheus): added config for ingress
!5 nofusscomputing/infrastructure/configuration-management/inventory-production!3
2023-11-19 18:03:17 +09:30
Jon
26a78bdb33 feat(grafana): added config for ingress
!5 nofusscomputing/infrastructure/configuration-management/inventory-production!3
2023-11-19 18:02:38 +09:30
Jon
65534660dd feat(alert_manager): added config for ingress
!5 nofusscomputing/infrastructure/configuration-management/inventory-production!3
2023-11-19 18:00:22 +09:30
Jon
593d73e4c6 fix(grafana): PVC access mode default to ReadWriteOnce
option is also configurable

!5 nofusscomputing/infrastructure/configuration-management/project-production!4
2023-11-19 15:01:15 +09:30
Jon
b6d0b18ece fix(prometheus): use correct variable for storage values
!5 nofusscomputing/infrastructure/configuration-management/project-production!4
2023-11-19 13:24:49 +09:30
b438599db4 build(version): bump version 0.1.0 → 0.2.0rc0 2023-11-06 08:22:43 +00:00
Jon
6f83fb5406 Merge branch 'bits-and-bobs' into 'development'
chore: randomz

See merge request nofusscomputing/projects/kubernetes_monitoring!4
2023-11-06 08:19:53 +00:00
Jon
b047f33e27 feat(Grafana): Configure grafana from values.yaml
!4
2023-09-30 12:14:47 +09:30
Jon
0c296c173e feat(GrafanaAgent): Network Policy added
!4
2023-09-29 19:11:16 +09:30
Jon
7164bb2e0b feat(grafana): Network Policy added
!4
2023-09-29 19:10:53 +09:30
Jon
ae35e704e3 feat(prometheus): Network Policy added
!4
2023-09-29 19:10:31 +09:30
Jon
5c62055d2f feat(NetworkPolicy): configure from values.yaml
!4
2023-09-29 19:09:50 +09:30
Jon
03affbee80 feat(labels): lables moved to values.yaml
!4
2023-09-29 19:08:48 +09:30
Jon
65b61ecf54 feat(graph): add ceph size/used to dashboard
!4
2023-09-29 10:57:28 +09:30
Jon
cf38a4156a refactor(grafana_datasources): default prom set to thanos
!4
2023-09-28 09:09:53 +09:30
Jon
7afc6aa515 feat(prometheus): rule selector configurable from values.yaml
!4
2023-09-28 09:08:26 +09:30
Jon
2371adcbc5 feat(promtail): split node to seperate promtail service monitor
this allows the mixins to work, specifically promtail

!4
2023-09-28 09:07:11 +09:30
Jon
f73a9e462e feat(grafana_agent): add prom rules
!4
2023-09-28 09:05:01 +09:30
Jon
5bb7197129 feat(prometheus): tsdb retention set
!4
2023-09-28 02:06:06 +09:30
Jon
be0161876d feat(thanos): prometheus rules added for sidecar
!4
2023-09-28 02:06:06 +09:30
100 changed files with 1506 additions and 485 deletions

View File

@ -4,4 +4,4 @@ commitizen:
name: cz_conventional_commits name: cz_conventional_commits
tag_format: $major.$minor.$patch$prerelease tag_format: $major.$minor.$patch$prerelease
update_changelog_on_bump: true update_changelog_on_bump: true
version: 0.1.0 version: 0.2.0

10
.nfc_automation.yaml Normal file
View File

@ -0,0 +1,10 @@
---
role_git_conf:
gitlab:
submodule_branch: "development"
default_branch: development
mr_labels: ~"type::automation" ~"impact::0" ~"priority::0"
auto_merge: true
merge_request:
patch_labels: '~"code review::not started"'

View File

@ -1,3 +1,39 @@
## 0.2.0 (2023-11-19)
### Bug Fixes
- **ingress**: [11563741](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/commit/11563741a90dc81ddf043cc529fa13916bee9082) - underscore removed from ingress name [ [!5](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/merge_requests/5) [!3](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/merge_requests/3) ]
- **ingress**: [33883ec6](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/commit/33883ec64025d8a2ab81fec50019d2605776ea07) - function bool not defined [ [!5](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/merge_requests/5) [!3](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/merge_requests/3) ]
- **grafana**: [593d73e4](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/commit/593d73e4c6e5c029d592adc8af5173c92d6a6fb0) - PVC access mode default to ReadWriteOnce [ [!5](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/merge_requests/5) [!4](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/merge_requests/4) ]
- **prometheus**: [b6d0b18e](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/commit/b6d0b18ece17dcd2733c6892cba7e8e83575fab0) - use correct variable for storage values [ [!5](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/merge_requests/5) [!4](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/merge_requests/4) ]
### Features
- **prometheus**: [562bb7d6](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/commit/562bb7d6f57f52b3cf4fcaf19a15a8eed492d15e) - added config for ingress [ [!5](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/merge_requests/5) [!3](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/merge_requests/3) ]
- **grafana**: [26a78bdb](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/commit/26a78bdb3373cbed1d78785ded47e3dfae28c853) - added config for ingress [ [!5](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/merge_requests/5) [!3](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/merge_requests/3) ]
- **alert_manager**: [65534660](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/commit/65534660dda9b10761bf6067abc3297bec75a182) - added config for ingress [ [!5](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/merge_requests/5) [!3](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/merge_requests/3) ]
## 0.2.0rc0 (2023-11-06)
### Code Refactor
- **grafana_datasources**: [cf38a415](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/commit/cf38a4156adcbdda150fe309f1f7dd97a5a3bf07) - default prom set to thanos [ [!4](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/merge_requests/4) ]
### Features
- **Grafana**: [b047f33e](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/commit/b047f33e275d2e908f7e8a220944573f2e367bf7) - Configure grafana from values.yaml [ [!4](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/merge_requests/4) ]
- **GrafanaAgent**: [0c296c17](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/commit/0c296c173e786c77504fabba337b464bcde6c290) - Network Policy added [ [!4](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/merge_requests/4) ]
- **grafana**: [7164bb2e](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/commit/7164bb2e0b5f2c5e7fb59bcb64321eabb651b08e) - Network Policy added [ [!4](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/merge_requests/4) ]
- **prometheus**: [ae35e704](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/commit/ae35e704e33bee4d2fea3390a7965a087e30acce) - Network Policy added [ [!4](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/merge_requests/4) ]
- **NetworkPolicy**: [5c62055d](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/commit/5c62055d2f2041b33a2ab5ff8023cf8bd6b08df1) - configure from values.yaml [ [!4](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/merge_requests/4) ]
- **labels**: [03affbee](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/commit/03affbee809d9e36f0930ae49ab07191e2b645a2) - lables moved to values.yaml [ [!4](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/merge_requests/4) ]
- **graph**: [65b61ecf](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/commit/65b61ecf545800bcbf4efc7e3175951b9c6d2965) - add ceph size/used to dashboard [ [!4](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/merge_requests/4) ]
- **prometheus**: [7afc6aa5](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/commit/7afc6aa515db4a43ce8dc1a152f45f400fc68a39) - rule selector configurable from values.yaml [ [!4](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/merge_requests/4) ]
- **promtail**: [2371adcb](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/commit/2371adcbc5d64a27ff72b0ac45f589ccef4eb400) - split node to seperate promtail service monitor [ [!4](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/merge_requests/4) ]
- **grafana_agent**: [f73a9e46](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/commit/f73a9e462e16dffbc0e17eaed3c0c78aff95d52b) - add prom rules [ [!4](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/merge_requests/4) ]
- **prometheus**: [5bb71971](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/commit/5bb71971292b8f760e9b348652dc9df3c0dfa921) - tsdb retention set [ [!4](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/merge_requests/4) ]
- **thanos**: [be016187](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/commit/be0161876d6b6868204af06255a01f08cc62c6ea) - prometheus rules added for sidecar [ [!4](https://gitlab.com/nofusscomputing/projects/kubernetes_monitoring/-/merge_requests/4) ]
## 0.1.0 (2023-09-27) ## 0.1.0 (2023-09-27)
### Bug Fixes ### Bug Fixes

View File

@ -113,6 +113,8 @@ This helm chart started off with components from multiple open-source projects.
- Prometheus-Adaptor - Prometheus-Adaptor
- Promtail
- Thanos - Thanos
- kyverno policies _(optional, set in values.yaml)_ - kyverno policies _(optional, set in values.yaml)_

View File

@ -18,7 +18,7 @@
"editable": true, "editable": true,
"fiscalYearStartMonth": 0, "fiscalYearStartMonth": 0,
"graphTooltip": 0, "graphTooltip": 0,
"id": 66, "id": 68,
"links": [], "links": [],
"liveNow": false, "liveNow": false,
"panels": [ "panels": [
@ -630,13 +630,107 @@
"transparent": true, "transparent": true,
"type": "stat" "type": "stat"
}, },
{
"datasource": {
"type": "prometheus",
"uid": "${PROMETHEUS}"
},
"description": "How much is used and Size",
"fieldConfig": {
"defaults": {
"color": {
"mode": "thresholds"
},
"mappings": [
{
"options": {
"Size": {
"color": "green",
"index": 0
}
},
"type": "value"
}
],
"min": 0,
"thresholds": {
"mode": "percentage",
"steps": [
{
"color": "#007d35",
"value": null
}
]
},
"unit": "bytes"
},
"overrides": []
},
"gridPos": {
"h": 4,
"w": 5,
"x": 3,
"y": 8
},
"id": 19,
"options": {
"colorMode": "background",
"graphMode": "area",
"justifyMode": "center",
"orientation": "vertical",
"reduceOptions": {
"calcs": [
"last"
],
"fields": "",
"values": false
},
"textMode": "auto"
},
"pluginVersion": "10.1.2",
"targets": [
{
"datasource": {
"type": "prometheus",
"uid": "${PROMETHEUS}"
},
"editorMode": "code",
"exemplar": false,
"expr": "sum(ceph_osd_stat_bytes_used)",
"format": "time_series",
"hide": false,
"instant": true,
"legendFormat": "Used",
"range": false,
"refId": "A"
},
{
"datasource": {
"type": "prometheus",
"uid": "${PROMETHEUS}"
},
"editorMode": "code",
"exemplar": false,
"expr": "sum(ceph_osd_stat_bytes)",
"format": "time_series",
"hide": false,
"instant": true,
"legendFormat": "Size",
"range": false,
"refId": "B"
}
],
"title": "Storage",
"transformations": [],
"type": "stat"
},
{ {
"collapsed": false, "collapsed": false,
"gridPos": { "gridPos": {
"h": 1, "h": 1,
"w": 24, "w": 24,
"x": 0, "x": 0,
"y": 11 "y": 12
}, },
"id": 2, "id": 2,
"panels": [], "panels": [],
@ -672,7 +766,7 @@
"h": 3, "h": 3,
"w": 4, "w": 4,
"x": 0, "x": 0,
"y": 12 "y": 13
}, },
"id": 12, "id": 12,
"options": { "options": {
@ -743,7 +837,7 @@
"h": 3, "h": 3,
"w": 4, "w": 4,
"x": 4, "x": 4,
"y": 12 "y": 13
}, },
"id": 17, "id": 17,
"options": { "options": {
@ -814,7 +908,7 @@
"h": 3, "h": 3,
"w": 4, "w": 4,
"x": 8, "x": 8,
"y": 12 "y": 13
}, },
"id": 16, "id": 16,
"options": { "options": {
@ -884,7 +978,7 @@
"h": 3, "h": 3,
"w": 4, "w": 4,
"x": 12, "x": 12,
"y": 12 "y": 13
}, },
"id": 13, "id": 13,
"options": { "options": {
@ -955,7 +1049,7 @@
"h": 3, "h": 3,
"w": 4, "w": 4,
"x": 16, "x": 16,
"y": 12 "y": 13
}, },
"id": 18, "id": 18,
"options": { "options": {
@ -1027,7 +1121,7 @@
"h": 3, "h": 3,
"w": 4, "w": 4,
"x": 20, "x": 20,
"y": 12 "y": 13
}, },
"id": 15, "id": 15,
"options": { "options": {
@ -1131,7 +1225,7 @@
"h": 9, "h": 9,
"w": 12, "w": 12,
"x": 0, "x": 0,
"y": 15 "y": 16
}, },
"id": 1, "id": 1,
"options": { "options": {
@ -1225,7 +1319,7 @@
"h": 9, "h": 9,
"w": 12, "w": 12,
"x": 12, "x": 12,
"y": 15 "y": 16
}, },
"id": 14, "id": 14,
"options": { "options": {
@ -1257,7 +1351,7 @@
"type": "timeseries" "type": "timeseries"
} }
], ],
"refresh": "5s", "refresh": "10s",
"schemaVersion": 38, "schemaVersion": 38,
"style": "dark", "style": "dark",
"tags": [ "tags": [
@ -1269,9 +1363,9 @@
"list": [ "list": [
{ {
"current": { "current": {
"selected": true, "selected": false,
"text": "prometheus", "text": "thanos",
"value": "77e897ec-8a32-4b71-9439-8f12ec42e920" "value": "603ac67d-7d32-4fba-8ec3-35106f3c4cc9"
}, },
"hide": 0, "hide": 0,
"includeAll": false, "includeAll": false,
@ -1296,6 +1390,6 @@
"timezone": "", "timezone": "",
"title": "Cluster Overview", "title": "Cluster Overview",
"uid": "no-fuss-computing-k8s-overview", "uid": "no-fuss-computing-k8s-overview",
"version": 4, "version": 5,
"weekStart": "" "weekStart": ""
} }

View File

@ -1,11 +1,12 @@
{{ if false }}
# already on k3s
--- ---
apiVersion: apiregistration.k8s.io/v1 apiVersion: apiregistration.k8s.io/v1
kind: APIService kind: APIService
metadata: metadata:
labels: labels:
app.kubernetes.io/component: metrics-adapter {{ toYaml $.Values.nfc_monitoring.prometheus_adaptor.labels | nindent 4 }}
app.kubernetes.io/instance: main app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: prometheus-adapter
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
@ -19,3 +20,4 @@ spec:
namespace: monitoring namespace: monitoring
version: v1beta1 version: v1beta1
versionPriority: 100 versionPriority: 100
{{ end }}

View File

@ -3,13 +3,12 @@ apiVersion: monitoring.coreos.com/v1
kind: Alertmanager kind: Alertmanager
metadata: metadata:
labels: labels:
app.kubernetes.io/instance: main {{ toYaml $.Values.nfc_monitoring.alert_manager.labels | nindent 4 }}
app.kubernetes.io/component: alert-router app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: alertmanager
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
name: main name: {{ $.Release.Name }}
namespace: {{ .Values.nfc_monitoring.alert_manager.namespace | quote }} namespace: {{ .Values.nfc_monitoring.alert_manager.namespace | quote }}
spec: spec:
image: "{{ .Values.nfc_monitoring.alert_manager.image.name }}:{{ .Values.nfc_monitoring.alert_manager.image.tag }}" image: "{{ .Values.nfc_monitoring.alert_manager.image.name }}:{{ .Values.nfc_monitoring.alert_manager.image.tag }}"
@ -18,12 +17,12 @@ spec:
podMetadata: podMetadata:
labels: labels:
app.kubernetes.io/component: alert-router app.kubernetes.io/component: alert-router
app.kubernetes.io/instance: main app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: alertmanager app.kubernetes.io/name: alertmanager
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
replicas: 3 replicas: {{ .Values.nfc_monitoring.alert_manager.replicas }}
resources: resources:
limits: limits:
cpu: 100m cpu: 100m

View File

@ -14,8 +14,8 @@ metadata:
monitoring instances is created to enable monitoring of the namespace in monitoring instances is created to enable monitoring of the namespace in
question. question.
labels: labels:
app.kubernetes.io/component: prometheus {{ toYaml $.Values.nfc_monitoring.prometheus.labels | nindent 4 }}
app.kubernetes.io/name: prometheus app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
@ -33,14 +33,13 @@ spec:
synchronize: true synchronize: true
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
kind: Role kind: Role
name: prometheus-k8s name: prometheus-{{ $.Release.Name }}
namespace: "{{ `{{` }}request.object.metadata.name }}" namespace: "{{ `{{` }}request.object.metadata.name }}"
data: data:
metadata: metadata:
labels: labels:
app.kubernetes.io/component: prometheus {{ toYaml $.Values.nfc_monitoring.prometheus.labels | nindent 14 }}
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: prometheus
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}

View File

@ -14,8 +14,8 @@ metadata:
monitoring instances is created to enable monitoring of the namespace in monitoring instances is created to enable monitoring of the namespace in
question. question.
labels: labels:
app.kubernetes.io/component: prometheus {{ toYaml $.Values.nfc_monitoring.prometheus.labels | nindent 4 }}
app.kubernetes.io/name: prometheus app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
@ -33,21 +33,21 @@ spec:
synchronize: true synchronize: true
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding kind: RoleBinding
name: prometheus-k8s name: prometheus-{{ $.Release.Name }}
namespace: "{{ `{{` }}request.object.metadata.name }}" namespace: "{{ `{{` }}request.object.metadata.name }}"
data: data:
metadata: metadata:
labels: labels:
app.kubernetes.io/component: prometheus {{ toYaml $.Values.nfc_monitoring.prometheus.labels | nindent 14 }}
app.kubernetes.io/name: prometheus app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
roleRef: roleRef:
apiGroup: rbac.authorization.k8s.io apiGroup: rbac.authorization.k8s.io
kind: Role kind: Role
name: prometheus-k8s name: prometheus-{{ $.Release.Name }}
subjects: subjects:
- kind: ServiceAccount - kind: ServiceAccount
name: prometheus-k8s name: prometheus-{{ $.Release.Name }}
namespace: "{{ .Values.nfc_monitoring.prometheus.namespace }}" namespace: "{{ .Values.nfc_monitoring.prometheus.namespace }}"
{{ end }} {{ end }}

View File

@ -4,9 +4,8 @@ kind: ClusterRole
metadata: metadata:
name: grafana-agent name: grafana-agent
labels: labels:
app.kubernetes.io/instance: k8s {{ toYaml $.Values.nfc_monitoring.grafana_agent.labels | nindent 4 }}
app.kubernetes.io/component: exporter app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: grafana-agent
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}

View File

@ -1,11 +1,11 @@
{{ if false }}
--- ---
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole kind: ClusterRole
metadata: metadata:
labels: labels:
app.kubernetes.io/component: metrics-adapter {{ toYaml $.Values.nfc_monitoring.prometheus_adaptor.labels | nindent 4 }}
app.kubernetes.io/instance: main app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: prometheus-adapter
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
@ -24,3 +24,6 @@ rules:
- get - get
- list - list
- watch - watch
# Already exists on k3s
{{ end }}

View File

@ -3,8 +3,8 @@ apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding kind: ClusterRoleBinding
metadata: metadata:
labels: labels:
app.kubernetes.io/component: metrics-adapter {{ toYaml $.Values.nfc_monitoring.prometheus_adaptor.labels | nindent 4 }}
app.kubernetes.io/name: prometheus-adapter app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}

View File

@ -4,8 +4,8 @@ kind: ClusterRoleBinding
metadata: metadata:
name: hpa-controller-custom-metrics name: hpa-controller-custom-metrics
labels: labels:
app.kubernetes.io/component: metrics-adapter {{ toYaml $.Values.nfc_monitoring.prometheus_adaptor.labels | nindent 4 }}
app.kubernetes.io/name: prometheus-adapter app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}

View File

@ -3,8 +3,8 @@ apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding kind: ClusterRoleBinding
metadata: metadata:
labels: labels:
app.kubernetes.io/component: metrics-adapter {{ toYaml $.Values.nfc_monitoring.prometheus.labels | nindent 4 }}
app.kubernetes.io/name: prometheus-adapter app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}

View File

@ -1,12 +1,12 @@
{{ if .Values.nfc_monitoring.grafana.enabled -}}
{{ if .Values.nfc_monitoring.additions.dashboard_sidecar.enabled -}} {{ if .Values.nfc_monitoring.additions.dashboard_sidecar.enabled -}}
--- ---
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole kind: ClusterRole
metadata: metadata:
labels: labels:
app.kubernetes.io/component: graphing {{ toYaml $.Values.nfc_monitoring.grafana.labels | nindent 4 }}
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: grafana
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
@ -16,3 +16,4 @@ rules:
resources: ["configmaps"] resources: ["configmaps"]
verbs: ["get", "watch", "list"] verbs: ["get", "watch", "list"]
{{- end }} {{- end }}
{{- end }}

View File

@ -1,3 +1,4 @@
{{ if .Values.nfc_monitoring.kube_monitor_proxy.enabled }}
--- ---
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole kind: ClusterRole
@ -5,7 +6,7 @@ metadata:
name: kube-monitor-proxy name: kube-monitor-proxy
labels: labels:
app.kubernetes.io/component: proxy app.kubernetes.io/component: proxy
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: kube-monitor-proxy app.kubernetes.io/name: kube-monitor-proxy
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
@ -19,3 +20,5 @@ rules:
resources: resources:
- subjectaccessreviews - subjectaccessreviews
verbs: ["create"] verbs: ["create"]
{{ end }}

View File

@ -1,10 +1,11 @@
{{ if .Values.nfc_monitoring.kube_state_metrics.enabled }}
--- ---
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding kind: ClusterRoleBinding
metadata: metadata:
labels: labels:
app.kubernetes.io/component: exporter app.kubernetes.io/component: exporter
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: kube-state-metrics app.kubernetes.io/name: kube-state-metrics
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
@ -18,3 +19,5 @@ subjects:
- kind: ServiceAccount - kind: ServiceAccount
name: kube-state-metrics name: kube-state-metrics
namespace: monitoring namespace: monitoring
{{ end }}

View File

@ -1,10 +1,11 @@
{{ if .Values.nfc_monitoring.kube_state_metrics.enabled }}
--- ---
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole kind: ClusterRole
metadata: metadata:
labels: labels:
app.kubernetes.io/component: exporter app.kubernetes.io/component: exporter
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: kube-state-metrics app.kubernetes.io/name: kube-state-metrics
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
@ -130,3 +131,5 @@ rules:
verbs: verbs:
- list - list
- watch - watch
{{ end }}

View File

@ -3,8 +3,8 @@ apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole kind: ClusterRole
metadata: metadata:
labels: labels:
app.kubernetes.io/component: metrics-adapter {{ toYaml $.Values.nfc_monitoring.prometheus_adaptor.labels | nindent 4 }}
app.kubernetes.io/name: prometheus-adapter app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}

View File

@ -3,9 +3,8 @@ apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole kind: ClusterRole
metadata: metadata:
labels: labels:
app.kubernetes.io/component: metrics-adapter {{ toYaml $.Values.nfc_monitoring.prometheus_adaptor.labels | nindent 4 }}
app.kubernetes.io/instance: main app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: prometheus-adapter
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}

View File

@ -3,13 +3,12 @@ apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole kind: ClusterRole
metadata: metadata:
labels: labels:
app.kubernetes.io/component: prometheus {{ toYaml $.Values.nfc_monitoring.prometheus.labels | nindent 4 }}
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: prometheus
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
name: prometheus-k8s name: prometheus-{{ $.Release.Name }}
rules: rules:
- apiGroups: - apiGroups:
- "" - ""

View File

@ -3,9 +3,8 @@ apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding kind: ClusterRoleBinding
metadata: metadata:
labels: labels:
app.kubernetes.io/instance: k8s {{ toYaml $.Values.nfc_monitoring.grafana_agent.labels | nindent 4 }}
app.kubernetes.io/component: exporter app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: grafana-agent
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}

View File

@ -1,12 +1,12 @@
{{ if .Values.nfc_monitoring.grafana.enabled -}}
{{ if .Values.nfc_monitoring.additions.dashboard_sidecar.enabled -}} {{ if .Values.nfc_monitoring.additions.dashboard_sidecar.enabled -}}
--- ---
kind: ClusterRoleBinding kind: ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
metadata: metadata:
labels: labels:
app.kubernetes.io/component: graphing {{ toYaml $.Values.nfc_monitoring.grafana.labels | nindent 4 }}
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: grafana
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
@ -20,3 +20,4 @@ subjects:
name: grafana name: grafana
namespace: "{{ .Values.nfc_monitoring.grafana.namespace }}" namespace: "{{ .Values.nfc_monitoring.grafana.namespace }}"
{{- end }} {{- end }}
{{- end }}

View File

@ -5,7 +5,7 @@ metadata:
name: kube-monitor-proxy name: kube-monitor-proxy
labels: labels:
app.kubernetes.io/component: proxy app.kubernetes.io/component: proxy
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: kube-monitor-proxy app.kubernetes.io/name: kube-monitor-proxy
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}

View File

@ -3,18 +3,17 @@ apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding kind: ClusterRoleBinding
metadata: metadata:
labels: labels:
app.kubernetes.io/component: prometheus {{ toYaml $.Values.nfc_monitoring.prometheus.labels | nindent 4 }}
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: prometheus
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
name: prometheus-k8s name: prometheus-{{ $.Release.Name }}
roleRef: roleRef:
apiGroup: rbac.authorization.k8s.io apiGroup: rbac.authorization.k8s.io
kind: ClusterRole kind: ClusterRole
name: prometheus-k8s name: prometheus-{{ $.Release.Name }}
subjects: subjects:
- kind: ServiceAccount - kind: ServiceAccount
name: prometheus-k8s name: prometheus-{{ $.Release.Name }}
namespace: {{ .Values.nfc_monitoring.prometheus.namespace }} namespace: {{ .Values.nfc_monitoring.prometheus.namespace }}

View File

@ -1,3 +1,4 @@
{{ if .Values.nfc_monitoring.grafana.enabled -}}
--- ---
apiVersion: v1 apiVersion: v1
kind: ConfigMap kind: ConfigMap
@ -5,9 +6,8 @@ metadata:
name: grafana-config name: grafana-config
namespace: "{{ .Values.nfc_monitoring.grafana.namespace }}" namespace: "{{ .Values.nfc_monitoring.grafana.namespace }}"
labels: labels:
app.kubernetes.io/component: graphing {{ toYaml $.Values.nfc_monitoring.grafana.labels | nindent 4 }}
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: grafana
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
@ -50,9 +50,7 @@ apiVersion: v1
kind: ConfigMap kind: ConfigMap
metadata: metadata:
labels: labels:
app.kubernetes.io/component: graphing {{ toYaml $.Values.nfc_monitoring.grafana.labels | nindent 4 }}
app.kubernetes.io/instance: k8s
app.kubernetes.io/name: grafana
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
@ -127,4 +125,4 @@ data:
} }
} }
--- {{- end }}

View File

@ -3,9 +3,8 @@ apiVersion: v1
kind: ConfigMap kind: ConfigMap
metadata: metadata:
labels: labels:
app.kubernetes.io/instance: k8s {{ toYaml $.Values.nfc_monitoring.grafana_agent.labels | nindent 4 }}
app.kubernetes.io/component: exporter app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: grafana-agent
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
@ -16,6 +15,8 @@ data:
metrics: metrics:
wal_directory: /tmp/wal wal_directory: /tmp/wal
{{ if .Values.nfc_monitoring.loki.config }}
logs: logs:
positions_directory: "/tmp" positions_directory: "/tmp"
@ -234,7 +235,7 @@ data:
- target_label: node - target_label: node
source_labels: source_labels:
- __meta_kubernetes_pod_node_name - __meta_kubernetes_pod_node_name
{{ end }}
integrations: integrations:
@ -254,7 +255,6 @@ data:
netclass_ignored_devices: "^(veth.*|cali.*|[a-f0-9]{15})$" netclass_ignored_devices: "^(veth.*|cali.*|[a-f0-9]{15})$"
netdev_device_exclude: "^(veth.*|cali.*|[a-f0-9]{15})$" netdev_device_exclude: "^(veth.*|cali.*|[a-f0-9]{15})$"
scrape_integration: true
include_exporter_metrics: true include_exporter_metrics: true
enable_collectors: enable_collectors:
@ -263,6 +263,8 @@ data:
syslog_server.yaml: | syslog_server.yaml: |
# REF: https://grafana.com/docs/loki/latest/send-data/promtail/configuration/#example-syslog-config # REF: https://grafana.com/docs/loki/latest/send-data/promtail/configuration/#example-syslog-config
{{ if .Values.nfc_monitoring.loki.config }}
server: server:
http_listen_port: 9080 http_listen_port: 9080
grpc_listen_port: 0 grpc_listen_port: 0
@ -282,3 +284,5 @@ data:
relabel_configs: relabel_configs:
- source_labels: ['__syslog_message_hostname'] - source_labels: ['__syslog_message_hostname']
target_label: 'host' target_label: 'host'
{{ end }}

View File

@ -1,3 +1,4 @@
{{ if .Values.nfc_monitoring.grafana.enabled -}}
{{ if .Values.nfc_monitoring.additions.dashboard_sidecar.enabled -}} {{ if .Values.nfc_monitoring.additions.dashboard_sidecar.enabled -}}
--- ---
# Provisioning config # Provisioning config
@ -5,9 +6,8 @@ apiVersion: v1
kind: ConfigMap kind: ConfigMap
metadata: metadata:
labels: labels:
app.kubernetes.io/component: graphing {{ toYaml $.Values.nfc_monitoring.grafana.labels | nindent 4 }}
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: grafana
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
@ -29,3 +29,4 @@ data:
path: /var/lib/grafana/dashboards path: /var/lib/grafana/dashboards
foldersFromFilesStructure: true foldersFromFilesStructure: true
{{- end }} {{- end }}
{{- end }}

View File

@ -3,9 +3,8 @@ apiVersion: v1
kind: ConfigMap kind: ConfigMap
metadata: metadata:
labels: labels:
app.kubernetes.io/component: metrics-adapter {{ toYaml $.Values.nfc_monitoring.prometheus_adaptor.labels | nindent 4 }}
app.kubernetes.io/instance: main app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: prometheus-adapter
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}

View File

@ -3,9 +3,8 @@ apiVersion: apps/v1
kind: DaemonSet kind: DaemonSet
metadata: metadata:
labels: labels:
app.kubernetes.io/instance: k8s {{ toYaml $.Values.nfc_monitoring.grafana_agent.labels | nindent 4 }}
app.kubernetes.io/component: exporter app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: grafana-agent
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
@ -17,9 +16,8 @@ metadata:
spec: spec:
selector: selector:
matchLabels: matchLabels:
app.kubernetes.io/instance: k8s {{ toYaml $.Values.nfc_monitoring.grafana_agent.labels | nindent 6 }}
app.kubernetes.io/component: exporter app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: grafana-agent
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
@ -29,9 +27,8 @@ spec:
template: template:
metadata: metadata:
labels: labels:
app.kubernetes.io/instance: k8s {{ toYaml $.Values.nfc_monitoring.grafana_agent.labels | nindent 8 }}
app.kubernetes.io/component: exporter app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: grafana-agent
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}

View File

@ -1,10 +1,11 @@
{{ if .Values.nfc_monitoring.kube_monitor_proxy.enabled }}
--- ---
apiVersion: apps/v1 apiVersion: apps/v1
kind: DaemonSet kind: DaemonSet
metadata: metadata:
labels: labels:
app.kubernetes.io/component: proxy app.kubernetes.io/component: proxy
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: kube-monitor-proxy app.kubernetes.io/name: kube-monitor-proxy
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
@ -19,7 +20,7 @@ spec:
selector: selector:
matchLabels: matchLabels:
app.kubernetes.io/component: proxy app.kubernetes.io/component: proxy
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: kube-monitor-proxy app.kubernetes.io/name: kube-monitor-proxy
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
@ -28,7 +29,7 @@ spec:
metadata: metadata:
labels: labels:
app.kubernetes.io/component: proxy app.kubernetes.io/component: proxy
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: kube-monitor-proxy app.kubernetes.io/name: kube-monitor-proxy
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
@ -134,3 +135,5 @@ spec:
serviceAccountName: kube-monitor-proxy serviceAccountName: kube-monitor-proxy
tolerations: tolerations:
- operator: Exists - operator: Exists
{{ end }}

View File

@ -1,10 +1,11 @@
{{ if .Values.nfc_monitoring.kube_state_metrics.enabled }}
--- ---
apiVersion: apps/v1 apiVersion: apps/v1
kind: Deployment kind: Deployment
metadata: metadata:
labels: labels:
app.kubernetes.io/component: exporter app.kubernetes.io/component: exporter
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: kube-state-metrics app.kubernetes.io/name: kube-state-metrics
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
@ -16,7 +17,7 @@ spec:
selector: selector:
matchLabels: matchLabels:
app.kubernetes.io/component: exporter app.kubernetes.io/component: exporter
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: kube-state-metrics app.kubernetes.io/name: kube-state-metrics
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
@ -26,7 +27,7 @@ spec:
kubectl.kubernetes.io/default-container: kube-state-metrics kubectl.kubernetes.io/default-container: kube-state-metrics
labels: labels:
app.kubernetes.io/component: exporter app.kubernetes.io/component: exporter
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: kube-state-metrics app.kubernetes.io/name: kube-state-metrics
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
@ -110,3 +111,5 @@ spec:
nodeSelector: nodeSelector:
kubernetes.io/os: linux kubernetes.io/os: linux
serviceAccountName: kube-state-metrics serviceAccountName: kube-state-metrics
{{ end }}

View File

@ -3,9 +3,8 @@ apiVersion: apps/v1
kind: Deployment kind: Deployment
metadata: metadata:
labels: labels:
app.kubernetes.io/component: metrics-adapter {{ toYaml $.Values.nfc_monitoring.prometheus_adaptor.labels | nindent 4 }}
app.kubernetes.io/instance: main app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: prometheus-adapter
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
@ -15,9 +14,8 @@ spec:
replicas: 2 replicas: 2
selector: selector:
matchLabels: matchLabels:
app.kubernetes.io/component: metrics-adapter {{ toYaml $.Values.nfc_monitoring.prometheus_adaptor.labels | nindent 6 }}
app.kubernetes.io/instance: main app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: prometheus-adapter
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
@ -28,9 +26,8 @@ spec:
template: template:
metadata: metadata:
labels: labels:
app.kubernetes.io/component: metrics-adapter {{ toYaml $.Values.nfc_monitoring.prometheus_adaptor.labels | nindent 8 }}
app.kubernetes.io/instance: main app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: prometheus-adapter
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}

View File

@ -1,11 +1,11 @@
--- ---
{{ if .Values.nfc_monitoring.grafana.enabled -}}
apiVersion: grafana.integreatly.org/v1beta1 apiVersion: grafana.integreatly.org/v1beta1
kind: Grafana kind: Grafana
metadata: metadata:
labels: labels:
app.kubernetes.io/component: graphing {{ toYaml $.Values.nfc_monitoring.grafana.labels | nindent 4 }}
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: grafana
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
@ -13,19 +13,12 @@ metadata:
namespace: "{{ .Values.nfc_monitoring.grafana.namespace }}" namespace: "{{ .Values.nfc_monitoring.grafana.namespace }}"
spec: spec:
config: config:
log: {{ toYaml $.Values.nfc_monitoring.grafana.config | nindent 4 }}
mode: "console"
auth:
disable_login_form: "false"
security:
admin_user: "{{ .Values.nfc_monitoring.grafana.admin_user }}"
admin_password: "{{ .Values.nfc_monitoring.grafana.admin_password }}"
deployment: deployment:
metadata: metadata:
labels: labels:
app.kubernetes.io/component: graphing {{ toYaml $.Values.nfc_monitoring.grafana.labels | nindent 8 }}
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: grafana
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
@ -33,9 +26,8 @@ spec:
replicas: {{ .Values.nfc_monitoring.grafana.replicas | int }} replicas: {{ .Values.nfc_monitoring.grafana.replicas | int }}
selector: selector:
matchLabels: matchLabels:
app.kubernetes.io/component: graphing {{ toYaml $.Values.nfc_monitoring.grafana.labels | nindent 10 }}
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: grafana
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
strategy: strategy:
@ -45,9 +37,8 @@ spec:
template: template:
metadata: metadata:
labels: labels:
app.kubernetes.io/component: graphing {{ toYaml $.Values.nfc_monitoring.grafana.labels | nindent 12 }}
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: grafana
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
@ -105,7 +96,7 @@ spec:
name: dashboards name: dashboards
- image: "{{ .Values.nfc_monitoring.additions.dashboard_sidecar.image.name }}:{{ .Values.nfc_monitoring.additions.dashboard_sidecar.image.tag}}" - image: "{{ .Values.nfc_monitoring.additions.dashboard_sidecar.image.name }}:{{ .Values.nfc_monitoring.additions.dashboard_sidecar.image.tag}}"
name: k8s-sidecar name: sidecar
env: env:
- name: LABEL - name: LABEL
value: "{{ .Values.nfc_monitoring.additions.dashboard_sidecar.label_name }}" value: "{{ .Values.nfc_monitoring.additions.dashboard_sidecar.label_name }}"
@ -157,7 +148,9 @@ spec:
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
spec: spec:
accessModes: accessModes:
- "ReadWriteMany" - {{ .Values.nfc_monitoring.grafana.storage_accessModes | default "ReadWriteOnce" }}
resources: resources:
requests: requests:
storage: "5Gi" storage: "5Gi"
{{- end }}

View File

@ -1,3 +1,4 @@
{{ if .Values.nfc_monitoring.grafana.enabled -}}
--- ---
apiVersion: grafana.integreatly.org/v1beta1 apiVersion: grafana.integreatly.org/v1beta1
kind: GrafanaDashboard kind: GrafanaDashboard
@ -11,8 +12,10 @@ spec:
instanceSelector: instanceSelector:
matchLabels: matchLabels:
app.kubernetes.io/component: graphing app.kubernetes.io/component: graphing
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: grafana app.kubernetes.io/name: grafana
grafanaCom: grafanaCom:
id: 9578 id: 9578
revision: 4 # as @ 19-09-23 revision: 4 # as @ 19-09-23
{{- end }}

View File

@ -1,3 +1,4 @@
{{ if .Values.nfc_monitoring.grafana.enabled -}}
--- ---
{{- if .Values.nfc_monitoring.additions.ceph.enabled | default false -}} {{- if .Values.nfc_monitoring.additions.ceph.enabled | default false -}}
apiVersion: grafana.integreatly.org/v1beta1 apiVersion: grafana.integreatly.org/v1beta1
@ -12,10 +13,11 @@ spec:
instanceSelector: instanceSelector:
matchLabels: matchLabels:
app.kubernetes.io/component: graphing app.kubernetes.io/component: graphing
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: grafana app.kubernetes.io/name: grafana
grafanaCom: grafanaCom:
id: 2842 id: 2842
revision: 17 # as @ 19-09-23 revision: 17 # as @ 19-09-23
{{- end -}} {{- end -}}
{{- end }}

View File

@ -0,0 +1,25 @@
---
{{ if .Values.nfc_monitoring.grafana.enabled -}}
{{- if eq .Values.nfc_monitoring.kubernetes.networking "calico" }}
{{- if .Values.nfc_monitoring.prometheus.service_monitor.calico }}
apiVersion: grafana.integreatly.org/v1beta1
kind: GrafanaDashboard
metadata:
name: calico-felix
namespace: {{ .Values.nfc_monitoring.grafana.namespace }}
spec:
allowCrossNamespaceImport: true
folder: No Fuss Monitoring
resyncPeriod: 1d
instanceSelector:
matchLabels:
app.kubernetes.io/component: graphing
app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: grafana
grafanaCom:
id: 12175
revision: 5 # as @ 2020-05-04T16:47:08
{{- end }}
{{ end }}
{{ end }}

View File

@ -0,0 +1,21 @@
---
{{ if .Values.nfc_monitoring.grafana.dashboards.cert_manager | default false -}}
apiVersion: grafana.integreatly.org/v1beta1
kind: GrafanaDashboard
metadata:
name: node-exporter
namespace: {{ .Values.nfc_monitoring.grafana.namespace }}
spec:
allowCrossNamespaceImport: true
folder: No Fuss Monitoring
resyncPeriod: 1d
instanceSelector:
matchLabels:
app.kubernetes.io/component: graphing
app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: grafana
grafanaCom:
id: 11001
revision: 1 # as @ 2019-10-16T13:48:56
{{- end }}

View File

@ -1,4 +1,5 @@
--- ---
{{ if .Values.nfc_monitoring.grafana.enabled -}}
apiVersion: grafana.integreatly.org/v1beta1 apiVersion: grafana.integreatly.org/v1beta1
kind: GrafanaDashboard kind: GrafanaDashboard
metadata: metadata:
@ -11,9 +12,10 @@ spec:
instanceSelector: instanceSelector:
matchLabels: matchLabels:
app.kubernetes.io/component: graphing app.kubernetes.io/component: graphing
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: grafana app.kubernetes.io/name: grafana
{{ $Dashboard := .Files.Get "files/dashboard-summary.json" | fromJson }} {{ $Dashboard := .Files.Get "files/dashboard-summary.json" | fromJson }}
json: >- json: >-
{{ $Dashboard | toRawJson }} {{ $Dashboard | toRawJson }}
{{- end }}

View File

@ -1,4 +1,5 @@
--- ---
{{ if .Values.nfc_monitoring.grafana.enabled -}}
apiVersion: grafana.integreatly.org/v1beta1 apiVersion: grafana.integreatly.org/v1beta1
kind: GrafanaDashboard kind: GrafanaDashboard
metadata: metadata:
@ -11,8 +12,10 @@ spec:
instanceSelector: instanceSelector:
matchLabels: matchLabels:
app.kubernetes.io/component: graphing app.kubernetes.io/component: graphing
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: grafana app.kubernetes.io/name: grafana
grafanaCom: grafanaCom:
id: 1860 id: 1860
revision: 32 # as @ 19-09-23 revision: 32 # as @ 19-09-23
{{- end }}

View File

@ -1,4 +1,5 @@
--- ---
{{ if .Values.nfc_monitoring.grafana.enabled -}}
apiVersion: grafana.integreatly.org/v1beta1 apiVersion: grafana.integreatly.org/v1beta1
kind: GrafanaDatasourceList kind: GrafanaDatasourceList
items: items:
@ -10,7 +11,7 @@ items:
namespace: "{{ $.Values.nfc_monitoring.grafana.namespace }}" namespace: "{{ $.Values.nfc_monitoring.grafana.namespace }}"
labels: labels:
app.kubernetes.io/component: dashboard app.kubernetes.io/component: dashboard
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: grafana app.kubernetes.io/name: grafana
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
@ -18,11 +19,10 @@ items:
spec: spec:
instanceSelector: instanceSelector:
matchLabels: matchLabels:
app.kubernetes.io/component: graphing {{ toYaml $.Values.nfc_monitoring.grafana.labels | nindent 10 }}
app.kubernetes.io/instance: k8s
app.kubernetes.io/name: grafana
allowCrossNamespaceImport: true allowCrossNamespaceImport: true
datasource: datasource:
{{ toYaml . | nindent 8 }} {{ toYaml . | nindent 8 }}
{{ end }} {{ end }}
{{- end }}

View File

@ -0,0 +1,85 @@
{{ if .Values.nfc_monitoring.alert_manager.ingress.enabled -}}
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: alertmanager
namespace: "{{ .Values.nfc_monitoring.alert_manager.namespace }}"
annotations:
{{ toYaml $.Values.nfc_monitoring.alert_manager.ingress.annotations | nindent 4 }}
spec:
tls:
- hosts:
- {{ .Values.nfc_monitoring.alert_manager.ingress.hostname }}
secretName: certificate-tls-alert-manager
rules:
- host: {{ .Values.nfc_monitoring.alert_manager.ingress.hostname }}
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: alertmanager-{{ $.Release.Name }}
port:
name: web
{{ end }}
{{ if .Values.nfc_monitoring.grafana.enabled -}}
{{ if .Values.nfc_monitoring.grafana.ingress.enabled -}}
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: grafana
namespace: "{{ .Values.nfc_monitoring.grafana.namespace }}"
annotations:
{{ toYaml $.Values.nfc_monitoring.grafana.ingress.annotations | nindent 4 }}
spec:
tls:
- hosts:
- {{ .Values.nfc_monitoring.grafana.ingress.hostname }}
secretName: certificate-tls-grafana
rules:
- host: {{ .Values.nfc_monitoring.grafana.ingress.hostname }}
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: grafana
port:
name: grafana-http
{{ end }}
{{ end }}
{{ if .Values.nfc_monitoring.prometheus.ingress.enabled | default "false" -}}
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: prometheus
namespace: "{{ .Values.nfc_monitoring.prometheus.namespace }}"
annotations:
{{ toYaml $.Values.nfc_monitoring.prometheus.ingress.annotations | nindent 4 }}
spec:
tls:
- hosts:
- {{ .Values.nfc_monitoring.prometheus.ingress.hostname }}
secretName: certificate-tls-prometheus
rules:
- host: {{ .Values.nfc_monitoring.prometheus.ingress.hostname }}
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: prometheus-{{ $.Release.Name }}
port:
name: web
{{ end }}

View File

@ -1,31 +1,37 @@
# apiVersion: networking.k8s.io/v1 {{ if .Values.nfc_monitoring.kube_state_metrics.enabled }}
# kind: NetworkPolicy ---
# metadata: apiVersion: networking.k8s.io/v1
# labels: kind: NetworkPolicy
# app.kubernetes.io/component: exporter metadata:
# app.kubernetes.io/name: kube-state-metrics labels:
# app.kubernetes.io/part-of: kube-prometheus app.kubernetes.io/component: exporter
# app.kubernetes.io/version: 2.8.1 app.kubernetes.io/instance: {{ $.Release.Name }}
# name: kube-state-metrics app.kubernetes.io/name: kube-state-metrics
# namespace: monitoring app.kubernetes.io/part-of: kube-prometheus
# spec: app.kubernetes.io/version: 2.8.1
# egress: name: kube-state-metrics
# - {} namespace: monitoring
# ingress: spec:
# - from: egress:
# - podSelector: - {}
# matchLabels: ingress:
# app.kubernetes.io/name: prometheus - from:
# ports: - podSelector:
# - port: 8443 matchLabels:
# protocol: TCP app.kubernetes.io/name: prometheus
# - port: 9443 ports:
# protocol: TCP - port: 8443
# podSelector: protocol: TCP
# matchLabels: - port: 9443
# app.kubernetes.io/component: exporter protocol: TCP
# app.kubernetes.io/name: kube-state-metrics podSelector:
# app.kubernetes.io/part-of: kube-prometheus matchLabels:
# policyTypes: app.kubernetes.io/component: exporter
# - Egress app.kubernetes.io/instance: {{ $.Release.Name }}
# - Ingress app.kubernetes.io/name: kube-state-metrics
app.kubernetes.io/part-of: kube-prometheus
policyTypes:
- Egress
- Ingress
{{ end }}

View File

@ -0,0 +1,313 @@
{{- if .Values.nfc_monitoring.network_policy.enabled -}}
---
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
labels:
{{ toYaml (get $.Values.nfc_monitoring .name ).labels | nindent 4 }}
app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }}
name: {{ .name | replace "_" "-" }}
namespace: {{ (get $.Values.nfc_monitoring .name ).namespace }}
spec:
- name: prometheus
policy:
egress: # ToDo: add further restrictions to egress. is variable lookup possible to obtain values????
# - {}
- to: # Alert Manager
- namespaceSelector:
matchLabels:
kubernetes.io/metadata.name: alerting
podSelector:
matchLabels:
app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/component: alert-router
app.kubernetes.io/name: alertmanager
ports:
- port: 9093
protocol: TCP
- to: # Ceph
- ipBlock:
cidr: 172.16.10.0/24
ports:
- port: 9283
protocol: TCP
- to: # Grafana
- namespaceSelector:
matchLabels:
kubernetes.io/metadata.name: grafana
podSelector:
matchLabels:
app.kubernetes.io/component: graphing
app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: grafana
ports:
- port: 3000
protocol: TCP
- to: # Grafana Agent
- namespaceSelector:
matchLabels:
kubernetes.io/metadata.name: monitoring
podSelector:
matchLabels:
app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/component: exporter
app.kubernetes.io/name: grafana-agent
ports:
- port: 12345
protocol: TCP
- to: # Kube DNS
- namespaceSelector:
matchLabels:
kubernetes.io/metadata.name: kube-system
podSelector:
matchLabels:
k8s-app: kube-dns
ports:
- port: 53
protocol: TCP
- port: 53
protocol: UDP
- to:
- podSelector:
matchLabels:
app.kubernetes.io/name: prometheus
# namespaceSelector:
# matchLabels:
# kubernetes.io/metadata.name: monitoiring
- namespaceSelector:
matchLabels:
kubernetes.io/metadata.name: metrics
ports: []
- {} # ToDo: Temp rule: Allow All. this rule MUST be removed when egress has been refactored
ingress:
- from:
- podSelector:
matchLabels:
app.kubernetes.io/name: prometheus
# namespaceSelector:
# matchLabels:
# kubernetes.io/metadata.name: monitoiring
- namespaceSelector:
matchLabels:
kubernetes.io/metadata.name: metrics
ports: []
# - port: 8080
# protocol: TCP
# - port: 9090
# protocol: TCP
# - port: 10901
# protocol: TCP
- from:
- podSelector:
matchLabels:
app.kubernetes.io/name: grafana
namespaceSelector:
matchLabels:
kubernetes.io/metadata.name: grafana
- podSelector:
matchLabels:
app.kubernetes.io/name: prometheus-adapter
namespaceSelector:
matchLabels:
kubernetes.io/metadata.name: monitoring
ports:
- port: 9090
protocol: TCP
- from: []
ports: []
policyTypes:
- Egress
- Ingress
podSelector:
matchLabels:
{{ toYaml $.Values.nfc_monitoring.prometheus.labels | nindent 6 }}
app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }}
---
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
labels:
{{ toYaml (get $.Values.nfc_monitoring .name ).labels | nindent 4 }}
app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }}
name: {{ .name | replace "_" "-" }}
namespace: {{ (get $.Values.nfc_monitoring .name ).namespace }}
spec:
- name: grafana
policy:
egress:
- to:
- namespaceSelector:
matchLabels:
kubernetes.io/metadata.name: alerting
podSelector:
matchLabels:
app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/component: alert-router
app.kubernetes.io/name: alertmanager
ports:
- port: 9093
protocol: TCP
- to:
- namespaceSelector:
matchLabels:
kubernetes.io/metadata.name: logging
podSelector:
matchLabels:
app.kubernetes.io/component: gateway
app.kubernetes.io/instance: loki
app.kubernetes.io/name: loki
ports:
- port: 80 # Service Port
protocol: TCP
- port: 8080 # Pod Port
protocol: TCP
- to:
- namespaceSelector:
matchLabels:
kubernetes.io/metadata.name: monitoring
podSelector:
matchLabels:
app.kubernetes.io/component: prometheus
app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: prometheus
- namespaceSelector:
matchLabels:
kubernetes.io/metadata.name: metrics
podSelector:
matchLabels:
app.kubernetes.io/component: query-layer
app.kubernetes.io/instance: thanos-query
app.kubernetes.io/name: thanos-query
ports:
- port: 9090
protocol: TCP
- to: [] # Requires internet access for plugins and dashboard downloading
ports:
- port: 443
protocol: TCP
- to: # Kube DNS
- namespaceSelector:
matchLabels:
kubernetes.io/metadata.name: kube-system
podSelector:
matchLabels:
k8s-app: kube-dns
ports:
- port: 53
protocol: TCP
- port: 53
protocol: UDP
ingress:
- from: []
ports:
- port: 3000
protocol: TCP
policyTypes:
- Egress
- Ingress
podSelector:
matchLabels:
{{ toYaml $.Values.nfc_monitoring.grafana.labels | nindent 8 }}
app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }}
---
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
labels:
{{ toYaml (get $.Values.nfc_monitoring .name ).labels | nindent 4 }}
app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }}
name: {{ .name | replace "_" "-" }}
namespace: {{ (get $.Values.nfc_monitoring .name ).namespace }}
spec:
- name: grafana_agent
policy:
egress:
- to: # Logging
- namespaceSelector:
matchLabels:
kubernetes.io/metadata.name: logging
podSelector:
matchLabels:
app.kubernetes.io/component: gateway
app.kubernetes.io/instance: loki
app.kubernetes.io/name: loki
ports:
- port: 80
protocol: TCP
- to: # Kube DNS
- namespaceSelector:
matchLabels:
kubernetes.io/metadata.name: kube-system
podSelector:
matchLabels:
k8s-app: kube-dns
ports:
- port: 53
protocol: TCP
- port: 53
protocol: UDP
ingress:
- from:
- namespaceSelector:
matchLabels:
kubernetes.io/metadata.name: monitoring
podSelector:
matchLabels:
app.kubernetes.io/component: prometheus
app.kubernetes.io/name: prometheus
ports:
- port: 12345
protocol: TCP
policyTypes:
- Egress
- Ingress
podSelector:
matchLabels:
{{ toYaml $.Values.nfc_monitoring.grafana_agent.labels | nindent 8 }}
app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }}
{{ end }}

View File

@ -3,9 +3,8 @@ apiVersion: policy/v1
kind: PodDisruptionBudget kind: PodDisruptionBudget
metadata: metadata:
labels: labels:
app.kubernetes.io/component: alert-router {{ toYaml $.Values.nfc_monitoring.alert_manager.labels | nindent 4 }}
app.kubernetes.io/instance: main app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: alertmanager
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
@ -15,7 +14,6 @@ spec:
maxUnavailable: 1 maxUnavailable: 1
selector: selector:
matchLabels: matchLabels:
app.kubernetes.io/component: alert-router {{ toYaml $.Values.nfc_monitoring.alert_manager.labels | nindent 6 }}
app.kubernetes.io/instance: main app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: alertmanager
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}

View File

@ -3,9 +3,8 @@ apiVersion: policy/v1
kind: PodDisruptionBudget kind: PodDisruptionBudget
metadata: metadata:
labels: labels:
app.kubernetes.io/component: metrics-adapter {{ toYaml $.Values.nfc_monitoring.prometheus_adaptor.labels | nindent 4 }}
app.kubernetes.io/instance: main app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: prometheus-adapter
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
@ -15,7 +14,6 @@ spec:
minAvailable: 1 minAvailable: 1
selector: selector:
matchLabels: matchLabels:
app.kubernetes.io/component: metrics-adapter {{ toYaml $.Values.nfc_monitoring.prometheus_adaptor.labels | nindent 6 }}
app.kubernetes.io/instance: main app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: prometheus-adapter
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}

View File

@ -3,18 +3,16 @@ apiVersion: policy/v1
kind: PodDisruptionBudget kind: PodDisruptionBudget
metadata: metadata:
labels: labels:
app.kubernetes.io/component: prometheus {{ toYaml $.Values.nfc_monitoring.prometheus.labels | nindent 4 }}
app.kubernetes.io/instance: k8s
app.kubernetes.io/name: prometheus
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
name: prometheus-k8s name: prometheus-{{ $.Release.Name }}
namespace: {{ .Values.nfc_monitoring.prometheus.namespace }} namespace: {{ .Values.nfc_monitoring.prometheus.namespace }}
spec: spec:
minAvailable: 1 minAvailable: 1
selector: selector:
matchLabels: matchLabels:
app.kubernetes.io/component: prometheus {{ toYaml $.Values.nfc_monitoring.prometheus.labels | nindent 6 }}
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}

View File

@ -3,12 +3,12 @@ apiVersion: monitoring.coreos.com/v1
kind: Prometheus kind: Prometheus
metadata: metadata:
labels: labels:
app.kubernetes.io/component: prometheus {{ toYaml $.Values.nfc_monitoring.prometheus.labels | nindent 4 }}
app.kubernetes.io/name: prometheus app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
name: k8s name: {{ $.Release.Name }}
namespace: "{{ .Values.nfc_monitoring.prometheus.namespace }}" namespace: "{{ .Values.nfc_monitoring.prometheus.namespace }}"
spec: spec:
affinity: affinity:
@ -16,19 +16,18 @@ spec:
alerting: alerting:
alertmanagers: alertmanagers:
- apiVersion: v2 - apiVersion: v2
name: alertmanager-main name: alertmanager-{{ $.Release.Name }}
namespace: "{{ .Values.nfc_monitoring.alert_manager.namespace }}" namespace: "{{ .Values.nfc_monitoring.alert_manager.namespace }}"
port: web port: web
enableFeatures: [] enableFeatures: []
externalLabels: {} externalLabels: {}
image: quay.io/prometheus/prometheus:v2.42.0 image: {{ .Values.nfc_monitoring.prometheus.image.name }}:{{ .Values.nfc_monitoring.prometheus.image.tag}}
nodeSelector: nodeSelector:
kubernetes.io/os: linux kubernetes.io/os: linux
podMetadata: podMetadata:
labels: labels:
app.kubernetes.io/component: prometheus {{ toYaml $.Values.nfc_monitoring.prometheus.labels | nindent 6 }}
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: prometheus
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
@ -36,28 +35,33 @@ spec:
podMonitorSelector: {} podMonitorSelector: {}
probeNamespaceSelector: {} probeNamespaceSelector: {}
probeSelector: {} probeSelector: {}
replicas: 3 {{ if .Values.nfc_monitoring.prometheus.remotewrite }}
remoteWrite: {{ .Values.nfc_monitoring.prometheus.remotewrite | toYaml | nindent 4 }}
{{- end }}
replicas: {{ $.Values.nfc_monitoring.prometheus.replicas }}
resources: resources:
requests: requests:
memory: 400Mi memory: 400Mi
ruleNamespaceSelector: {} ruleNamespaceSelector: {}
ruleSelector: {}
securityContext: securityContext:
fsGroup: 2000 fsGroup: 2000
runAsNonRoot: true runAsNonRoot: true
runAsUser: 1000 runAsUser: 1000
serviceAccountName: prometheus-k8s serviceAccountName: prometheus-{{ $.Release.Name }}
serviceMonitorNamespaceSelector: {} serviceMonitorNamespaceSelector: {}
serviceMonitorSelector: {} serviceMonitorSelector: {}
storage: storage:
{{- toYaml .Values.nfc_monitoring.prometheus.affinity | nindent 4 }} {{- toYaml .Values.nfc_monitoring.prometheus.storage | nindent 4 }}
{{ if .Values.nfc_monitoring.thanos.sidecar.enabled }} {{ if .Values.nfc_monitoring.thanos.sidecar.enabled }}
{{ if .Values.nfc_monitoring.thanos.sidecar.config }}
thanos: thanos:
image: "{{ .Values.nfc_monitoring.thanos.image.name }}:{{ .Values.nfc_monitoring.thanos.image.tag }}" image: "{{ .Values.nfc_monitoring.thanos.image.name }}:{{ .Values.nfc_monitoring.thanos.image.tag }}"
objectStorageConfig: objectStorageConfig:
key: thanos.yaml key: thanos.yaml
name: thanos-sidecar-config name: thanos-sidecar-config
{{ end }} {{ end }}
{{ end }}
version: 2.42.0 version: 2.42.0
{{ if .Values.nfc_monitoring.prometheus.additional }} {{ if .Values.nfc_monitoring.prometheus.additional }}
{{ toYaml .Values.nfc_monitoring.prometheus.additional | nindent 2 }} {{ toYaml .Values.nfc_monitoring.prometheus.additional | nindent 2 }}

View File

@ -3,13 +3,12 @@ apiVersion: monitoring.coreos.com/v1
kind: PrometheusRule kind: PrometheusRule
metadata: metadata:
labels: labels:
app.kubernetes.io/component: alert-router {{ toYaml $.Values.nfc_monitoring.alert_manager.labels | nindent 4 }}
app.kubernetes.io/instance: main app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: alertmanager
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
prometheus: k8s prometheus: {{ $.Release.Name }}
role: alert-rules role: alert-rules
name: alertmanager-main-rules name: alertmanager-main-rules
namespace: {{ .Values.nfc_monitoring.prometheus.namespace }} namespace: {{ .Values.nfc_monitoring.prometheus.namespace }}
@ -25,7 +24,7 @@ spec:
expr: | expr: |
# Without max_over_time, failed scrapes could create false negatives, see # Without max_over_time, failed scrapes could create false negatives, see
# https://www.robustperception.io/alerting-on-gauges-in-prometheus-2-0 for details. # https://www.robustperception.io/alerting-on-gauges-in-prometheus-2-0 for details.
max_over_time(alertmanager_config_last_reload_successful{job="alertmanager-main",namespace="monitoring"}[5m]) == 0 max_over_time(alertmanager_config_last_reload_successful{job="alertmanager-{{ $.Release.Name }}",namespace="monitoring"}[5m]) == 0
for: 10m for: 10m
labels: labels:
severity: critical severity: critical
@ -37,9 +36,9 @@ spec:
expr: | expr: |
# Without max_over_time, failed scrapes could create false negatives, see # Without max_over_time, failed scrapes could create false negatives, see
# https://www.robustperception.io/alerting-on-gauges-in-prometheus-2-0 for details. # https://www.robustperception.io/alerting-on-gauges-in-prometheus-2-0 for details.
max_over_time(alertmanager_cluster_members{job="alertmanager-main",namespace="monitoring"}[5m]) max_over_time(alertmanager_cluster_members{job="alertmanager-{{ $.Release.Name }}",namespace="monitoring"}[5m])
< on (namespace,service) group_left < on (namespace,service) group_left
count by (namespace,service) (max_over_time(alertmanager_cluster_members{job="alertmanager-main",namespace="monitoring"}[5m])) count by (namespace,service) (max_over_time(alertmanager_cluster_members{job="alertmanager-{{ $.Release.Name }}",namespace="monitoring"}[5m]))
for: 15m for: 15m
labels: labels:
severity: critical severity: critical
@ -50,9 +49,9 @@ spec:
summary: An Alertmanager instance failed to send notifications. summary: An Alertmanager instance failed to send notifications.
expr: | expr: |
( (
rate(alertmanager_notifications_failed_total{job="alertmanager-main",namespace="monitoring"}[5m]) rate(alertmanager_notifications_failed_total{job="alertmanager-{{ $.Release.Name }}",namespace="monitoring"}[5m])
/ /
rate(alertmanager_notifications_total{job="alertmanager-main",namespace="monitoring"}[5m]) rate(alertmanager_notifications_total{job="alertmanager-{{ $.Release.Name }}",namespace="monitoring"}[5m])
) )
> 0.01 > 0.01
for: 5m for: 5m
@ -65,9 +64,9 @@ spec:
summary: All Alertmanager instances in a cluster failed to send notifications to a critical integration. summary: All Alertmanager instances in a cluster failed to send notifications to a critical integration.
expr: | expr: |
min by (namespace,service, integration) ( min by (namespace,service, integration) (
rate(alertmanager_notifications_failed_total{job="alertmanager-main",namespace="monitoring", integration=~`.*`}[5m]) rate(alertmanager_notifications_failed_total{job="alertmanager-{{ $.Release.Name }}",namespace="monitoring", integration=~`.*`}[5m])
/ /
rate(alertmanager_notifications_total{job="alertmanager-main",namespace="monitoring", integration=~`.*`}[5m]) rate(alertmanager_notifications_total{job="alertmanager-{{ $.Release.Name }}",namespace="monitoring", integration=~`.*`}[5m])
) )
> 0.01 > 0.01
for: 5m for: 5m
@ -80,9 +79,9 @@ spec:
summary: All Alertmanager instances in a cluster failed to send notifications to a non-critical integration. summary: All Alertmanager instances in a cluster failed to send notifications to a non-critical integration.
expr: | expr: |
min by (namespace,service, integration) ( min by (namespace,service, integration) (
rate(alertmanager_notifications_failed_total{job="alertmanager-main",namespace="monitoring", integration!~`.*`}[5m]) rate(alertmanager_notifications_failed_total{job="alertmanager-{{ $.Release.Name }}",namespace="monitoring", integration!~`.*`}[5m])
/ /
rate(alertmanager_notifications_total{job="alertmanager-main",namespace="monitoring", integration!~`.*`}[5m]) rate(alertmanager_notifications_total{job="alertmanager-{{ $.Release.Name }}",namespace="monitoring", integration!~`.*`}[5m])
) )
> 0.01 > 0.01
for: 5m for: 5m
@ -95,7 +94,7 @@ spec:
summary: Alertmanager instances within the same cluster have different configurations. summary: Alertmanager instances within the same cluster have different configurations.
expr: | expr: |
count by (namespace,service) ( count by (namespace,service) (
count_values by (namespace,service) ("config_hash", alertmanager_config_hash{job="alertmanager-main",namespace="monitoring"}) count_values by (namespace,service) ("config_hash", alertmanager_config_hash{job="alertmanager-{{ $.Release.Name }}",namespace="monitoring"})
) )
!= 1 != 1
for: 20m for: 20m
@ -109,11 +108,11 @@ spec:
expr: | expr: |
( (
count by (namespace,service) ( count by (namespace,service) (
avg_over_time(up{job="alertmanager-main",namespace="monitoring"}[5m]) < 0.5 avg_over_time(up{job="alertmanager-{{ $.Release.Name }}",namespace="monitoring"}[5m]) < 0.5
) )
/ /
count by (namespace,service) ( count by (namespace,service) (
up{job="alertmanager-main",namespace="monitoring"} up{job="alertmanager-{{ $.Release.Name }}",namespace="monitoring"}
) )
) )
>= 0.5 >= 0.5
@ -128,11 +127,11 @@ spec:
expr: | expr: |
( (
count by (namespace,service) ( count by (namespace,service) (
changes(process_start_time_seconds{job="alertmanager-main",namespace="monitoring"}[10m]) > 4 changes(process_start_time_seconds{job="alertmanager-{{ $.Release.Name }}",namespace="monitoring"}[10m]) > 4
) )
/ /
count by (namespace,service) ( count by (namespace,service) (
up{job="alertmanager-main",namespace="monitoring"} up{job="alertmanager-{{ $.Release.Name }}",namespace="monitoring"}
) )
) )
>= 0.5 >= 0.5

View File

@ -0,0 +1,48 @@
---
apiVersion: monitoring.coreos.com/v1
kind: PrometheusRule
metadata:
labels:
app.kubernetes.io/component: exporter
app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: kube-prometheus
app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }}
app.kubernetes.io/managed-by: {{ $.Release.Service }}
prometheus: {{ $.Release.Name }}
role: alert-rules
name: common
namespace: {{ .Values.nfc_monitoring.prometheus.namespace }}
spec:
groups:
- name: common.rules
rules:
- alert: Watchdog
annotations:
description: |
This is an alert is meant to ensure that the entire alerting pipeline is functional.
This alert is always firing, therefore it should always be firing in Alertmanager
and always fire against a receiver. There are integrations with various notification
mechanisms that send a notification when this alert is not firing. For example the
"DeadMansSnitch" integration in PagerDuty.
runbook_url: https://runbooks.prometheus-operator.dev/runbooks/general/watchdog
summary: An alert that should always be firing to certify that Alertmanager is working properly.
expr: vector(1)
labels:
severity: none
- alert: InfoInhibitor
annotations:
description: |
This is an alert that is used to inhibit info alerts.
By themselves, the info-level alerts are sometimes very noisy, but they are relevant when combined with
other alerts.
This alert fires whenever there's a severity="info" alert, and stops firing when another alert with a
severity of 'warning' or 'critical' starts firing on the same namespace.
This alert should be routed to a null receiver and configured to inhibit alerts with severity="info".
runbook_url: https://runbooks.prometheus-operator.dev/runbooks/general/infoinhibitor
summary: Info-level alert inhibition.
expr: ALERTS{severity = "info"} == 1 unless on(namespace) ALERTS{alertname != "InfoInhibitor", severity =~ "warning|critical", alertstate="firing"} == 1
labels:
severity: none

View File

@ -3,13 +3,13 @@ apiVersion: monitoring.coreos.com/v1
kind: PrometheusRule kind: PrometheusRule
metadata: metadata:
labels: labels:
app.kubernetes.io/component: exporter {{ toYaml $.Values.nfc_monitoring.grafana_agent.labels | nindent 4 }}
app.kubernetes.io/name: grafana-agent app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
prometheus: k8s prometheus: {{ $.Release.Name }}
role: grafana-agent-promtail role: alert-rules
name: grafana-agent name: grafana-agent
namespace: {{ .Values.nfc_monitoring.prometheus.namespace }} namespace: {{ .Values.nfc_monitoring.prometheus.namespace }}
spec: spec:
@ -21,3 +21,87 @@ spec:
- expr: | - expr: |
agent_build_info agent_build_info
record: promtail_build_info record: promtail_build_info
- name: promtail_rules
rules:
- expr: histogram_quantile(0.99, sum(rate(promtail_request_duration_seconds_bucket[1m]))
by (le, job))
record: job:promtail_request_duration_seconds:99quantile
- expr: histogram_quantile(0.50, sum(rate(promtail_request_duration_seconds_bucket[1m]))
by (le, job))
record: job:promtail_request_duration_seconds:50quantile
- expr: sum(rate(promtail_request_duration_seconds_sum[1m])) by (job) / sum(rate(promtail_request_duration_seconds_count[1m]))
by (job)
record: job:promtail_request_duration_seconds:avg
- expr: sum(rate(promtail_request_duration_seconds_bucket[1m])) by (le, job)
record: job:promtail_request_duration_seconds_bucket:sum_rate
- expr: sum(rate(promtail_request_duration_seconds_sum[1m])) by (job)
record: job:promtail_request_duration_seconds_sum:sum_rate
- expr: sum(rate(promtail_request_duration_seconds_count[1m])) by (job)
record: job:promtail_request_duration_seconds_count:sum_rate
- expr: histogram_quantile(0.99, sum(rate(promtail_request_duration_seconds_bucket[1m]))
by (le, job, namespace))
record: job_namespace:promtail_request_duration_seconds:99quantile
- expr: histogram_quantile(0.50, sum(rate(promtail_request_duration_seconds_bucket[1m]))
by (le, job, namespace))
record: job_namespace:promtail_request_duration_seconds:50quantile
- expr: sum(rate(promtail_request_duration_seconds_sum[1m])) by (job, namespace)
/ sum(rate(promtail_request_duration_seconds_count[1m])) by (job, namespace)
record: job_namespace:promtail_request_duration_seconds:avg
- expr: sum(rate(promtail_request_duration_seconds_bucket[1m])) by (le, job, namespace)
record: job_namespace:promtail_request_duration_seconds_bucket:sum_rate
- expr: sum(rate(promtail_request_duration_seconds_sum[1m])) by (job, namespace)
record: job_namespace:promtail_request_duration_seconds_sum:sum_rate
- expr: sum(rate(promtail_request_duration_seconds_count[1m])) by (job, namespace)
record: job_namespace:promtail_request_duration_seconds_count:sum_rate
- expr: histogram_quantile(0.99, sum(rate(promtail_request_duration_seconds_bucket[1m]))
by (le, job, status_code, namespace))
record: job_status_code_namespace:promtail_request_duration_seconds:99quantile
- expr: histogram_quantile(0.50, sum(rate(promtail_request_duration_seconds_bucket[1m]))
by (le, job, status_code, namespace))
record: job_status_code_namespace:promtail_request_duration_seconds:50quantile
- expr: sum(rate(promtail_request_duration_seconds_sum[1m])) by (job, status_code,
namespace) / sum(rate(promtail_request_duration_seconds_count[1m])) by (job,
status_code, namespace)
record: job_status_code_namespace:promtail_request_duration_seconds:avg
- expr: sum(rate(promtail_request_duration_seconds_bucket[1m])) by (le, job, status_code,
namespace)
record: job_status_code_namespace:promtail_request_duration_seconds_bucket:sum_rate
- expr: sum(rate(promtail_request_duration_seconds_sum[1m])) by (job, status_code,
namespace)
record: job_status_code_namespace:promtail_request_duration_seconds_sum:sum_rate
- expr: sum(rate(promtail_request_duration_seconds_count[1m])) by (job, status_code,
namespace)
record: job_status_code_namespace:promtail_request_duration_seconds_count:sum_rate
- name: promtail_alerts
rules:
- alert: PromtailRequestsErrors
annotations:
message: |
{{ `{{` }} $labels.job }} {{ `{{` }} $labels.route }} is experiencing {{ `{{` }} printf "%.2f" $value }}% errors.
expr: |
100 * sum(rate(promtail_request_duration_seconds_count{status_code=~"5..|failed"}[1m])) by (namespace, job, route, instance)
/
sum(rate(promtail_request_duration_seconds_count[1m])) by (namespace, job, route, instance)
> 10
for: 15m
labels:
severity: critical
- alert: PromtailRequestLatency
annotations:
message: |
{{ `{{` }} $labels.job }} {{ `{{` }} $labels.route }} is experiencing {{ `{{` }} printf "%.2f" $value }}s 99th percentile latency.
expr: |
job_status_code_namespace:promtail_request_duration_seconds:99quantile > 1
for: 15m
labels:
severity: critical
- alert: PromtailFileMissing
annotations:
message: |
{{ `{{` }} $labels.instance }} {{ `{{` }} $labels.job }} {{ `{{` }} $labels.path }} matches the glob but is not being tailed.
expr: |
promtail_file_bytes_total unless promtail_read_bytes_total
for: 15m
labels:
severity: warning

View File

@ -1,14 +1,15 @@
{{ if .Values.nfc_monitoring.grafana.enabled -}}
--- ---
apiVersion: monitoring.coreos.com/v1 apiVersion: monitoring.coreos.com/v1
kind: PrometheusRule kind: PrometheusRule
metadata: metadata:
labels: labels:
app.kubernetes.io/component: grafana {{ toYaml $.Values.nfc_monitoring.grafana.labels | nindent 4 }}
app.kubernetes.io/name: grafana app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
prometheus: k8s prometheus: {{ $.Release.Name }}
role: alert-rules role: alert-rules
name: grafana-rules name: grafana-rules
namespace: {{ .Values.nfc_monitoring.prometheus.namespace }} namespace: {{ .Values.nfc_monitoring.prometheus.namespace }}
@ -33,3 +34,5 @@ spec:
- expr: | - expr: |
sum by (namespace, job, handler, status_code) (rate(grafana_http_request_duration_seconds_count[5m])) sum by (namespace, job, handler, status_code) (rate(grafana_http_request_duration_seconds_count[5m]))
record: namespace_job_handler_statuscode:grafana_http_request_duration_seconds_count:rate5m record: namespace_job_handler_statuscode:grafana_http_request_duration_seconds_count:rate5m
{{- end }}

View File

@ -1,14 +1,16 @@
{{ if .Values.nfc_monitoring.kube_monitor_proxy.enabled }}
--- ---
apiVersion: monitoring.coreos.com/v1 apiVersion: monitoring.coreos.com/v1
kind: PrometheusRule kind: PrometheusRule
metadata: metadata:
labels: labels:
app.kubernetes.io/component: exporter app.kubernetes.io/component: exporter
app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: kube-prometheus app.kubernetes.io/name: kube-prometheus
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
prometheus: k8s prometheus: {{ $.Release.Name }}
role: alert-rules role: alert-rules
name: kube-prometheus-rules name: kube-prometheus-rules
namespace: {{ .Values.nfc_monitoring.prometheus.namespace }} namespace: {{ .Values.nfc_monitoring.prometheus.namespace }}
@ -25,33 +27,6 @@ spec:
for: 10m for: 10m
labels: labels:
severity: warning severity: warning
- alert: Watchdog
annotations:
description: |
This is an alert meant to ensure that the entire alerting pipeline is functional.
This alert is always firing, therefore it should always be firing in Alertmanager
and always fire against a receiver. There are integrations with various notification
mechanisms that send a notification when this alert is not firing. For example the
"DeadMansSnitch" integration in PagerDuty.
runbook_url: https://runbooks.prometheus-operator.dev/runbooks/general/watchdog
summary: An alert that should always be firing to certify that Alertmanager is working properly.
expr: vector(1)
labels:
severity: none
- alert: InfoInhibitor
annotations:
description: |
This is an alert that is used to inhibit info alerts.
By themselves, the info-level alerts are sometimes very noisy, but they are relevant when combined with
other alerts.
This alert fires whenever there's a severity="info" alert, and stops firing when another alert with a
severity of 'warning' or 'critical' starts firing on the same namespace.
This alert should be routed to a null receiver and configured to inhibit alerts with severity="info".
runbook_url: https://runbooks.prometheus-operator.dev/runbooks/general/infoinhibitor
summary: Info-level alert inhibition.
expr: ALERTS{severity = "info"} == 1 unless on(namespace) ALERTS{alertname != "InfoInhibitor", severity =~ "warning|critical", alertstate="firing"} == 1
labels:
severity: none
- name: node-network - name: node-network
rules: rules:
- alert: NodeNetworkInterfaceFlapping - alert: NodeNetworkInterfaceFlapping
@ -84,3 +59,5 @@ spec:
record: count:up1 record: count:up1
- expr: count without(instance, pod, node) (up == 0) - expr: count without(instance, pod, node) (up == 0)
record: count:up0 record: count:up0
{{ end }}

View File

@ -1,14 +1,16 @@
{{ if .Values.nfc_monitoring.kube_state_metrics.enabled }}
--- ---
apiVersion: monitoring.coreos.com/v1 apiVersion: monitoring.coreos.com/v1
kind: PrometheusRule kind: PrometheusRule
metadata: metadata:
labels: labels:
app.kubernetes.io/component: exporter app.kubernetes.io/component: exporter
app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: kube-state-metrics app.kubernetes.io/name: kube-state-metrics
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
prometheus: k8s prometheus: {{ $.Release.Name }}
role: alert-rules role: alert-rules
name: kube-state-metrics-rules name: kube-state-metrics-rules
namespace: {{ .Values.nfc_monitoring.prometheus.namespace }} namespace: {{ .Values.nfc_monitoring.prometheus.namespace }}
@ -65,3 +67,5 @@ spec:
for: 15m for: 15m
labels: labels:
severity: critical severity: critical
{{ end }}

View File

@ -1,13 +1,15 @@
{{ if .Values.nfc_monitoring.kube_monitor_proxy.enabled }}
--- ---
apiVersion: monitoring.coreos.com/v1 apiVersion: monitoring.coreos.com/v1
kind: PrometheusRule kind: PrometheusRule
metadata: metadata:
labels: labels:
app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: kube-prometheus app.kubernetes.io/name: kube-prometheus
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
prometheus: k8s prometheus: {{ $.Release.Name }}
role: alert-rules role: alert-rules
name: kubernetes-monitoring-rules name: kubernetes-monitoring-rules
namespace: {{ .Values.nfc_monitoring.prometheus.namespace }} namespace: {{ .Values.nfc_monitoring.prometheus.namespace }}
@ -1439,3 +1441,5 @@ spec:
labels: labels:
quantile: "0.5" quantile: "0.5"
record: node_quantile:kubelet_pleg_relist_duration_seconds:histogram_quantile record: node_quantile:kubelet_pleg_relist_duration_seconds:histogram_quantile
{{ end }}

View File

@ -1,15 +1,17 @@
--- ---
{{- if .Values.nfc_monitoring.loki.enabled | default false -}} {{- if .Values.nfc_monitoring.loki.enabled | default false -}}
{{ if .Values.nfc_monitoring.loki.config }}
apiVersion: monitoring.coreos.com/v1 apiVersion: monitoring.coreos.com/v1
kind: PrometheusRule kind: PrometheusRule
metadata: metadata:
labels: labels:
app.kubernetes.io/component: logging app.kubernetes.io/component: logging
app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: loki app.kubernetes.io/name: loki
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
prometheus: k8s prometheus: {{ $.Release.Name }}
role: alert-rules role: alert-rules
name: loki name: loki
namespace: {{ .Values.nfc_monitoring.prometheus.namespace }} namespace: {{ .Values.nfc_monitoring.prometheus.namespace }}
@ -109,4 +111,5 @@ spec:
labels: labels:
severity: warning severity: warning
{{ end }}
{{- end -}} {{- end -}}

View File

@ -4,11 +4,12 @@ kind: PrometheusRule
metadata: metadata:
labels: labels:
app.kubernetes.io/component: exporter app.kubernetes.io/component: exporter
app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: node-exporter app.kubernetes.io/name: node-exporter
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
prometheus: k8s prometheus: {{ $.Release.Name }}
role: alert-rules role: alert-rules
name: node-exporter-rules name: node-exporter-rules
namespace: {{ .Values.nfc_monitoring.prometheus.namespace }} namespace: {{ .Values.nfc_monitoring.prometheus.namespace }}
@ -16,6 +17,16 @@ spec:
groups: groups:
- name: node-exporter - name: node-exporter
rules: rules:
{{ range $index, $node := (lookup "v1" "Node" "" "").items }}
- alert: NodeExporterJobMissing-{{ $node.metadata.name }}
annotations:
summary: Node Exporter job missing for node {{ $node.metadata.name }}. (instance {{ `{{` }} $labels.instance }})
description: "Node Exporter job has disappeared\n Node = {{ $node.metadata.name }}\n Value = {{ `{{` }} $value }}\n LABELS = {{ `{{` }} $labels }}"
expr: absent(up{job="node-exporter", node="{{ $node.metadata.name }}"})
for: 0m
labels:
severity: critical
{{ end }}
- alert: NodeFilesystemSpaceFillingUp - alert: NodeFilesystemSpaceFillingUp
annotations: annotations:
description: Filesystem on {{ `{{` }} $labels.device }} at {{ `{{` }} $labels.instance }} has only {{ `{{` }} printf "%.2f" $value }}% available space left and is filling up. description: Filesystem on {{ `{{` }} $labels.device }} at {{ `{{` }} $labels.instance }} has only {{ `{{` }} printf "%.2f" $value }}% available space left and is filling up.

View File

@ -3,14 +3,14 @@ apiVersion: monitoring.coreos.com/v1
kind: PrometheusRule kind: PrometheusRule
metadata: metadata:
labels: labels:
app.kubernetes.io/component: prometheus {{ toYaml $.Values.nfc_monitoring.prometheus.labels | nindent 4 }}
app.kubernetes.io/name: prometheus app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
prometheus: k8s prometheus: {{ $.Release.Name }}
role: alert-rules role: alert-rules
name: prometheus-k8s-prometheus-rules name: prometheus-{{ $.Release.Name }}-prometheus-rules
namespace: {{ .Values.nfc_monitoring.prometheus.namespace }} namespace: {{ .Values.nfc_monitoring.prometheus.namespace }}
spec: spec:
groups: groups:
@ -24,7 +24,7 @@ spec:
expr: | expr: |
# Without max_over_time, failed scrapes could create false negatives, see # Without max_over_time, failed scrapes could create false negatives, see
# https://www.robustperception.io/alerting-on-gauges-in-prometheus-2-0 for details. # https://www.robustperception.io/alerting-on-gauges-in-prometheus-2-0 for details.
max_over_time(prometheus_config_last_reload_successful{job="prometheus-k8s",namespace="monitoring"}[5m]) == 0 max_over_time(prometheus_config_last_reload_successful{job="prometheus",namespace="monitoring"}[5m]) == 0
for: 10m for: 10m
labels: labels:
severity: critical severity: critical
@ -37,9 +37,9 @@ spec:
# Without min_over_time, failed scrapes could create false negatives, see # Without min_over_time, failed scrapes could create false negatives, see
# https://www.robustperception.io/alerting-on-gauges-in-prometheus-2-0 for details. # https://www.robustperception.io/alerting-on-gauges-in-prometheus-2-0 for details.
( (
predict_linear(prometheus_notifications_queue_length{job="prometheus-k8s",namespace="monitoring"}[5m], 60 * 30) predict_linear(prometheus_notifications_queue_length{job="prometheus",namespace="monitoring"}[5m], 60 * 30)
> >
min_over_time(prometheus_notifications_queue_capacity{job="prometheus-k8s",namespace="monitoring"}[5m]) min_over_time(prometheus_notifications_queue_capacity{job="prometheus",namespace="monitoring"}[5m])
) )
for: 15m for: 15m
labels: labels:
@ -51,9 +51,9 @@ spec:
summary: Prometheus has encountered more than 1% errors sending alerts to a specific Alertmanager. summary: Prometheus has encountered more than 1% errors sending alerts to a specific Alertmanager.
expr: | expr: |
( (
rate(prometheus_notifications_errors_total{job="prometheus-k8s",namespace="monitoring"}[5m]) rate(prometheus_notifications_errors_total{job="prometheus",namespace="monitoring"}[5m])
/ /
rate(prometheus_notifications_sent_total{job="prometheus-k8s",namespace="monitoring"}[5m]) rate(prometheus_notifications_sent_total{job="prometheus",namespace="monitoring"}[5m])
) )
* 100 * 100
> 1 > 1
@ -68,7 +68,7 @@ spec:
expr: | expr: |
# Without max_over_time, failed scrapes could create false negatives, see # Without max_over_time, failed scrapes could create false negatives, see
# https://www.robustperception.io/alerting-on-gauges-in-prometheus-2-0 for details. # https://www.robustperception.io/alerting-on-gauges-in-prometheus-2-0 for details.
max_over_time(prometheus_notifications_alertmanagers_discovered{job="prometheus-k8s",namespace="monitoring"}[5m]) < 1 max_over_time(prometheus_notifications_alertmanagers_discovered{job="prometheus",namespace="monitoring"}[5m]) < 1
for: 10m for: 10m
labels: labels:
severity: warning severity: warning
@ -78,7 +78,7 @@ spec:
runbook_url: https://runbooks.prometheus-operator.dev/runbooks/prometheus/prometheustsdbreloadsfailing runbook_url: https://runbooks.prometheus-operator.dev/runbooks/prometheus/prometheustsdbreloadsfailing
summary: Prometheus has issues reloading blocks from disk. summary: Prometheus has issues reloading blocks from disk.
expr: | expr: |
increase(prometheus_tsdb_reloads_failures_total{job="prometheus-k8s",namespace="monitoring"}[3h]) > 0 increase(prometheus_tsdb_reloads_failures_total{job="prometheus",namespace="monitoring"}[3h]) > 0
for: 4h for: 4h
labels: labels:
severity: warning severity: warning
@ -88,7 +88,7 @@ spec:
runbook_url: https://runbooks.prometheus-operator.dev/runbooks/prometheus/prometheustsdbcompactionsfailing runbook_url: https://runbooks.prometheus-operator.dev/runbooks/prometheus/prometheustsdbcompactionsfailing
summary: Prometheus has issues compacting blocks. summary: Prometheus has issues compacting blocks.
expr: | expr: |
increase(prometheus_tsdb_compactions_failed_total{job="prometheus-k8s",namespace="monitoring"}[3h]) > 0 increase(prometheus_tsdb_compactions_failed_total{job="prometheus",namespace="monitoring"}[3h]) > 0
for: 4h for: 4h
labels: labels:
severity: warning severity: warning
@ -99,12 +99,12 @@ spec:
summary: Prometheus is not ingesting samples. summary: Prometheus is not ingesting samples.
expr: | expr: |
( (
rate(prometheus_tsdb_head_samples_appended_total{job="prometheus-k8s",namespace="monitoring"}[5m]) <= 0 rate(prometheus_tsdb_head_samples_appended_total{job="prometheus",namespace="monitoring"}[5m]) <= 0
and and
( (
sum without(scrape_job) (prometheus_target_metadata_cache_entries{job="prometheus-k8s",namespace="monitoring"}) > 0 sum without(scrape_job) (prometheus_target_metadata_cache_entries{job="prometheus",namespace="monitoring"}) > 0
or or
sum without(rule_group) (prometheus_rule_group_rules{job="prometheus-k8s",namespace="monitoring"}) > 0 sum without(rule_group) (prometheus_rule_group_rules{job="prometheus",namespace="monitoring"}) > 0
) )
) )
for: 10m for: 10m
@ -116,7 +116,7 @@ spec:
runbook_url: https://runbooks.prometheus-operator.dev/runbooks/prometheus/prometheusduplicatetimestamps runbook_url: https://runbooks.prometheus-operator.dev/runbooks/prometheus/prometheusduplicatetimestamps
summary: Prometheus is dropping samples with duplicate timestamps. summary: Prometheus is dropping samples with duplicate timestamps.
expr: | expr: |
rate(prometheus_target_scrapes_sample_duplicate_timestamp_total{job="prometheus-k8s",namespace="monitoring"}[5m]) > 0 rate(prometheus_target_scrapes_sample_duplicate_timestamp_total{job="prometheus",namespace="monitoring"}[5m]) > 0
for: 10m for: 10m
labels: labels:
severity: warning severity: warning
@ -126,7 +126,7 @@ spec:
runbook_url: https://runbooks.prometheus-operator.dev/runbooks/prometheus/prometheusoutofordertimestamps runbook_url: https://runbooks.prometheus-operator.dev/runbooks/prometheus/prometheusoutofordertimestamps
summary: Prometheus drops samples with out-of-order timestamps. summary: Prometheus drops samples with out-of-order timestamps.
expr: | expr: |
rate(prometheus_target_scrapes_sample_out_of_order_total{job="prometheus-k8s",namespace="monitoring"}[5m]) > 0 rate(prometheus_target_scrapes_sample_out_of_order_total{job="prometheus",namespace="monitoring"}[5m]) > 0
for: 10m for: 10m
labels: labels:
severity: warning severity: warning
@ -137,12 +137,12 @@ spec:
summary: Prometheus fails to send samples to remote storage. summary: Prometheus fails to send samples to remote storage.
expr: | expr: |
( (
(rate(prometheus_remote_storage_failed_samples_total{job="prometheus-k8s",namespace="monitoring"}[5m]) or rate(prometheus_remote_storage_samples_failed_total{job="prometheus-k8s",namespace="monitoring"}[5m])) (rate(prometheus_remote_storage_failed_samples_total{job="prometheus",namespace="monitoring"}[5m]) or rate(prometheus_remote_storage_samples_failed_total{job="prometheus",namespace="monitoring"}[5m]))
/ /
( (
(rate(prometheus_remote_storage_failed_samples_total{job="prometheus-k8s",namespace="monitoring"}[5m]) or rate(prometheus_remote_storage_samples_failed_total{job="prometheus-k8s",namespace="monitoring"}[5m])) (rate(prometheus_remote_storage_failed_samples_total{job="prometheus",namespace="monitoring"}[5m]) or rate(prometheus_remote_storage_samples_failed_total{job="prometheus",namespace="monitoring"}[5m]))
+ +
(rate(prometheus_remote_storage_succeeded_samples_total{job="prometheus-k8s",namespace="monitoring"}[5m]) or rate(prometheus_remote_storage_samples_total{job="prometheus-k8s",namespace="monitoring"}[5m])) (rate(prometheus_remote_storage_succeeded_samples_total{job="job="prometheus",namespace="monitoring"}[5m]) or rate(prometheus_remote_storage_samples_total{job="prometheus",namespace="monitoring"}[5m]))
) )
) )
* 100 * 100
@ -159,9 +159,9 @@ spec:
# Without max_over_time, failed scrapes could create false negatives, see # Without max_over_time, failed scrapes could create false negatives, see
# https://www.robustperception.io/alerting-on-gauges-in-prometheus-2-0 for details. # https://www.robustperception.io/alerting-on-gauges-in-prometheus-2-0 for details.
( (
max_over_time(prometheus_remote_storage_highest_timestamp_in_seconds{job="prometheus-k8s",namespace="monitoring"}[5m]) max_over_time(prometheus_remote_storage_highest_timestamp_in_seconds{job="prometheus",namespace="monitoring"}[5m])
- ignoring(remote_name, url) group_right - ignoring(remote_name, url) group_right
max_over_time(prometheus_remote_storage_queue_highest_sent_timestamp_seconds{job="prometheus-k8s",namespace="monitoring"}[5m]) max_over_time(prometheus_remote_storage_queue_highest_sent_timestamp_seconds{job="prometheus",namespace="monitoring"}[5m])
) )
> 120 > 120
for: 15m for: 15m
@ -169,16 +169,16 @@ spec:
severity: critical severity: critical
- alert: PrometheusRemoteWriteDesiredShards - alert: PrometheusRemoteWriteDesiredShards
annotations: annotations:
description: Prometheus {{ `{{` }}$labels.namespace}}/{{ `{{` }}$labels.pod}} remote write desired shards calculation wants to run {{ `{{` }} $value }} shards for queue {{ `{{` }} $labels.remote_name}}:{{ `{{` }} $labels.url }}, which is more than the max of {{ `{{` }} printf `prometheus_remote_storage_shards_max{instance="%s",job="prometheus-k8s",namespace="monitoring"}` $labels.instance | query | first | value }}. description: Prometheus {{ `{{` }}$labels.namespace}}/{{ `{{` }}$labels.pod}} remote write desired shards calculation wants to run {{ `{{` }} $value }} shards for queue {{ `{{` }} $labels.remote_name}}:{{ `{{` }} $labels.url }}, which is more than the max of {{ `{{` }} printf `prometheus_remote_storage_shards_max{instance="%s",job="prometheus",namespace="monitoring"}` $labels.instance | query | first | value }}.
runbook_url: https://runbooks.prometheus-operator.dev/runbooks/prometheus/prometheusremotewritedesiredshards runbook_url: https://runbooks.prometheus-operator.dev/runbooks/prometheus/prometheusremotewritedesiredshards
summary: Prometheus remote write desired shards calculation wants to run more than configured max shards. summary: Prometheus remote write desired shards calculation wants to run more than configured max shards.
expr: | expr: |
# Without max_over_time, failed scrapes could create false negatives, see # Without max_over_time, failed scrapes could create false negatives, see
# https://www.robustperception.io/alerting-on-gauges-in-prometheus-2-0 for details. # https://www.robustperception.io/alerting-on-gauges-in-prometheus-2-0 for details.
( (
max_over_time(prometheus_remote_storage_shards_desired{job="prometheus-k8s",namespace="monitoring"}[5m]) max_over_time(prometheus_remote_storage_shards_desired{job="prometheus",namespace="monitoring"}[5m])
> >
max_over_time(prometheus_remote_storage_shards_max{job="prometheus-k8s",namespace="monitoring"}[5m]) max_over_time(prometheus_remote_storage_shards_max{job="prometheus",namespace="monitoring"}[5m])
) )
for: 15m for: 15m
labels: labels:
@ -189,7 +189,7 @@ spec:
runbook_url: https://runbooks.prometheus-operator.dev/runbooks/prometheus/prometheusrulefailures runbook_url: https://runbooks.prometheus-operator.dev/runbooks/prometheus/prometheusrulefailures
summary: Prometheus is failing rule evaluations. summary: Prometheus is failing rule evaluations.
expr: | expr: |
increase(prometheus_rule_evaluation_failures_total{job="prometheus-k8s",namespace="monitoring"}[5m]) > 0 increase(prometheus_rule_evaluation_failures_total{job="prometheus",namespace="monitoring"}[5m]) > 0
for: 15m for: 15m
labels: labels:
severity: critical severity: critical
@ -199,7 +199,7 @@ spec:
runbook_url: https://runbooks.prometheus-operator.dev/runbooks/prometheus/prometheusmissingruleevaluations runbook_url: https://runbooks.prometheus-operator.dev/runbooks/prometheus/prometheusmissingruleevaluations
summary: Prometheus is missing rule evaluations due to slow rule group evaluation. summary: Prometheus is missing rule evaluations due to slow rule group evaluation.
expr: | expr: |
increase(prometheus_rule_group_iterations_missed_total{job="prometheus-k8s",namespace="monitoring"}[5m]) > 0 increase(prometheus_rule_group_iterations_missed_total{job="prometheus",namespace="monitoring"}[5m]) > 0
for: 15m for: 15m
labels: labels:
severity: warning severity: warning
@ -209,7 +209,7 @@ spec:
runbook_url: https://runbooks.prometheus-operator.dev/runbooks/prometheus/prometheustargetlimithit runbook_url: https://runbooks.prometheus-operator.dev/runbooks/prometheus/prometheustargetlimithit
summary: Prometheus has dropped targets because some scrape configs have exceeded the targets limit. summary: Prometheus has dropped targets because some scrape configs have exceeded the targets limit.
expr: | expr: |
increase(prometheus_target_scrape_pool_exceeded_target_limit_total{job="prometheus-k8s",namespace="monitoring"}[5m]) > 0 increase(prometheus_target_scrape_pool_exceeded_target_limit_total{job="prometheus",namespace="monitoring"}[5m]) > 0
for: 15m for: 15m
labels: labels:
severity: warning severity: warning
@ -219,7 +219,7 @@ spec:
runbook_url: https://runbooks.prometheus-operator.dev/runbooks/prometheus/prometheuslabellimithit runbook_url: https://runbooks.prometheus-operator.dev/runbooks/prometheus/prometheuslabellimithit
summary: Prometheus has dropped targets because some scrape configs have exceeded the labels limit. summary: Prometheus has dropped targets because some scrape configs have exceeded the labels limit.
expr: | expr: |
increase(prometheus_target_scrape_pool_exceeded_label_limits_total{job="prometheus-k8s",namespace="monitoring"}[5m]) > 0 increase(prometheus_target_scrape_pool_exceeded_label_limits_total{job="prometheus",namespace="monitoring"}[5m]) > 0
for: 15m for: 15m
labels: labels:
severity: warning severity: warning
@ -229,7 +229,7 @@ spec:
runbook_url: https://runbooks.prometheus-operator.dev/runbooks/prometheus/prometheusscrapebodysizelimithit runbook_url: https://runbooks.prometheus-operator.dev/runbooks/prometheus/prometheusscrapebodysizelimithit
summary: Prometheus has dropped some targets that exceeded body size limit. summary: Prometheus has dropped some targets that exceeded body size limit.
expr: | expr: |
increase(prometheus_target_scrapes_exceeded_body_size_limit_total{job="prometheus-k8s",namespace="monitoring"}[5m]) > 0 increase(prometheus_target_scrapes_exceeded_body_size_limit_total{job="prometheus",namespace="monitoring"}[5m]) > 0
for: 15m for: 15m
labels: labels:
severity: warning severity: warning
@ -239,7 +239,7 @@ spec:
runbook_url: https://runbooks.prometheus-operator.dev/runbooks/prometheus/prometheusscrapesamplelimithit runbook_url: https://runbooks.prometheus-operator.dev/runbooks/prometheus/prometheusscrapesamplelimithit
summary: Prometheus has failed scrapes that have exceeded the configured sample limit. summary: Prometheus has failed scrapes that have exceeded the configured sample limit.
expr: | expr: |
increase(prometheus_target_scrapes_exceeded_sample_limit_total{job="prometheus-k8s",namespace="monitoring"}[5m]) > 0 increase(prometheus_target_scrapes_exceeded_sample_limit_total{job="prometheus",namespace="monitoring"}[5m]) > 0
for: 15m for: 15m
labels: labels:
severity: warning severity: warning
@ -249,7 +249,7 @@ spec:
runbook_url: https://runbooks.prometheus-operator.dev/runbooks/prometheus/prometheustargetsyncfailure runbook_url: https://runbooks.prometheus-operator.dev/runbooks/prometheus/prometheustargetsyncfailure
summary: Prometheus has failed to sync targets. summary: Prometheus has failed to sync targets.
expr: | expr: |
increase(prometheus_target_sync_failed_total{job="prometheus-k8s",namespace="monitoring"}[30m]) > 0 increase(prometheus_target_sync_failed_total{job="prometheus",namespace="monitoring"}[30m]) > 0
for: 5m for: 5m
labels: labels:
severity: critical severity: critical
@ -259,7 +259,7 @@ spec:
runbook_url: https://runbooks.prometheus-operator.dev/runbooks/prometheus/prometheushighqueryload runbook_url: https://runbooks.prometheus-operator.dev/runbooks/prometheus/prometheushighqueryload
summary: Prometheus is reaching its maximum capacity serving concurrent requests. summary: Prometheus is reaching its maximum capacity serving concurrent requests.
expr: | expr: |
avg_over_time(prometheus_engine_queries{job="prometheus-k8s",namespace="monitoring"}[5m]) / max_over_time(prometheus_engine_queries_concurrent_max{job="prometheus-k8s",namespace="monitoring"}[5m]) > 0.8 avg_over_time(prometheus_engine_queries{job="prometheus",namespace="monitoring"}[5m]) / max_over_time(prometheus_engine_queries_concurrent_max{job="prometheus",namespace="monitoring"}[5m]) > 0.8
for: 15m for: 15m
labels: labels:
severity: warning severity: warning
@ -270,9 +270,9 @@ spec:
summary: Prometheus encounters more than 3% errors sending alerts to any Alertmanager. summary: Prometheus encounters more than 3% errors sending alerts to any Alertmanager.
expr: | expr: |
min without (alertmanager) ( min without (alertmanager) (
rate(prometheus_notifications_errors_total{job="prometheus-k8s",namespace="monitoring",alertmanager!~``}[5m]) rate(prometheus_notifications_errors_total{job="prometheus",namespace="monitoring",alertmanager!~``}[5m])
/ /
rate(prometheus_notifications_sent_total{job="prometheus-k8s",namespace="monitoring",alertmanager!~``}[5m]) rate(prometheus_notifications_sent_total{job="prometheus",namespace="monitoring",alertmanager!~``}[5m])
) )
* 100 * 100
> 3 > 3

View File

@ -0,0 +1,58 @@
{{ if .Values.nfc_monitoring.thanos.sidecar.enabled }}
{{ if .Values.nfc_monitoring.thanos.sidecar.config }}
---
apiVersion: monitoring.coreos.com/v1
kind: PrometheusRule
metadata:
labels:
app.kubernetes.io/component: metrics
app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: thanos
app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }}
prometheus: {{ $.Release.Name }}
role: alert-rules
name: thanos-sidecar-rules
namespace: {{ .Values.nfc_monitoring.prometheus.namespace }}
spec:
groups:
- name: thanos-sidecar
rules:
- alert: ThanosSidecarBucketOperationsFailed
annotations:
description: Thanos Sidecar {{ `{{` }}$labels.instance}} bucket operations are failing
runbook_url: https://github.com/thanos-io/thanos/tree/main/mixin/runbook.md#alert-name-thanossidecarbucketoperationsfailed
summary: Thanos Sidecar bucket operations are failing
expr: |
sum by (job, instance) (rate(thanos_objstore_bucket_operation_failures_total{job=~".*thanos-sidecar.*"}[5m])) > 0
for: 5m
labels:
severity: critical
- alert: ThanosSidecarNoConnectionToStartedPrometheus
annotations:
description: Thanos Sidecar {{ `{{` }}$labels.instance}} is unhealthy.
runbook_url: https://github.com/thanos-io/thanos/tree/main/mixin/runbook.md#alert-name-thanossidecarnoconnectiontostartedprometheus
summary: Thanos Sidecar cannot access Prometheus, even though Prometheus seems
healthy and has reloaded WAL.
expr: |
thanos_sidecar_prometheus_up{job=~".*thanos-sidecar.*"} == 0
AND on (namespace, pod)
prometheus_tsdb_data_replay_duration_seconds != 0
for: 5m
labels:
severity: critical
- alert: ThanosSidecarIsDown
annotations:
description: ThanosSidecar has disappeared. Prometheus target for the component
cannot be discovered.
runbook_url: https://github.com/thanos-io/thanos/tree/main/mixin/runbook.md#alert-name-thanossidecarisdown
summary: Thanos component has disappeared.
expr: |
absent(up{job=~".*thanos-sidecar.*"} == 1)
for: 5m
labels:
severity: critical
{{ end }}
{{ end }}

View File

@ -2,19 +2,18 @@
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
items: items:
{{ range .Values.nfc_monitoring.prometheus.monitor_namespaces }} {{ range $index, $namespace := (lookup "v1" "Namespace" "" "").items }}
- apiVersion: rbac.authorization.k8s.io/v1 - apiVersion: rbac.authorization.k8s.io/v1
kind: Role kind: Role
metadata: metadata:
labels: labels:
app.kubernetes.io/component: prometheus {{ toYaml $.Values.nfc_monitoring.prometheus.labels | nindent 6 }}
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: prometheus
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
name: prometheus-k8s name: prometheus-{{ $.Release.Name }}
namespace: {{ . | quote }} namespace: {{ $namespace.metadata.name | quote }}
rules: rules:
- apiGroups: - apiGroups:
- "" - ""

View File

@ -3,9 +3,8 @@ apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding kind: RoleBinding
metadata: metadata:
labels: labels:
app.kubernetes.io/component: prometheus {{ toYaml $.Values.nfc_monitoring.prometheus.labels | nindent 4 }}
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: prometheus
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
@ -14,8 +13,8 @@ metadata:
roleRef: roleRef:
apiGroup: rbac.authorization.k8s.io apiGroup: rbac.authorization.k8s.io
kind: Role kind: Role
name: prometheus-k8s-config name: prometheus-{{ $.Release.Name }}-config
subjects: subjects:
- kind: ServiceAccount - kind: ServiceAccount
name: prometheus-k8s name: prometheus-{{ $.Release.Name }}
namespace: {{ .Values.nfc_monitoring.prometheus.namespace }} namespace: {{ .Values.nfc_monitoring.prometheus.namespace }}

View File

@ -1,26 +1,25 @@
--- ---
apiVersion: rbac.authorization.k8s.io/v1 apiVersion: rbac.authorization.k8s.io/v1
items: items:
{{ range .Values.nfc_monitoring.prometheus.monitor_namespaces }} {{ range $index, $namespace := (lookup "v1" "Namespace" "" "").items }}
- apiVersion: rbac.authorization.k8s.io/v1 - apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding kind: RoleBinding
metadata: metadata:
labels: labels:
app.kubernetes.io/component: prometheus {{ toYaml $.Values.nfc_monitoring.prometheus.labels | nindent 6 }}
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: prometheus
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
name: prometheus-k8s name: prometheus-{{ $.Release.Name }}
namespace: {{ . | quote }} namespace: {{ $namespace.metadata.name | quote }}
roleRef: roleRef:
apiGroup: rbac.authorization.k8s.io apiGroup: rbac.authorization.k8s.io
kind: Role kind: Role
name: prometheus-k8s name: prometheus-{{ $.Release.Name }}
subjects: subjects:
- kind: ServiceAccount - kind: ServiceAccount
name: prometheus-k8s name: prometheus-{{ $.Release.Name }}
namespace: {{ $.Values.nfc_monitoring.prometheus.namespace }} namespace: {{ $.Values.nfc_monitoring.prometheus.namespace }}
{{ end }} {{ end }}

View File

@ -3,8 +3,8 @@ apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding kind: RoleBinding
metadata: metadata:
labels: labels:
app.kubernetes.io/component: metrics-adapter {{ toYaml $.Values.nfc_monitoring.prometheus_adaptor.labels | nindent 4 }}
app.kubernetes.io/name: prometheus-adapter app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/version: 0.11.1 app.kubernetes.io/version: 0.11.1
name: resource-metrics-auth-reader name: resource-metrics-auth-reader
namespace: kube-system namespace: kube-system

View File

@ -3,13 +3,12 @@ apiVersion: rbac.authorization.k8s.io/v1
kind: Role kind: Role
metadata: metadata:
labels: labels:
app.kubernetes.io/component: prometheus {{ toYaml $.Values.nfc_monitoring.prometheus.labels | nindent 4 }}
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: prometheus
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
name: prometheus-k8s-config name: prometheus-{{ $.Release.Name }}-config
namespace: {{ .Values.nfc_monitoring.prometheus.namespace }} namespace: {{ .Values.nfc_monitoring.prometheus.namespace }}
rules: rules:
- apiGroups: - apiGroups:

View File

@ -3,9 +3,8 @@ apiVersion: v1
kind: Secret kind: Secret
metadata: metadata:
labels: labels:
app.kubernetes.io/component: alert-router {{ toYaml $.Values.nfc_monitoring.alert_manager.labels | nindent 4 }}
app.kubernetes.io/instance: main app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: alertmanager
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}

View File

@ -1,8 +1,15 @@
{{ if .Values.nfc_monitoring.thanos.sidecar.enabled }} {{ if .Values.nfc_monitoring.thanos.sidecar.enabled }}
{{ if .Values.nfc_monitoring.thanos.sidecar.config }}
--- ---
apiVersion: v1 apiVersion: v1
kind: Secret kind: Secret
metadata: metadata:
labels:
{{ toYaml $.Values.nfc_monitoring.prometheus.labels | nindent 4 }}
app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }}
name: thanos-sidecar-config name: thanos-sidecar-config
namespace: monitoring namespace: monitoring
type: Opaque type: Opaque
@ -11,3 +18,4 @@ stringData:
{{ toYaml .Values.nfc_monitoring.thanos.sidecar.config | nindent 4 }} {{ toYaml .Values.nfc_monitoring.thanos.sidecar.config | nindent 4 }}
{{ end }} {{ end }}
{{ end }}

View File

@ -5,7 +5,7 @@ apiVersion: v1
kind: Service kind: Service
metadata: metadata:
name: calico-metrics name: calico-metrics
namespace: kube-system namespace: calico-system
labels: labels:
k8s-app: calico-node k8s-app: calico-node
spec: spec:

View File

@ -1,22 +1,20 @@
{{ if .Values.nfc_monitoring.grafana.enabled -}}
--- ---
apiVersion: v1 apiVersion: v1
kind: Service kind: Service
metadata: metadata:
name: grafana name: grafana
namespace: {{ .Values.nfc_monitoring.grafana.namespace }} namespace: {{ .Values.nfc_monitoring.grafana.namespace }}
labels: labels:
app.kubernetes.io/component: graphing {{ toYaml $.Values.nfc_monitoring.grafana.labels | nindent 4 }}
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: grafana
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
spec: spec:
selector: selector:
app.kubernetes.io/component: graphing {{ toYaml $.Values.nfc_monitoring.grafana.labels | nindent 4 }}
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: grafana
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
#type: NodePort #type: NodePort
#type: LoadBalancer #type: LoadBalancer
@ -28,3 +26,5 @@ spec:
#nodePort: 3000 #nodePort: 3000
#type: LoadBalancer #type: LoadBalancer
sessionAffinity: ClientIP sessionAffinity: ClientIP
{{- end }}

View File

@ -5,17 +5,15 @@ metadata:
name: grafana-agent name: grafana-agent
namespace: monitoring namespace: monitoring
labels: labels:
app.kubernetes.io/instance: k8s {{ toYaml $.Values.nfc_monitoring.grafana_agent.labels | nindent 4 }}
app.kubernetes.io/component: exporter app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: grafana-agent
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
spec: spec:
selector: selector:
app.kubernetes.io/instance: k8s {{ toYaml $.Values.nfc_monitoring.grafana_agent.labels | nindent 4 }}
app.kubernetes.io/component: exporter app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: grafana-agent
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
ports: ports:
- name: grafana-metrics - name: grafana-metrics

View File

@ -3,13 +3,12 @@ apiVersion: v1
kind: Service kind: Service
metadata: metadata:
labels: labels:
app.kubernetes.io/component: alert-router {{ toYaml $.Values.nfc_monitoring.alert_manager.labels | nindent 4 }}
app.kubernetes.io/instance: main app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: alertmanager
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
name: alertmanager-main name: alertmanager-{{ $.Release.Name }}
namespace: {{ .Values.nfc_monitoring.alert_manager.namespace | quote }} namespace: {{ .Values.nfc_monitoring.alert_manager.namespace | quote }}
spec: spec:
ports: ports:
@ -21,7 +20,7 @@ spec:
targetPort: reloader-web targetPort: reloader-web
selector: selector:
app.kubernetes.io/component: alert-router app.kubernetes.io/component: alert-router
app.kubernetes.io/instance: main app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: alertmanager app.kubernetes.io/name: alertmanager
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
sessionAffinity: ClientIP sessionAffinity: ClientIP

View File

@ -1,3 +1,4 @@
{{ if .Values.nfc_monitoring.kube_monitor_proxy.enabled }}
--- ---
apiVersion: v1 apiVersion: v1
kind: Service kind: Service
@ -6,7 +7,7 @@ metadata:
namespace: monitoring namespace: monitoring
labels: labels:
app.kubernetes.io/component: proxy app.kubernetes.io/component: proxy
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: kube-monitor-proxy app.kubernetes.io/name: kube-monitor-proxy
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
@ -16,7 +17,7 @@ metadata:
spec: spec:
selector: selector:
app.kubernetes.io/component: proxy app.kubernetes.io/component: proxy
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: kube-monitor-proxy app.kubernetes.io/name: kube-monitor-proxy
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
@ -28,3 +29,5 @@ spec:
port: 10259 port: 10259
targetPort: kube-scheduler targetPort: kube-scheduler
sessionAffinity: ClientIP sessionAffinity: ClientIP
{{ end }}

View File

@ -1,10 +1,11 @@
{{ if .Values.nfc_monitoring.kube_state_metrics.enabled }}
--- ---
apiVersion: v1 apiVersion: v1
kind: Service kind: Service
metadata: metadata:
labels: labels:
app.kubernetes.io/component: exporter app.kubernetes.io/component: exporter
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: kube-state-metrics app.kubernetes.io/name: kube-state-metrics
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
@ -22,7 +23,8 @@ spec:
targetPort: https-self targetPort: https-self
selector: selector:
app.kubernetes.io/component: exporter app.kubernetes.io/component: exporter
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: kube-state-metrics app.kubernetes.io/name: kube-state-metrics
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
{{ end }}

View File

@ -3,9 +3,8 @@ apiVersion: v1
kind: Service kind: Service
metadata: metadata:
labels: labels:
app.kubernetes.io/component: metrics-adapter {{ toYaml $.Values.nfc_monitoring.prometheus_adaptor.labels | nindent 4 }}
app.kubernetes.io/instance: main app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: prometheus-adapter
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
@ -17,7 +16,6 @@ spec:
port: 443 port: 443
targetPort: 6443 targetPort: 6443
selector: selector:
app.kubernetes.io/component: metrics-adapter {{ toYaml $.Values.nfc_monitoring.prometheus_adaptor.labels | nindent 4 }}
app.kubernetes.io/instance: main app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: prometheus-adapter
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}

View File

@ -3,13 +3,12 @@ apiVersion: v1
kind: Service kind: Service
metadata: metadata:
labels: labels:
app.kubernetes.io/component: prometheus {{ toYaml $.Values.nfc_monitoring.prometheus.labels | nindent 4 }}
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: prometheus
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
name: prometheus-k8s name: prometheus-{{ $.Release.Name }}
namespace: {{ .Values.nfc_monitoring.prometheus.namespace }} namespace: {{ .Values.nfc_monitoring.prometheus.namespace }}
spec: spec:
ports: ports:
@ -20,9 +19,8 @@ spec:
port: 8080 port: 8080
targetPort: reloader-web targetPort: reloader-web
selector: selector:
app.kubernetes.io/component: prometheus {{ toYaml $.Values.nfc_monitoring.prometheus.labels | nindent 4 }}
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: prometheus
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
sessionAffinity: ClientIP sessionAffinity: ClientIP
@ -34,7 +32,7 @@ kind: Service
metadata: metadata:
labels: labels:
app.kubernetes.io/component: prometheus-sidecar app.kubernetes.io/component: prometheus-sidecar
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: thanos-sidecar app.kubernetes.io/name: thanos-sidecar
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
@ -51,9 +49,7 @@ spec:
port: 10902 port: 10902
targetPort: 10902 targetPort: 10902
selector: selector:
app.kubernetes.io/component: prometheus {{ toYaml $.Values.nfc_monitoring.prometheus.labels | nindent 4 }}
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: prometheus
app.kubernetes.io/part-of: {{ $.Chart.Name }}
{{ end }} {{ end }}

View File

@ -1,3 +1,4 @@
{{ if .Values.nfc_monitoring.grafana.enabled -}}
--- ---
apiVersion: v1 apiVersion: v1
automountServiceAccountToken: false automountServiceAccountToken: false
@ -6,9 +7,10 @@ metadata:
name: grafana name: grafana
namespace: {{ .Values.nfc_monitoring.grafana.namespace }} namespace: {{ .Values.nfc_monitoring.grafana.namespace }}
labels: labels:
app.kubernetes.io/component: graphing {{ toYaml $.Values.nfc_monitoring.grafana.labels | nindent 4 }}
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: grafana
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
{{- end }}

View File

@ -6,9 +6,8 @@ metadata:
name: grafana-agent name: grafana-agent
namespace: monitoring namespace: monitoring
labels: labels:
app.kubernetes.io/instance: k8s {{ toYaml $.Values.nfc_monitoring.grafana_agent.labels | nindent 4 }}
app.kubernetes.io/component: exporter app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: grafana-agent
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}

View File

@ -4,9 +4,8 @@ automountServiceAccountToken: false
kind: ServiceAccount kind: ServiceAccount
metadata: metadata:
labels: labels:
app.kubernetes.io/component: alert-router {{ toYaml $.Values.nfc_monitoring.alert_manager.labels | nindent 4 }}
app.kubernetes.io/instance: main app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: alertmanager
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}

View File

@ -1,3 +1,4 @@
{{ if .Values.nfc_monitoring.kube_monitor_proxy.enabled }}
--- ---
apiVersion: v1 apiVersion: v1
kind: ServiceAccount kind: ServiceAccount
@ -6,8 +7,10 @@ metadata:
namespace: monitoring namespace: monitoring
labels: labels:
app.kubernetes.io/component: proxy app.kubernetes.io/component: proxy
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: kube-monitor-proxy app.kubernetes.io/name: kube-monitor-proxy
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
{{ end }}

View File

@ -1,3 +1,4 @@
{{ if .Values.nfc_monitoring.kube_state_metrics.enabled }}
--- ---
apiVersion: v1 apiVersion: v1
automountServiceAccountToken: false automountServiceAccountToken: false
@ -5,10 +6,12 @@ kind: ServiceAccount
metadata: metadata:
labels: labels:
app.kubernetes.io/component: exporter app.kubernetes.io/component: exporter
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: kube-state-metrics app.kubernetes.io/name: kube-state-metrics
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
name: kube-state-metrics name: kube-state-metrics
namespace: monitoring namespace: monitoring
{{ end }}

View File

@ -4,9 +4,8 @@ automountServiceAccountToken: false
kind: ServiceAccount kind: ServiceAccount
metadata: metadata:
labels: labels:
app.kubernetes.io/component: metrics-adapter {{ toYaml $.Values.nfc_monitoring.prometheus_adaptor.labels | nindent 4 }}
app.kubernetes.io/instance: main app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: prometheus-adapter
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}

View File

@ -4,11 +4,10 @@ automountServiceAccountToken: true
kind: ServiceAccount kind: ServiceAccount
metadata: metadata:
labels: labels:
app.kubernetes.io/component: prometheus {{ toYaml $.Values.nfc_monitoring.prometheus.labels | nindent 4 }}
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: prometheus
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
name: prometheus-k8s name: prometheus-{{ $.Release.Name }}
namespace: {{ .Values.nfc_monitoring.prometheus.namespace }} namespace: {{ .Values.nfc_monitoring.prometheus.namespace }}

View File

@ -1,8 +1,10 @@
{{ if .Values.nfc_monitoring.prometheus.service_monitor.apiserver }}
--- ---
apiVersion: monitoring.coreos.com/v1 apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor kind: ServiceMonitor
metadata: metadata:
labels: labels:
app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: apiserver app.kubernetes.io/name: apiserver
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
@ -76,3 +78,5 @@ spec:
matchLabels: matchLabels:
component: apiserver component: apiserver
provider: kubernetes provider: kubernetes
{{ end }}

View File

@ -1,8 +1,10 @@
{{ if .Values.nfc_monitoring.prometheus.service_monitor.cadvisor }}
--- ---
apiVersion: monitoring.coreos.com/v1 apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor kind: ServiceMonitor
metadata: metadata:
labels: labels:
app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: cadvisor app.kubernetes.io/name: cadvisor
app.kubernetes.io/component: exporter app.kubernetes.io/component: exporter
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
@ -50,3 +52,5 @@ spec:
selector: selector:
matchLabels: matchLabels:
app.kubernetes.io/name: kubelet app.kubernetes.io/name: kubelet
{{ end }}

View File

@ -1,10 +1,12 @@
--- ---
{{- if eq .Values.nfc_monitoring.kubernetes.networking "calico" -}} {{- if eq .Values.nfc_monitoring.kubernetes.networking "calico" -}}
{{ if .Values.nfc_monitoring.prometheus.service_monitor.calico }}
apiVersion: monitoring.coreos.com/v1 apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor kind: ServiceMonitor
metadata: metadata:
labels: labels:
app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: calico app.kubernetes.io/name: calico
app.kubernetes.io/component: networking app.kubernetes.io/component: networking
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
@ -12,7 +14,7 @@ metadata:
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
k8s-app: calico-node k8s-app: calico-node
name: calico name: calico
namespace: kube-system namespace: calico-system
spec: spec:
endpoints: endpoints:
- bearerTokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token - bearerTokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token
@ -34,3 +36,4 @@ spec:
k8s-app: calico-node k8s-app: calico-node
{{- end -}} {{- end -}}
{{ end }}

View File

@ -1,8 +1,10 @@
{{ if .Values.nfc_monitoring.prometheus.service_monitor.coredns }}
--- ---
apiVersion: monitoring.coreos.com/v1 apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor kind: ServiceMonitor
metadata: metadata:
labels: labels:
app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: coredns app.kubernetes.io/name: coredns
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
@ -26,3 +28,5 @@ spec:
selector: selector:
matchLabels: matchLabels:
k8s-app: kube-dns k8s-app: kube-dns
{{ end }}

View File

@ -1,11 +1,11 @@
{{ if .Values.nfc_monitoring.grafana.enabled -}}
--- ---
apiVersion: monitoring.coreos.com/v1 apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor kind: ServiceMonitor
metadata: metadata:
labels: labels:
app.kubernetes.io/component: graphing {{ toYaml $.Values.nfc_monitoring.grafana.labels | nindent 4 }}
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: grafana
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
@ -31,7 +31,9 @@ spec:
jobLabel: app.kubernetes.io/name jobLabel: app.kubernetes.io/name
selector: selector:
matchLabels: matchLabels:
app.kubernetes.io/component: graphing {{ toYaml $.Values.nfc_monitoring.grafana.labels | nindent 6 }}
app.kubernetes.io/instance: k8s
app.kubernetes.io/name: grafana
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/instance: {{ $.Release.Name }}
{{- end }}

View File

@ -1,8 +1,10 @@
{{ if .Values.nfc_monitoring.prometheus.service_monitor.kubelet }}
--- ---
apiVersion: monitoring.coreos.com/v1 apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor kind: ServiceMonitor
metadata: metadata:
labels: labels:
app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: kubelet app.kubernetes.io/name: kubelet
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
@ -85,3 +87,6 @@ spec:
selector: selector:
matchLabels: matchLabels:
app.kubernetes.io/name: kubelet app.kubernetes.io/name: kubelet
app.kubernetes.io/instance: {{ $.Release.Name }}
{{ end }}

View File

@ -1,9 +1,11 @@
{{ if .Values.nfc_monitoring.grafana_agent.enabled }}
--- ---
apiVersion: monitoring.coreos.com/v1 apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor kind: ServiceMonitor
metadata: metadata:
labels: labels:
app.kubernetes.io/component: exporter app.kubernetes.io/component: exporter
app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: node app.kubernetes.io/name: node
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
@ -35,9 +37,46 @@ spec:
sourceLabels: sourceLabels:
- __meta_kubernetes_pod_node_name - __meta_kubernetes_pod_node_name
targetLabel: node targetLabel: node
metricRelabelings:
- action: drop
sourceLabels: [__name__]
regex: '(promtail_).*'
- bearerTokenFile: /var/run/secrets/kubernetes.io/serviceaccount/token
interval: 5s
honorLabels: true
path: /metrics
port: grafana-metrics
scheme: http
relabelings:
- action: replace
regex: (.*)
replacement: $1
sourceLabels:
- __meta_kubernetes_pod_node_name
targetLabel: instance
- targetLabel: "job"
replacement: "promtail"
- action: replace
regex: (.*)
replacement: $1
sourceLabels:
- __meta_kubernetes_pod_node_name
targetLabel: node
- action: replace
separator: /
sourceLabels:
- namespace
- job
targetLabel: job
metricRelabelings:
- action: keep
sourceLabels: [__name__]
regex: '(promtail_).*'
selector: selector:
matchLabels: matchLabels:
app.kubernetes.io/instance: k8s {{ toYaml $.Values.nfc_monitoring.grafana_agent.labels | nindent 6 }}
app.kubernetes.io/component: exporter app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: grafana-agent
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
{{ end }}

View File

@ -7,6 +7,7 @@ metadata:
labels: labels:
app.kubernetes.io/name: ceph app.kubernetes.io/name: ceph
app.kubernetes.io/component: storage app.kubernetes.io/component: storage
app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}

View File

@ -1,10 +1,12 @@
{{ if .Values.nfc_monitoring.prometheus.service_monitor.kube_controller_manager }}
{{ if .Values.nfc_monitoring.kube_monitor_proxy.enabled }}
--- ---
apiVersion: monitoring.coreos.com/v1 apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor kind: ServiceMonitor
metadata: metadata:
labels: labels:
app.kubernetes.io/component: proxy app.kubernetes.io/component: proxy
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: kube-controller-manager app.kubernetes.io/name: kube-controller-manager
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
@ -77,6 +79,9 @@ spec:
insecureSkipVerify: true insecureSkipVerify: true
selector: selector:
matchLabels: matchLabels:
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: kube-monitor-proxy app.kubernetes.io/name: kube-monitor-proxy
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
{{ end }}
{{ end }}

View File

@ -1,10 +1,12 @@
{{ if .Values.nfc_monitoring.prometheus.service_monitor.kube_scheduler }}
{{ if .Values.nfc_monitoring.kube_monitor_proxy.enabled }}
--- ---
apiVersion: monitoring.coreos.com/v1 apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor kind: ServiceMonitor
metadata: metadata:
labels: labels:
app.kubernetes.io/component: proxy app.kubernetes.io/component: proxy
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: kube-scheduler app.kubernetes.io/name: kube-scheduler
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
@ -31,6 +33,9 @@ spec:
insecureSkipVerify: true insecureSkipVerify: true
selector: selector:
matchLabels: matchLabels:
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: kube-monitor-proxy app.kubernetes.io/name: kube-monitor-proxy
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
{{ end }}
{{ end }}

View File

@ -1,10 +1,11 @@
{{ if .Values.nfc_monitoring.kube_state_metrics.enabled }}
--- ---
apiVersion: monitoring.coreos.com/v1 apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor kind: ServiceMonitor
metadata: metadata:
labels: labels:
app.kubernetes.io/component: exporter app.kubernetes.io/component: exporter
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: kube-state-metrics app.kubernetes.io/name: kube-state-metrics
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
@ -41,6 +42,8 @@ spec:
selector: selector:
matchLabels: matchLabels:
app.kubernetes.io/component: exporter app.kubernetes.io/component: exporter
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: kube-state-metrics app.kubernetes.io/name: kube-state-metrics
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
{{ end }}

View File

@ -1,9 +1,11 @@
{{ if .Values.nfc_monitoring.grafana_agent.enabled }}
--- ---
apiVersion: monitoring.coreos.com/v1 apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor kind: ServiceMonitor
metadata: metadata:
labels: labels:
app.kubernetes.io/component: exporter app.kubernetes.io/component: exporter
app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: node-exporter app.kubernetes.io/name: node-exporter
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
@ -38,7 +40,8 @@ spec:
insecureSkipVerify: true insecureSkipVerify: true
selector: selector:
matchLabels: matchLabels:
app.kubernetes.io/instance: k8s {{ toYaml $.Values.nfc_monitoring.grafana_agent.labels | nindent 6 }}
app.kubernetes.io/component: exporter app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: grafana-agent
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
{{ end }}

View File

@ -1,11 +1,11 @@
{{ if .Values.nfc_monitoring.prometheus_adaptor.enabled }}
--- ---
apiVersion: monitoring.coreos.com/v1 apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor kind: ServiceMonitor
metadata: metadata:
labels: labels:
app.kubernetes.io/component: metrics-adapter {{ toYaml $.Values.nfc_monitoring.prometheus_adaptor.labels | nindent 4 }}
app.kubernetes.io/instance: main app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: prometheus-adapter
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
@ -33,7 +33,8 @@ spec:
insecureSkipVerify: true insecureSkipVerify: true
selector: selector:
matchLabels: matchLabels:
app.kubernetes.io/component: metrics-adapter {{ toYaml $.Values.nfc_monitoring.prometheus_adaptor.labels | nindent 6 }}
app.kubernetes.io/instance: main app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: prometheus-adapter
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
{{ end }}

View File

@ -1,14 +1,15 @@
{{ if .Values.nfc_monitoring.prometheus.enabled }}
--- ---
apiVersion: monitoring.coreos.com/v1 apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor kind: ServiceMonitor
metadata: metadata:
labels: labels:
app.kubernetes.io/component: prometheus {{ toYaml $.Values.nfc_monitoring.prometheus.labels | nindent 4 }}
app.kubernetes.io/name: prometheus app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
name: prometheus-k8s name: prometheus-{{ $.Release.Name }}
namespace: {{ .Values.nfc_monitoring.prometheus.namespace }} namespace: {{ .Values.nfc_monitoring.prometheus.namespace }}
spec: spec:
endpoints: endpoints:
@ -21,23 +22,26 @@ spec:
sourceLabels: sourceLabels:
- __meta_kubernetes_pod_name - __meta_kubernetes_pod_name
targetLabel: instance targetLabel: instance
- targetLabel: "job"
replacement: "prometheus"
- interval: 30s - interval: 30s
port: reloader-web port: reloader-web
selector: selector:
matchLabels: matchLabels:
app.kubernetes.io/component: prometheus {{ toYaml $.Values.nfc_monitoring.prometheus.labels | nindent 6 }}
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: prometheus
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
{{ if .Values.nfc_monitoring.thanos.sidecar.enabled }} {{ if .Values.nfc_monitoring.thanos.sidecar.enabled }}
{{ if .Values.nfc_monitoring.thanos.sidecar.config }}
--- ---
apiVersion: monitoring.coreos.com/v1 apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor kind: ServiceMonitor
metadata: metadata:
labels: labels:
app.kubernetes.io/component: prometheus-sidecar app.kubernetes.io/component: prometheus-sidecar
app.kubernetes.io/instance: thanos-sidecar app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: thanos-sidecar app.kubernetes.io/name: thanos-sidecar
app.kubernetes.io/version: v0.30.2 app.kubernetes.io/version: v0.30.2
name: thanos-sidecar name: thanos-sidecar
@ -55,8 +59,10 @@ spec:
selector: selector:
matchLabels: matchLabels:
app.kubernetes.io/component: prometheus-sidecar app.kubernetes.io/component: prometheus-sidecar
app.kubernetes.io/instance: k8s app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: thanos-sidecar app.kubernetes.io/name: thanos-sidecar
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
{{ end }} {{ end }}
{{ end }}
{{ end }}

View File

@ -6,11 +6,12 @@ kind: PrometheusRule
metadata: metadata:
labels: labels:
app.kubernetes.io/component: storage app.kubernetes.io/component: storage
app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: ceph app.kubernetes.io/name: ceph
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
prometheus: k8s prometheus: {{ $.Release.Name }}
role: alert-rules role: alert-rules
name: ceph-rules name: ceph-rules
namespace: {{ .Values.nfc_monitoring.prometheus.namespace }} namespace: {{ .Values.nfc_monitoring.prometheus.namespace }}

View File

@ -1,11 +1,11 @@
{{ if .Values.nfc_monitoring.alert_manager.enabled -}}
--- ---
apiVersion: monitoring.coreos.com/v1 apiVersion: monitoring.coreos.com/v1
kind: ServiceMonitor kind: ServiceMonitor
metadata: metadata:
labels: labels:
app.kubernetes.io/component: alert-router {{ toYaml $.Values.nfc_monitoring.alert_manager.labels | nindent 4 }}
app.kubernetes.io/instance: main app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: alertmanager
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
app.kubernetes.io/managed-by: {{ $.Release.Service }} app.kubernetes.io/managed-by: {{ $.Release.Service }}
app.kubernetes.io/version: {{ $.Chart.Version }} app.kubernetes.io/version: {{ $.Chart.Version }}
@ -16,14 +16,30 @@ spec:
endpoints: endpoints:
- interval: 30s - interval: 30s
port: web port: web
relabelings:
- action: replace
regex: (.*)
replacement: $1
sourceLabels:
- __meta_kubernetes_pod_name
targetLabel: instance
- interval: 30s - interval: 30s
port: reloader-web port: reloader-web
relabelings:
- action: replace
regex: (.*)
replacement: $1
sourceLabels:
- __meta_kubernetes_pod_name
targetLabel: instance
namespaceSelector: namespaceSelector:
matchNames: matchNames:
- "{{ .Values.nfc_monitoring.alert_manager.namespace }}" - "{{ .Values.nfc_monitoring.alert_manager.namespace }}"
selector: selector:
matchLabels: matchLabels:
app.kubernetes.io/component: alert-router {{ toYaml $.Values.nfc_monitoring.alert_manager.labels | nindent 6 }}
app.kubernetes.io/instance: main app.kubernetes.io/instance: {{ $.Release.Name }}
app.kubernetes.io/name: alertmanager
app.kubernetes.io/part-of: {{ $.Chart.Name }} app.kubernetes.io/part-of: {{ $.Chart.Name }}
{{ end }}

View File

@ -12,25 +12,85 @@ nfc_monitoring:
alert_manager: alert_manager:
enabled: true
image: image:
name: quay.io/prometheus/alertmanager name: quay.io/prometheus/alertmanager
tag: 'v0.26.0' tag: 'v0.26.0'
# How many replicas to deploy
replicas: 1
ingress:
annotations:
cert-manager.io/cluster-issuer: "selfsigned-issuer"
nginx.ingress.kubernetes.io/ssl-redirect: "true"
enabled: false
hostname: alert-manager.local
labels:
app.kubernetes.io/component: alert-router
app.kubernetes.io/name: alertmanager
namespace: alerting namespace: alerting
grafana: grafana:
dashboards:
cert_manager: false
enabled: false
# Grafana Configuration
# Type: Dict
# See: https://grafana.com/docs/grafana/latest/setup-grafana/configure-grafana
config:
analytics:
enabled: 'false'
# database:
# type: mysql
# host: mariadb-galera.mariadb.svc:3306
# name: grafana
# user: root
# password: admin
log:
mode: "console"
auth:
disable_login_form: "false"
security:
admin_user: admin admin_user: admin
admin_password: admin admin_password: admin
image: image:
name: grafana/grafana name: grafana/grafana
tag: '10.1.2' # '10.0.5' tag: '10.3.1' # '10.0.5'
ingress:
annotations:
cert-manager.io/cluster-issuer: "selfsigned-issuer"
nginx.ingress.kubernetes.io/ssl-redirect: "true"
enabled: true
hostname: grafana.local
labels:
app.kubernetes.io/component: graphing
app.kubernetes.io/name: grafana
namespace: grafana namespace: grafana
replicas: 1 replicas: 1
# storage_accessModes: ReadWriteMany
affinity: affinity:
nodeAffinity: nodeAffinity:
preferredDuringSchedulingIgnoredDuringExecution: preferredDuringSchedulingIgnoredDuringExecution:
@ -93,23 +153,23 @@ nfc_monitoring:
# prometheusType: Mimir # prometheusType: Mimir
# editable: true # editable: true
- name: prometheus # - name: prometheus
type: prometheus # type: prometheus
access: proxy # access: proxy
url: "http://prometheus-k8s.{{ .Values.nfc_monitoring.prometheus.namespace }}.svc:9090" # url: "http://prometheus-k8s.{{ .Values.nfc_monitoring.prometheus.namespace }}.svc:9090"
isDefault: true # isDefault: true
jsonData: # jsonData:
manageAlerts: true # manageAlerts: true
orgId: 1 # orgId: 1
prometheusType: Prometheus # prometheusType: Prometheus
prometheusVersion: 2.42.0 # prometheusVersion: 2.42.0
editable: true # editable: true
- name: thanos - name: thanos
type: prometheus type: prometheus
access: proxy access: proxy
url: "http://thanos-query.metrics.svc:9090" url: "http://thanos-query.metrics.svc:9090"
isDefault: false isDefault: true
jsonData: jsonData:
manageAlerts: true manageAlerts: true
orgId: 1 orgId: 1
@ -119,9 +179,17 @@ nfc_monitoring:
grafana_agent: grafana_agent:
enabled: true
image: image:
name: grafana/agent name: grafana/agent
tag: 'v0.36.1' tag: 'v0.39.2'
labels:
app.kubernetes.io/component: exporter
app.kubernetes.io/name: grafana-agent
namespace: monitoring namespace: monitoring
@ -135,9 +203,11 @@ nfc_monitoring:
namespace: logging namespace: logging
# If no config is setup, logging will not be enabled.
config: {}
# service name and port are used for the connection to your loki instance # service name and port are used for the connection to your loki instance
service_name: loki-gateway # service_name: loki-gateway
service_port: 80 # service_port: 80
ServiceMonitor: ServiceMonitor:
selector: selector:
@ -147,10 +217,12 @@ nfc_monitoring:
kube_monitor_proxy: kube_monitor_proxy:
enabled: false
namespace: monitoring namespace: monitoring
kube_rbac_proxy: kube_rbac_proxy:
# This image is used as part of kube-monitor-proxy. # This image is used as part of kube-monitor-proxy.
image: image:
name: quay.io/brancz/kube-rbac-proxy name: quay.io/brancz/kube-rbac-proxy
@ -158,6 +230,8 @@ nfc_monitoring:
kube_state_metrics: kube_state_metrics:
enabled: false
image: image:
name: registry.k8s.io/kube-state-metrics/kube-state-metrics name: registry.k8s.io/kube-state-metrics/kube-state-metrics
tag: 'v2.8.1' tag: 'v2.8.1'
@ -168,7 +242,43 @@ nfc_monitoring:
image: image:
name: prom/prometheus name: prom/prometheus
tag: 'v2.47.0' tag: 'v2.49.0'
# How many replicas to deploy
replicas: 1
# alertmanagers:
# - name:
# Configure prometheus to write metrics to remote host
# below example config uses a secret named "prometheus-remote-write" with two keys username and password.
# Documentation: https://prometheus-operator.dev/docs/operator/api/#monitoring.coreos.com/v1.RemoteWriteSpec
remotewrite: {}
# url:
# name:
# remoteTimeout: 30
# writeRelabelConfigs:
# basicAuth:
# username:
# name: prometheus-remote-write
# key: username
# password:
# name: prometheus-remote-write
# key: password
ingress:
annotations:
cert-manager.io/cluster-issuer: "selfsigned-issuer"
nginx.ingress.kubernetes.io/ssl-redirect: "true"
enabled: true
hostname: prometheus.local
# These labels are appended to all Prometheus items and are also the selector labels
labels:
app.kubernetes.io/component: prometheus
app.kubernetes.io/name: prometheus
namespace: monitoring namespace: monitoring
@ -197,28 +307,11 @@ nfc_monitoring:
topologyKey: kubernetes.io/hostname topologyKey: kubernetes.io/hostname
weight: 10 weight: 10
# List of namespaces that prometheus is to monitor
# used to create Roles and RoleBindings
# type: list
monitor_namespaces:
- alerting
- default
# - ceph
- grafana
- monitoring
# - kube-dashboard
# - kube-metrics
- kube-policy
- kube-system
- logging
# - mariadb
# - olm
# - operators
# Deploy a generate policy for kyverno to create Role and RoleBindings # Deploy a generate policy for kyverno to create Role and RoleBindings
# for the prometheus service account so it can monitor # for the prometheus service account so it can monitor
# new/existing namespaces # new/existing namespaces
kyverno_role_policy: true kyverno_role_policy: false
storage: storage:
volumeClaimTemplate: volumeClaimTemplate:
@ -232,19 +325,40 @@ nfc_monitoring:
# Additional settings for Prometheus. # Additional settings for Prometheus.
# See: https://prometheus-operator.dev/docs/operator/api/#monitoring.coreos.com/v1.PrometheusSpec # See: https://prometheus-operator.dev/docs/operator/api/#monitoring.coreos.com/v1.PrometheusSpec
# Type: dict # Type: dict
additional: {} additional:
# Don't declare remoteWrite Here, as it's don at path .prometheus.remote_write
# remoteWrite: # remoteWrite:
# - name: mimir
# url: http://mimir-gateway.metrics.svc.cluster.local/api/v1/push retention: 24h
retentionSize: 2GB
ruleSelector:
matchLabels:
role: alert-rules
service_monitor:
apiserver: false
cadvisor: false
calico: false
ceph: false
coredns: false
kube_controller_manager: false
kubelet: false
kube_scheduler: false
prometheus_adaptor: prometheus_adaptor:
enalbed: false
image: image:
name: registry.k8s.io/prometheus-adapter/prometheus-adapter name: registry.k8s.io/prometheus-adapter/prometheus-adapter
tag: 'v0.11.1' tag: 'v0.11.1'
labels:
app.kubernetes.io/component: metrics-adapter
app.kubernetes.io/name: prometheus-adapter
namespace: monitoring namespace: monitoring
affinity: affinity:
@ -284,20 +398,22 @@ nfc_monitoring:
enabled: true enabled: true
config: # Config must be specified for the sidecar to deploy
type: S3 config: {}
config: # type: S3
bucket: "thanos-metrics" # config:
endpoint: "rook-ceph-rgw-earth.ceph.svc:80" # bucket: "thanos-metrics"
access_key: "7J5NM2MNCDB4T4Y9OKJ5" # endpoint: "rook-ceph-rgw-earth.ceph.svc:80"
secret_key: "t9r69RzZdWEBL3NCKiUIpDk6j5625xc6HucusiGG" # access_key: "7J5NM2MNCDB4T4Y9OKJ5"
# secret_key: "t9r69RzZdWEBL3NCKiUIpDk6j5625xc6HucusiGG"
# insecure: true
additions: additions:
ceph: ceph:
enabled: true enabled: false
namespace: ceph namespace: ceph
@ -312,7 +428,7 @@ nfc_monitoring:
# Add sidecar to grafana pod to load dashboards from configMap # Add sidecar to grafana pod to load dashboards from configMap
dashboard_sidecar: dashboard_sidecar:
enabled: true enabled: false
image: image:
name: ghcr.io/kiwigrid/k8s-sidecar name: ghcr.io/kiwigrid/k8s-sidecar
@ -322,6 +438,11 @@ nfc_monitoring:
label_value: "1" label_value: "1"
network_policy:
enabled: false
loki_instance: loki_instance:
image: image:
name: grafana/loki name: grafana/loki