本文作者:丁辉
Helm部署Nightingale
介绍
Nightingale 是一个开源的监控工具,主要用于监控和分析电子病历系统(EMR)中的数据。
开始部署
克隆 Helm 仓库
1
git clone https://github.com/flashcatcloud/n9e-helm.git
编写 values.yaml
1
vi n9e-values.yaml
内容如下
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25expose:
type: clusterIP # 使用 clusterIP
externalURL: https://填写域名 # 改为自己的外部服务访问地址
# 指定存储卷, 不指定则需要集群内存在默认的存储卷
persistence:
enabled: true
persistentVolumeClaim:
database:
storageClass: ""
redis:
storageClass: ""
prometheus:
storageClass: ""
categraf:
internal:
docker_socket: unix:///var/run/docker.sock # 如果您的kubernetes运行时是容器或其他,则清空此变量。
n9e:
internal:
image:
repository: flashcatcloud/nightingale
tag: latest # 使用最新版镜像部署
1
helm install nightingale ./n9e-helm -n monitor -f n9e-values.yaml --create-namespace
创建 Nginx 证书 secret
cert为.pem和.crt文件都可以
1
kubectl create secret tls n9e-tls --key nginx.key --cert nginx.pem -n monitor
编写 ingress 文件
1
vi n9e-ingress.yaml
内容如下
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: n9e-ingress
namespace: monitor
spec:
ingressClassName: nginx
rules:
- host: # 域名
http:
paths:
- pathType: Prefix
backend:
service:
name: nightingale-center
port:
number: 80
path: /
tls:
- hosts:
- # 域名
secretName: n9e-tls部署 ingress
1
kubectl apply -f n9e-ingress.yaml
访问验证
- 访问地址:https://hello.n9e.info
- 账户密码:root/root.2020
卸载
删除 ingress
1
kubectl delete -f n9e-ingress.yaml
卸载 nightingale
1
helm uninstall nightingale -n monitor
删除 secret
1
kubectl delete secret n9e-tls -n monitor
删除命名空间
1
kubectl delete namespace monitor
开始使用
添加自带的 prometheus 数据源
登录系统后点击 > 系统配置 > 数据源 > 添加
数据源名称
1
nightingale-prometheus
URL
1
http://nightingale-prometheus:9090
如何配置外部数据库
使用外部数据库
仅为示例
更改 values.yaml 内 database 配置
1 | vi n9e-values.yaml |
内容如下
1 | database: |
配置外部 Reids 启动
指定 Reids 运行模式为独立模式或哨兵模式
仅为示例
更改 values.yaml 内 redis 配置
1 | vi n9e-values.yaml |
内容如下
1 | redis: |
问题记录
部署后 prometheus 无法抓取 n9e 监控目标
原因是因为:
- prometheus 配置 svc 地址错误
- helm 模版格式错误
解决方法:
I'm so cute. Please give me money.
- 本文链接: https://blog.offends.cn/Kubernetes/Helm/Helm部署Nightingale.html
- 版权声明: 本博客所有文章除特别声明外,均默认采用 CC BY-NC-SA 4.0 许可协议。