随笔分类 -  社区组件

摘要:Patroni 流程整理目录 3. 主循环 主循环在Patroni类的_run_cycle函数中进行,在这个函数中调用Ha类的循环函数run_cycle,每循环一次调用一次,而不是开启Ha的循环,并且在这里进行重载配置文件。 在这个主循环中重点是Ha类的_run_cycle函数,在这个函数中对集群的 阅读全文
posted @ 2024-12-24 19:43 零の守墓人 阅读(119) 评论(0) 推荐(0)
摘要:Patroni 流程整理目录-初始化 2. 初始化 数据库的初始化在Postgresql类的__init__函数中,在这个函数中对当前的数据库做了一系列的调整,初始化一系列实例、设置一些配置信息,查看状态和更新信息等等。而将节点加入集群或者初始化集群时,则是调用ha类中的函数进行初始化,如post_ 阅读全文
posted @ 2024-12-24 19:43 零の守墓人 阅读(96) 评论(0) 推荐(0)
摘要:Patroni 流程整理目录-配置文件 1. 配置文件 1.1 读取 配置文件的读取时机是Config类的创建时机。这个创建有两种情况,如下所述: patroni读取配置文件则是对Config类进行初始化的过程,在patroni/__main__.py文件的main函数中,调用了process_ar 阅读全文
posted @ 2024-12-13 17:00 零の守墓人 阅读(108) 评论(0) 推荐(0)
摘要:Patroni中对主备切换、故障转移和命令行的流程整理 1. 主备切换 主备切换(Switchover)是高可用性(High Availability,HA)系统中的一个重要操作,常见于数据库集群或分布式系统中。在主备架构中,通常有一个主节点和一个或多个备节点,备节点会复制主节点的数据并保持同步。 阅读全文
posted @ 2024-12-13 16:59 零の守墓人 阅读(730) 评论(0) 推荐(0)
摘要:Patroni中对pg的重启、停止和启动详解 对于pg的重启、停止和启动的操作,都在/postgres/__init__.py文件中定义了相关的函数,都是调用其中的函数进行使用。 1. 停止 1.1 stop函数 重启的函数为stop。其代码如下所示: def stop(self, mode: st 阅读全文
posted @ 2024-12-13 08:44 零の守墓人 阅读(240) 评论(0) 推荐(0)
摘要:Citus的restart详解 1. 命令行restart 在ctl.py的restart方法中,获取到集群的信息,然后再获取到要重启节点的信息。 cluster = get_dcs(cluster_name, group).get_cluster() members = get_members(c 阅读全文
posted @ 2024-12-13 08:44 零の守墓人 阅读(68) 评论(0) 推荐(0)
摘要:分布式Citus集群与Patroni 1. 环境介绍 2. 安装部署 2.1 安装Docker 2.1.1 检查是否安装 运行以下命令来检查 Docker 是否已安装: docker --version 如果没有返回版本号,则 Docker 可能未安装。 2.1.2 安装 # 更新包索引 sudo 阅读全文
posted @ 2024-12-13 08:43 零の守墓人 阅读(206) 评论(0) 推荐(0)
摘要:源码安装patroni+postgresql+citus+zookeeper 1. 安装环境 软件版本: python 3.9.16 postgresql 16.4 citus 12.1 patroni 4.0.3 zookeeper 3.7.1 1.1 设置SELinux、防火墙 systemct 阅读全文
posted @ 2024-12-13 08:42 零の守墓人 阅读(359) 评论(0) 推荐(0)
摘要:Patroni在Zookeeper中保存的信息 1. 保存的信息 在使用 Patroni 配置高可用 PostgreSQL 集群时,etcd 或 Zookeeper(作为分布式协调系统)通常用于存储和管理与集群状态和配置相关的元数据。具体来说,Patroni 在这些系统中保存了以下几类信息: 1.1 阅读全文
posted @ 2024-12-13 08:42 零の守墓人 阅读(118) 评论(0) 推荐(0)
摘要:Ciuts的MX模式 Citus集群由Coordinator(CN节点)和Worker节点组成。CN节点上放元数据负责SQL分发; Worker节点上放实际的分片,各司其职。 但是,citus里它们的功能也可以灵活的转换。 1. 什么是MX模式? MX模式是Citus的扩展,允许app直接连接wor 阅读全文
posted @ 2024-12-13 08:39 零の守墓人 阅读(107) 评论(0) 推荐(0)
摘要:Patroni 读取配置文件(包含Zookeeper中) 1. patroni读取配置文件 1.1 什么时候创建配置类 patroni读取配置文件则是对Config类进行初始化的过程,在patroni/__main__.py文件的main函数中,调用了process_arguments函数首先进行了 阅读全文
posted @ 2024-12-13 08:35 零の守墓人 阅读(94) 评论(0) 推荐(0)
摘要:241112-Patroni处理流程图 原文链接: https://zhuanlan.zhihu.com/p/159009358 Patroni处理流程图 Patroni的处理逻辑如何呢?patroni官方给出了处理流程图 ha_loop_diagram.png,如下 https://raw.git 阅读全文
posted @ 2024-12-13 08:34 零の守墓人 阅读(69) 评论(0) 推荐(0)
摘要:基于Patroni的Citus高可用环境部署 参考文献:https://www.cnblogs.com/VicLiu/p/14333979.html 1. 实验环境 主要软件 CentOS 7.8 PostgreSQL 12 Citus 10.4 patroni 1.6.5 etcd 3.3.25 阅读全文
posted @ 2024-12-13 08:27 零の守墓人 阅读(162) 评论(0) 推荐(0)
摘要:Patroni中的Citus 1. Citus 1.1 Citus介绍 Citus是一个非常实用的能够使PostgreSQL具有进行水平扩展能力的插件,或者说是一款以PostgreSQL插件形式部署的基于PostgreSQL的分布式HTAP数据库。本文简单说明Citus的高可用技术方案,并实际演示基 阅读全文
posted @ 2024-12-13 08:27 零の守墓人 阅读(208) 评论(0) 推荐(0)
摘要:datacheck安装 1. 运行环境 DataCheck 运行环境要求: Python 版本:3.7 及以上版本。 数据库:目前支持 PostgreSQL、Sybase ASE、Oracle 。 操作系统:要求Debian 10+、Ubuntu 16.04+、SLES 12 SP5 和 15 SP 阅读全文
posted @ 2024-08-23 17:17 零の守墓人 阅读(109) 评论(0) 推荐(0)