配置使用Gitlab账号认证登录Grafana

【原文链接】配置使用Gitlab账号认证登录Grafana

文章目录

  • 一、Gitlab配置
  • 二、配置Grafana

一、Gitlab配置

(1)使用admin账号登录gitlab,并按照如下步骤打开【应用】,点击【创建应用】
配置使用Gitlab账号认证登录Grafana_第1张图片

(2)设置应用的名字,这里自定义即可,然后设置回调url,这里需要使用grafana的url后加 /login/gitlab,比如 http://192.168.16.40:30200/login/gitlab ,同样如果使用域名,则使用grafana的域名后加 /login/gitlab,然后按照如下图所示勾选。
配置使用Gitlab账号认证登录Grafana_第2张图片

(3)此时将应用ID和密钥复制一下保存下来,在后面的grafana的配置文件中使用
配置使用Gitlab账号认证登录Grafana_第3张图片

二、配置Grafana

(1)查询grafana的pod的id

[root@master ~]# kubectl get pod -n logging
NAME                       READY   STATUS    RESTARTS   AGE
grafana-6d69c56644-dtgbt   1/1     Running   0          15h
loki-0                     1/1     Running   0          43h
loki-promtail-8vjd6        1/1     Running   0          39h
loki-promtail-gmr5f        1/1     Running   0          39h
loki-promtail-svwtn        1/1     Running   0          39h
loki-promtail-tnvr9        1/1     Running   0          39h
[root@master ~]#

(2)通过如下命令可以查看默认的grafana的配置文件内容

kubectl exec -it grafana-6d69c56644-dtgbt cat /etc/grafana/grafana.ini -n logging

然后从中找到关于配置gitlab账号认证登录的配置,如下:

[auth.gitlab]
;enabled = false
;allow_sign_up = true
;client_id = some_id
;client_secret = some_secret
;scopes = api
;auth_url = https://gitlab.com/oauth/authorize
;token_url = https://gitlab.com/oauth/token
;api_url = https://gitlab.com/api/v4
;allowed_domains =
;allowed_groups =

(3)然后将enabled的参数设置为true,client_id和client_secret即为步骤一保存下来的应用id和密钥,auth_url、token_url和api_url前面部分替换为gitlab的域名,比如这里假设gitlab访问地址为:https://xxxxxx.cn

[auth.gitlab]
enabled = true
allow_sign_up = true
client_id = ab2fd22480f6b15e11xxxxxxxxxx1d709f104bfcbec97837
client_secret = 53efd224e149ef94a5a5xxxxxxxxxxxxx98a7fd321f77768340
scopes = api
auth_url = https://xxxxxx.cn/oauth/authorize
token_url = https://xxxxxx.cn/oauth/token
api_url = https://xxxxxx.cn/api/v4
allowed_domains =
allowed_groups =

(4)然后给grafana配置通过configmap的方式增加配置,在grafana目录下创建grafana-configmap.yaml文件,内容如下,这里注意需要增加server的配置,其中server下的root_url的值配置为grafana的在浏览器中访问的地址,比如https://yyyyy.cn/ ,则配置如下:

apiVersion: v1
kind: ConfigMap
metadata:
  name: grafana-config
  namespace: logging
  labels:
    app: grafana
data:
  grafana.ini: |
    [auth.gitlab]
    enabled = true
    allow_sign_up = true
    client_id = ab2fd22480f6b15e11xxxxxxxxxx1d709f104bfcbec97837
    client_secret = 53efd224e149ef94a5a5xxxxxxxxxxxxx98a7fd321f77768340
    scopes = api
    auth_url = https://xxxxxx.cn/oauth/authorize
    token_url = https://xxxxxx.cn/oauth/token
    api_url = https://xxxxxx.cn/api/v4
    allowed_domains =
    allowed_groups =
	[server]
    root_url = https://yyyyy.cn/

(5)然后修改 grafana-deploy.yaml 文件,对创建的configmap进行挂载,如下
配置使用Gitlab账号认证登录Grafana_第4张图片

(6)然后进入grafana目录,使用如下命令更新grafana

kubectl apply -f .

(6)此时刷新grafana的登录界面,可以看到已经出现通过gitlab账号登录访问的方式了,然后点击即可通过gitlab的账号进行登录了
配置使用Gitlab账号认证登录Grafana_第5张图片

你可能感兴趣的:(Grafana,grafana,gitlab,k8s,自动化运维)