十四章 九析带你轻松完爆 helm3 grafana

本系列文章:node


第一章:九析带你轻松完爆 helm3 安装nginx

第二章:九析带你轻松完爆 helm3 公共仓库git

第三章:九析带你轻松完爆 helm3 私有仓库api

第四章:九析带你轻松完爆 helm3 chart浏览器

第五章:九析带你轻松完爆 helm3 release服务器

第六章:九析带你轻松完爆 helm3 gitlab网络

第七章:九析带你轻松完爆 helm3 nginx-ingressapp

第八章:九析带你轻松完爆 helm3 gitlab nfside

第九章:九析带你轻松完爆 helm3 nexusgitlab

第十章:九析带你轻松完爆 helm3 heapster

第十一章:九析带你轻松完爆 helm3 kubernetes-dashboard

第十二章:九析带你轻松完爆 helm3 harbor

第十三章:九析带你轻松完爆 helm3 prometheus

第十四章:九析带你轻松完爆 helm3 grafana

目录

1 前言

2 下载 grafana

3 建立 grafana 命名空间

4 安装 grafana

    4.1 修改配置

    4.2 安装 prometheus

        4.2.1 修改 deployment apiVersion

        4.2.2 添加 deployment selector

        4.2.3 修改 ingress apiVersion

    4.3 验证 grafana

5 安装 nfs

6 建立 pv

7 建立 secret

    7.1 建立自签名证书

    7.2 根据证书生成 secret

8 验证 grafana


1 前言

        本文采用 helm3 v3.0.0;k8s v1.16.3。helm 仓库配置以下:

clipboard1.png

2 下载 grafana

        helm 搜索 grafana chart:

helm search repo grafana

        helm 下载解压 grafana chart:

helm fetch stable/grafana

tar -zxvf grafana-0.7.0.tgz

3 建立 grafana 命名空间

kubectl create ns grafana

4 安装 grafana

4.1 修改配置

        编辑 values.yaml,重点修改 image 和 ingress 选项。其中 grafana image 版本要改成:5.0.4。此外由于本文使用了 ingress,因此你在使用此选项前确保已经正确安装了 nginx-ingress。能够参阅本人《helm 3 nginx-ingress》查看具体安装细节,并保持安装网络配置是 hostNetwork。

clipboard2.png

4.2 安装 prometheus

        第一个 grafana 是 helm release 名,第二个是命名空间,第三个是 grafana 解压目录:

helm install grafana -n grafana grafana

4.2.1 修改 deployment apiVersion

        若是在安装过程当中有以下错误:

Error: unable to build kubernetes objects from release manifest: unable to recognize "": no matches for kind "Deployment" in version "extensions/v1beta1"

        执行以下语句轻松完爆:

grep -irl 'extensions/v1beta1' grafana/ | xargs sed -i 's#extensions/v1beta1#apps/v1#g'

4.2.2 添加 deployment selector

        再次安装若是报以下错误:

Error: unable to build kubernetes objects from release manifest: error validating "": error validating data: ValidationError(Deployment.spec): missing required field "selector" in io.k8s.api.apps.v1.DeploymentSpec

        编辑 templates/deployment.yaml 文件,添加以下内容:clipboard3.png

4.2.3 修改 ingress apiVersion

        再次安装若是报以下错误:

Error: unable to build kubernetes objects from release manifest: unable to recognize "": no matches for kind "Ingress" in version "apps/v1"

        编辑 templates/ingress.yaml 文件,将 apps/v1 修改成 extensions/v1beta1:

clipboard4.png

4.3 验证 grafana

        下图证实安装成功:clipboard5.png

        使用 helm search 查看:

helm list -n grafana

clipboard6.png

        安装成功,并不表明运行成功,还须要进一步的配置。

5 安装 nfs

        如何安装 nfs 服务器,请参考本人《轻松完爆 nfs 安装》,不用担忧,简单到爆,让你分分钟轻松完爆。

mkdir -p /data/nfs/grafana/1g

chmod 777 -R /data/nfs/grafana

echo '/data/nfs/grafana    10.110.0.0/16(rw,sync,no_root_squash)' >> /etc/exports

systemctl restart nfs

6 建立 pv

        安装完 nfs 后,查看 grafana pvc:

kubectl get pvc -n grafana

clipboard7.png

        发现 pvc 处于 pending 状态,缘由在于并无可用的 pv 能够使用,须要手动建立 pv:

        建立 pv-grafana-1g.yaml 文件:

apiVersion: v1

kind: PersistentVolume

metadata:

    name: grafana-pv

spec:

    capacity:

    storage: 1Gi

    volumeMode: Filesystem

    accessModes:

    -  ReadWriteOnce

    persistentVolumeReclaimPolicy: Retain

    nfs:

        server: 10.110.101.106

        path: /data/nfs/grafana/1g

        执行以下语句建立 pv:

kubectl apply -f pv-grafana-1g.yaml

        查看 pvc 状态(须要等几秒),发现 pvc 处于绑定状态。

clipboard8.png

7 建立 secret

7.1 建立自签名证书

openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout ./tls.key -out ./tls.crt -subj "/CN=jiuxi.grafana.org"

7.2 根据证书生成 secret

kubectl -n grafana create secret tls grafana-server-tls --key ./tls.key --cert ./tls.crt

8 验证 grafana

        打开浏览器,访问 https://jiuxi.grafana.org(须要修改 /etc/hosts 文件,添加域名解析记录,注意 IP 是 nginx-ingress pod 所在宿主机 IP,切记)。

clipboard9.png

        输入用户名 admin / hellojiuxi,登陆:clipboard10.png

        自此,轻松完爆 helm3 安装 grafana。

相关文章
相关标签/搜索