Grafana 连接 Mongo 数据源
Grafana 连接 Mongo 数据源
说明
默认Grafana 连接Mongo 数据源插件为企业版,需要付费。
通过以下方式可以绕过企业版,使用第三方插件连接Mongo
流程
1. Grafana 插件目录下载第三方插件
2. Grafana 免签第三方插件
3. 将第三方插件打包为镜像
4. 将镜像使用deployment启动,制作代理服务
5. Grafana 中使用mongo 数据源,连接代理url连接至mongo
一、第三方插件下载
- 下载第三方插件,RENAME
bash-5.1$ cd /var/lib/grafana/plugins/
bash-5.1$ wget https://github.com/JamesOsgood/mongodb-grafana/archive/refs/heads/master.zip
bash-5.1$ unzip mongodb-grafana-master.zip && mv mongodb-grafana-master grafana-mongodb-datasource
二、Grafana 免签第三方插件
- Grafana Deployment 增加变量
- 为什么开启免签:Grafana不信任第三方插件
spec:
containers:
- env:
- name: GF_PLUGINS_ALLOW_LOADING_UNSIGNED_PLUGINS
value: grafana-mongodb-datasource
三、第三方插件打包为镜像
- 下载第三方插件至本地
root@management:/b# wget https://github.com/JamesOsgood/mongodb-grafana/archive/refs/heads/master.zip
root@management:/b# unzip mongodb-grafana-master.zip
- 制作Dockerfile
root@management:/b# cat Dockerfile
FROM node:14
COPY mongodb-grafana-master /app
WORKDIR /app
RUN npm install
ENTRYPOINT ["npm","run","server"]
- BUILD
docker build -t ppio-harbor-registry.tencentcloudcr.com/developer/grafana-mongodb-plugin:v1 .
四、镜像使用Deployment /SVC启动
- Deployment
root@management:/opt/k8s-dev-tieta/grafana# cat grafana-mongodb-plugin-proxy-deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: grafana-mongo-plugin
namespace: monitoring
spec:
replicas: 1
selector:
matchLabels:
app.kubernetes.io/component: grafana-mongo-plugin
app.kubernetes.io/name: grafana-mongo-plugin
template:
metadata:
labels:
app.kubernetes.io/component: grafana-mongo-plugin
app.kubernetes.io/name: grafana-mongo-plugin
spec:
containers:
- image: ppio-harbor-registry.tencentcloudcr.com/developer/grafana-mongodb-plugin:v1
name: grafana-mongo-plugin
ports:
- containerPort: 3333
name: http
resources:
limits:
cpu: 1000m
memory: 2000Mi
requests:
cpu: 50m
memory: 100Mi
- Service
root@management:/opt/k8s-dev-tieta/grafana# cat grafana-mongodb-plugin-proxy-service.yaml
apiVersion: v1
kind: Service
metadata:
labels:
app.kubernetes.io/component: grafana-mongo-plugin
app.kubernetes.io/name: grafana-mongo-plugin
name: grafana-mongo-plugin
namespace: monitoring
spec:
ports:
- name: http
port: 3333
targetPort: 3333
selector:
app.kubernetes.io/component: grafana-mongo-plugin
app.kubernetes.io/name: grafana-mongo-plugin
五、Grafana 连接


浙公网安备 33010602011771号