PostgreSQL是一个非常流行的使用面非常广的关系数据库,有很多种构建Postgres HA集群的方式,例如PAF,pgool等,以下将以CentOS7系统和PostgreSQL9.6版本为例,结合高可用虚拟...IP(以下简称vip),patroni,haproxy,etcd等组件介绍一种pg HA方案。...一 实验环境 3个cvm虚拟机节点 一个高可用虚拟IP,172.27.16.47,云上申请地址:https://console.cloud.tencent.com/vpc/havip 二 安装postgresql...100 advert_int 2 state BACKUP # 如果是云上vip,如未开通组播的话可使用单播,需设置unicast_peer unicast_src_ip
高可用性HA(High Availability)指的是通过尽量缩短因日常维护操作(计划)和突发的系统崩溃(非计划)所导致的停机时间,以提高系统和应用的可用性。...,比如数据库服务器,平常只有一台机器对外提供服务,另一台机器作为热备,当这台机器出现故障时,自动动态切换到另一台热备的机器,典型使用场景包括lvs +keepalive + nginx来保证NGINX高可用...虚IP。...何为虚IP那,就是一个未分配给真实主机的IP,也就是说对外提供数据库服务器的主机除了有一个真实IP外还有一个虚IP,使用这两个IP中的 任意一个都可以连接到这台主机,所有项目中数据库链接一项配置的都是这个虚...IP,当服务器发生故障无法对外提供服务时,动态将这个虚IP切换到备用主机。
集群设计虚拟机容量70-100台,占用2个机柜; 2....虚拟机可以在KVM集群宿主机之间迁移; mfs集群架构: 1. mfs集群由元数据服务器、日志服务器区、chunkserver(存储服务器)区组成; 2....,并且相对应的2台虚拟机之间通过keepalived、Heartbeat等做HA,实现高可靠性; 3....KVM集群每台宿主机作为mfs的客户端,挂载mfs集群的文件系统,将虚拟机放置在上面; mfs集群搭建: 资料很多,略。...虚拟机磁盘使用writeback模式。
集群节点可以挂载iscsi磁盘,划分vg,lv分配给虚拟机使用,并且可以实现迁移等功能; 4. 通过pacemaker管理实现drbd、iscsi、浮动ip的自动切换。...iscsivg01" \ op monitor interval="29" role="Master" \ op monitor interval="31" role="Slave" primitive p_ip_alicebob01...ocf:heartbeat:IPaddr2 \ params ip="172.16.100.180" cidr_netmask="24" \ op monitor interval="10s" primitive...10s" group rg_iscsivg01 p_lvm_iscsivg01 p_target_iscsivg01 p_lu_iscsivg01_lun1 p_lu_iscsivg01_lun2 p_ip_alicebob01
可靠性高: 1) 对于磁盘、内存、网卡、CPU甚至服务器故障有很好的冗余性; 2) 允许单点甚至多点的故障; 2....稳定性高: 1) 搭建简单; 2) 软件系统稳定,不用整天陷入到各种bug的泥潭中; 3) 软件系统有自我愈合能力,能够自动修复或者快速简单修复; 3....最终结论 综合比较可靠性、稳定性、性能三个方面,目前在生产环境中最适合kvm虚拟化的文件系统是glusterfs,一年之后,也许最适合的是sheepdog!
集群设计虚拟机容量70-100台,占用1个机柜,全部由1U服务器组成,其中存储服务器6台,300G*8,节点服务器10台; 2....虚拟机可以在KVM集群宿主机之间迁移; glusterfs集群架构: 1. 存储服务器和节点服务器组成,存储服务器通过哈希算法,可以弹性增加或者减少,并实现冗余; 2....KVM集群每台宿主机作为glusterfs客户端,挂载glusterfs集群的文件系统,将虚拟机放置在上面; glusterfs集群搭建: 存储节点搭建 1 安装相关组件 yum -y install...test-volume /gfs 自动挂载 vim fstab server1:/test-volume /mnt/glusterfs glusterfs defaults,_netdev 0 0 创建虚拟机
Sheepdog是为kvm虚拟化量身定做的分布式文件系统,针对kvm系统做了深入的优化,是kvm虚拟化分布式文件系统的终极解决方案,目前版本0.4,如果要在生产环境中使用,还有很多工作要做,需要等待更成熟的版本发布...集群设计虚拟机容量70-100台,占用1个机柜,全部由1U服务器组成,每台服务器6台,300G*8; sheepdog集群架构: 1....pacemaker ver: 0 } totem { version: 2 secauth: off threads: 0 interface { ringnumber: 0 bindnetaddr: 你的ip...将一个现有的镜像转化到sheepdog中 qemu-img convert -t writethrough ~/amd64.raw sheepdog:Bob 4) 查看镜像 collie vdi list 5) 虚拟机启动...boot order='1'/> 13) 启动一个虚拟机
手头资源有限,所以这里先用三台机器组集群环境,用Proxmox VE再配合Ceph存储组成一个高可用的虚拟化平台,Proxmox VE的安装过程这里就不写了,实在是太简单了,将网上下载的proxmox-ve..._5.2-1.iso制作成U盘启动盘,U盘启动,一路下一步就可以了,设置好root密码、IP、hostname等信息就好了,ostname要求写成FQDN格式。...,使用ceph存储 #虚拟机热迁移测试 刚刚在proxmox231上创建了一个centos7的虚拟机,存储用到了ceph,所以先来进行热迁移测试,将proxmox231上的虚拟迁移到proxmox233...,CD/DVD选择不使用任何介质 #然后再来迁移 #此时之前在proxmox231上面运行的虚拟已经迁移到proxmox233上面来了 #将虚拟机加入HA,进行高可用测试 #好了,已成功将proxmox233...上了,实现了高可用 以上只是对proxmox做了简单的测试,基本上能满足日常需求,更多的高级功能后面再来慢慢摸索。
《构建高可用VMware vSphere 5.X虚拟化架构》以VMware vSphere 5.1版本为例,介绍在企业应用平台上,如何构建高可用ESXi主机、高可用vCenter Server服务器、...高可用网络、高可用存储等基础架构。...《构建高可用VMware vSphere 5.X虚拟化架构》以实战为主,内容都来自于作者近几年参与的企业虚拟化建设项目,收录实际项目中比较常见的问题以及解决问题的方法,可以迅速提高读者动手能力以及故障处理能力...《构建高可用VMware vSphere 5.X虚拟化架构》适用于对VMware vSphere虚拟化架构有一定了解的人员或虚拟化架构管理人员,没有基础的读者可参考《VMware vSphere 5.0...虚拟化架构实战指南》一书。
RabbitMQ 高可用集群搭建 1 集群简介 1.1 集群架构 当单台 RabbitMQ 服务器的处理消息的能力达到瓶颈时,此时可以通过 RabbitMQ 集群来进行扩展,从而达到提升吞吐量的目的...一个高可用,负载均衡的 RabbitMQ 集群架构应类似下图: 这里对上面的集群架构做一下解释说明: 首先一个基本的 RabbitMQ 集群不是高可用的,虽然集群共享队列,但在默认情况下,消息只会被路由到某一个节点的符合条件的队列上...a 命令查看到虚拟 IP 的情况: 此时只有 rabbit-node1 上是存在虚拟 IP 的,而 rabbit-node2 上是没有的。...此时虚拟 IP 时挂在 MASTER 上的,如果想退出, 按 Ctrl+C。 如果 MASTER 停止 keepalived,虚拟 IP 会漂移到 BACKUP 服务器上。...juejin.im/post/6844904071183220749 RabbitMQ 官方文档 —— 集群指南:www.rabbitmq.com/clustering.… RabbitMQ 官方文档 —— 高可用镜像队列
redis 高可用,如果是做主从架构部署,那么加上哨兵就可以了,就可以实现,任何一个实例宕机,可以进行主备切换。 所以就有了几个问题? 什么是主从架构,主从如何备份?...什么时候整个集群不可用(cluster_state:fail)?...哨兵用于实现 redis 集群的高可用,本身也是分布式的,作为一个哨兵集群去运行,互相协同工作。...哨兵 + redis 主从的部署架构,是不保证数据零丢失的,只能保证 redis 集群的高可用性。...==怎么保证redis是高并发以及高可用的==? sdown 和 odown 转换机制 sdown 是主观宕机,就一个哨兵如果自己觉得一个 master 宕机了,那么就是主观宕机。
F5 BIG-IP Controller: F5 所开发的 Controller,它能够让管理员通过 CLI 或 API 让 Kubernetes 与 OpenShift 管理 F5 BIG-IP 设备...Ingress Contronler 1、type为`LoadBalancer`的时候只有云厂商支持分配公网ip来负载均衡,LoadBalancer 公开的每项服务都将获得自己的 IP 地址,但是需要收费...kube-proxy转发到Ingress Controller的pod上,多走一趟路 4、不创建svc,效率最高,也能四层负载的时候不修改pod的template,唯一要注意的是`hostNetwork: true 高可用选择第四种
背景 本文记录一些高可用的内容,和数据库在高可用方面的演进过程。 1. 概念 可用性: 即软件系统在一段时间内提供 有用资源 的能力。...高可用性 描述了一个周期内的功能连续可用的绝对程度,可表示为正常运行时间和停机时间之间的关系,如下公式: A = 100 – (100*D/U) 备注:A 表示可用性;D 表示 非计划停机时间;U 表示正常运行时间...如何设计来做到高可用 保证系统高可用,架构设计的核心准则是:冗余 和 故障转移。 单点系统的问题是,挂了就完全不可用了,服务会受影响。如果有冗余备份,其他后备的系统能够顶上,保证服务继续可用。...所以,又往往是通过“自动故障转移”来使得快速切换到备份系统来实现高可用。...常见的互联网分布式架构是: 前端 ---> 反向代理 --> WEB应用 --> 服务 --> 数据库(及缓存) 其中,高可用可涉及到上面每个节点的高可用保障,我们看下数据的高可用架构的演变过程。
生产环境中,后端应用需要支持高吞吐量并且支持高可用来保证服务的稳定,因此需要高可用集群管理。...高可用需要: 至少一个 Nacos(可以是nacos集群) 至少一个 ElasticSearch / mysql(可以是es/msql集群) 至少2个skywalking oap服务; 至少1个UI(UI
本篇文章是之前一篇《大话高可用》的高可用心法的案例篇。 说实践之前先说概念。 ...具体实践如下: 架构高可用 交易这边进行在进行重构。将原有的核心交易从职责上划分为交易收单、交易保障和数据中心三个大块。 从高可用上,交易收单要保证实时交易现场的可用。...所以它才是对高可用需要考虑最多的,对MTBF和MTTR都要考虑和权衡。但是在对高可用要求上交易收单和交易保障是基本职责,指标就是稳定、稳定和稳定。...数据中心关乎的用户体验,是可以持续优化的,但是对高可用是有一定容忍度的:比如页面会加载慢,或者第一次加载不了刷新就成功了。...强依赖高可用 比如数据库的密码,不仅是加密的,而且是在中央集群秘钥管理中心统一管理的。中央集群的就会有秘钥获取不到的风险。按照API,如果获取不到则会抛出指定异常。 这是强依赖,需要容灾。
今天老大跟我讨论说,没有看到过一篇够全面体系的高可用的文章。谈到高可用,基本都是以偏概全的文章。今晚抽空想了一下这个问题。 ...高可用我另一个更资深老大其实总结的很全面了:别人死我们不死,自己不作死,不被队友搞死。 然后就是怎么别人死我们不死:最好就是别人的东西和我们没关系,就是去依赖。如果实在有依赖呢,那就尽量弱依赖。
F5 BIG-IP Controller: F5 所开发的 Controller,它能够让管理员通过 CLI 或 API 让 Kubernetes 与 OpenShift 管理 F5 BIG-IP 设备...app.kubernetes.io/name: ingress-nginx app.kubernetes.io/part-of: ingress-nginx --- Ingress Contronler 高可用...1、type为LoadBalancer的时候只有云厂商支持分配公网ip来负载均衡,LoadBalancer 公开的每项服务都将获得自己的 IP 地址,但是需要收费,自己建立集群想使用它的话得部署metaLB...也就是使用了主机的dns,会导致svc的请求直接走宿主机的上到公网的dns服务器而非集群里的dns server,需要设置pod的dnsPolicy: ClusterFirstWithHostNet即可解决 高可用选择第四种
因为Redis拥有诸多优秀的特性,使用范围越来越广,系统对其可用性的依赖也越来越重,当前绝大部分系统使用的Redis都实现了高可用。...这里主要介绍Redis官方推荐的两种高可用方案Sentinel和Redis Cluster。...(如有不明白可以参考《Redis设计与实现》) 高可用 Redis实现高可用主要有两种方式,一种是Sentinel(3.0之前),一种是3.0正式支持的Redis Cluster(推荐)。...注意事项 因为Sentinel与Redis Cluster都没有实现强一致性(也没有实现最终一致性),所以在使用时,要牢记这一点,不能用在一致性要求特别高的场景,比如全局唯一ID,交易数据等。...如果master没有设置持久化,存在风险,如果不小心重启,则会丢失所有数据,而且从机也会因为同步,丢失所有数据(所以一定要高可用)。
我们之前了解了复制、扩展性,接下来就让我们来了解可用性。归根到底,高可用性就意味着 "更少的宕机时间"。 老规矩,讨论一个名词,首先要给它下个定义,那么什么是可用性?...1 什么是可用性 我们常见的可用性通常以百分比表示,这本身就有其隐藏的意味:高可用性不是绝对的。换句话说,100% 的可用性是不可能达到的。没错,这里可以这么肯定的说。...3 如何实现高可用性 通过上面的分析,也许你已经发现了,我们可用性取决于两个时间: 应用的平均失效时间 应用的平均恢复时间 因此,提高可用性也可以从这两个方面入手。...详情参见MySQL 复制 - 性能与扩展性的基石 4:主备库切换 虚拟 IP 地址或 IP 接管 可以为需要提供特点服务的 MySQL 实例指定一个逻辑 IP 地址。...当 MySQL 实例失效时,将 IP 地址转移到另一台 MySQL 服务器上。这里的解决方案本质上负载均衡里的虚拟 IP 技术是一样的,不同的是现在是用于故障转移。 这种方法的好处是对应用透明。
高可用 高可用:相对于高并发来说,高可用并不是一个比较有规律的参数,7*24 是每个网站的梦想,但是你并不知道,在某一刻,他就没理由的宕机了。...高并发设计原则 系统设计不仅需要考虑实现业务功能,还要保证系统高并发、高可用、高可靠等。...高可用设计原则 通过负载均衡和反向代理实现分流。 通过限流保护服务免受雪崩之灾。 通过降级实现部分可用、有损服务。 通过隔离实现故障隔离。...降级 对于高可用服务,很重要的一个设计就是降级开关,在设计降级开关时,主要依据如下思路: 1.开关集中化管理:通过推送机制把开关推送到各个应用。...这样就可以把一些同步调用改成异步调用,优先处理高优先级数据或特殊特征的数据,合理分配进入系统的流量,以保障系统可用。
领取专属 10元无门槛券
手把手带您无忧上云