grafana部署高可用架构

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
应用型负载均衡 ALB,每月750个小时 15LCU
简介: 多服务器搭建grafana服务。

为了获得高可用性的服务,需要对单台部署grafana的服务器进行扩充。

grafana_high_availability
图片引自grafana文档

这个过程中需要做两件事:

  • 配置一个公共数据库,使所有的grafana服务器可以将配置写入公共数据库中而不是存在本地;
  • 选用一个会话存储方案,这一步可以通过让负载均衡启用会话保持功能解决

数据库配置

grafana为数据库提供多种可选方案,包括:mysql,postgresql,sqlite3(default)。
配置文件为:

vi /etc/grafana/grafana.ini

配置项为database部分:

# You can configure the database connection by specifying type, host, name, user and password
# as separate properties or as on string using the url properties.

# Either "mysql", "postgres" or "sqlite3", it's your choice
type = mysql                 ;数据库类型
host = www.url.com           ;数据库域名
name = grafana_configure     ;数据库名称
user = admin                 ;数据库用户名
# If the password contains # or ; you have to wrap it with triple quotes. Ex """#password;"""
password = admin_password    ;数据库用户密码

# Use either URL or the previous fields to configure the database
# Example: mysql://user:secret@host:port/database
;url =

# For "postgres" only, either "disable", "require" or "verify-full"
;ssl_mode = disable

"/etc/grafana/grafana.ini" 487L, 15112C written
AI 代码解读

仅需要为grafana开辟一个数据库即可,数据表和字段将在用户新建一个dashboard后自动写入。

会话策略

grafana支持将回话保存在磁盘/数据库中,这两种保存方法对应着两种策略:会话保持和无状态会话。

  • 会话保持
    配合负载均衡,将同一用户的请求转发到相同的服务器上。这样工作量最小,但是也会出现某台服务器负载较其他服务器更高的情况。
  • 无状态回话
    grafana将用户的会话保存在数据库中,这样同一用户的会话也将会被分发到各个服务器中处理,这种方式需要在数据库中提前预设一张数据表,在grafana.ini中的session部分有关于此项的配置信息。

方案步骤

  • 新建一个数据库,为grafana新建可操作用户
  • 部署N台grafana服务器,修改各服务器的grafana.ini文件,写入数据库相关配置信息,重启grafana-server。
  • 将配置好的grafana服务器挂载到负载均衡中,开启会话保持
  • 访问负载均衡的IP,获得高可用的grafana服务
相关实践学习
通过可观测可视化Grafana版进行数据可视化展示与分析
使用可观测可视化Grafana版进行数据可视化展示与分析。
xcola
+关注
目录
打赏
0
0
0
0
1
分享
相关文章
鸿蒙OS架构设计探秘:从分层设计到多端部署
本文深入探讨了鸿蒙OS的架构设计,从独特的“1+8+N”分层架构到模块化设计,再到智慧分发和多端部署能力。分层架构让系统更灵活,模块化设计通过Ability机制实现跨设备一致性,智慧分发优化资源调度,多端部署提升开发效率。作者结合实际代码示例,分享了开发中的实践经验,并指出生态建设是未来的关键挑战。作为国产操作系统的代表,鸿蒙的发展值得每一位开发者关注与支持。
RocketMQ原理—5.高可用+高并发+高性能架构
本文主要从高可用架构、高并发架构、高性能架构三个方面来介绍RocketMQ的原理。
118 21
RocketMQ原理—5.高可用+高并发+高性能架构
Mysql高可用架构方案
本文阐述了Mysql高可用架构方案,介绍了 主从模式,MHA模式,MMM模式,MGR模式 方案的实现方式,没有哪个方案是完美的,开发人员在选择何种方案应用到项目中也没有标准答案,合适的才是最好的。
489 3
Mysql高可用架构方案
大数据-80 Spark 简要概述 系统架构 部署模式 与Hadoop MapReduce对比
大数据-80 Spark 简要概述 系统架构 部署模式 与Hadoop MapReduce对比
142 2
微服务架构下的Web服务器部署
【8月更文第28天】随着互联网应用的不断发展,传统的单体应用架构逐渐显露出其局限性,特别是在可扩展性和维护性方面。为了解决这些问题,微服务架构应运而生。微服务架构通过将应用程序分解成一系列小型、独立的服务来提高系统的灵活性和可维护性。本文将探讨如何在微服务架构中有效部署和管理Web服务器实例,并提供一些实际的代码示例。
331 0
PolarDB 高可用架构设计与实践
【8月更文第27天】 在现代互联网应用中,数据库作为核心的数据存储层,其稳定性和可靠性尤为重要。阿里云的 PolarDB 作为一款云原生的关系型数据库服务,提供了高可用、高性能和自动化的特性,适用于各种规模的应用。本文将详细介绍 PolarDB 的高可用架构设计,并探讨其实现数据安全性和业务连续性的关键技术。
252 0
构建全天候自动化智能导购助手:从部署者的视角审视Multi-Agent架构解决方案
在构建基于多代理系统(Multi-Agent System, MAS)的智能导购助手过程中,作为部署者,我体验到了从初步接触到深入理解再到实际应用的一系列步骤。整个部署过程得到了充分的引导和支持,文档详尽全面,使得部署顺利完成,未遇到明显的报错或异常情况。尽管初次尝试时对某些复杂配置环节需反复确认,但整体流程顺畅。
101 3
网络安全中的零信任架构:从概念到部署
网络安全中的零信任架构:从概念到部署
构建高效的微服务架构:从设计到部署
构建高效的微服务架构:从设计到部署
53 1
使用Docker Compose实现微服务架构的快速部署
使用Docker Compose实现微服务架构的快速部署
143 1

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等