IT技术博客大学习 共学习 共进步
全部 移动开发 后端 数据库 AI 算法 安全 DevOps 前端 设计 开发者

标签:高可用

共 12 篇相关文章

IT 累计浏览 2,491

DRBD远程实时双机热备系统配置完全手册

这篇文章详细记录了作者重新搭建并配置DRBD远程实时双机热备系统的全过程。出发点很简单:几年前配过的环境已无法使用,于是决定完整走一遍流程,并将每一步骤记录分享。 内容以两台虚拟机为基础环境,从安装Linux系统、配置网络,到添加虚拟硬盘并分区作为镜像源,再到DRBD软件的安装与关键的配置文件(drbd.conf)编写,形成了一个清晰的操作链条。作者不仅给出了具体命令和系统输出,还穿插了如提前创建虚拟机快照等实用经验提示。 整个过程不空谈原理,而是通过一个实际可复现的案例,展示了如何构建一个数据实时同步的节点对。对于想了解或动手实践DRBD部署的读者,这篇手册提供了一个从零开始、步骤完整的配置蓝图,能够帮助读者快速建立对DRBD基础部署流程的认知。

IT 累计浏览 3,716

关于Rsyslogd 的一些配置 (高性能、高可用 rsyslogd)

这篇讲的是作者公司日志传输服务器因带宽调整引发的日志堵塞实战。他们遇到的情况是,业务通过PHP syslog接口写日志时被“卡住”了,根源在于rsyslog默认配置追求“不丢任何数据”,但当传输链路异常时,队列堆积反而拖垮了业务。 排查发现,原有配置仅有基础传输逻辑,进程、队列、传输效率等关键参数全部使用了默认值。这种配置在理想环境下能运行,一旦出现网络波动或突发流量就暴露出问题。文章分享了如何通过调整队列参数来破解困境:例如定义`$MainMsgQueueFilename`和`$MainMsgQueueMaxDiskSpace`来控制磁盘队列大小,利用`$QueueHighWatermark`触发磁盘存储,并通过`$MainMsgQueueDiscardMark`与`$MainMsgQueueQueueDiscardSeverity`配合实现有策略的消息丢弃,避免业务被阻塞。 作者还附上了关键配置的截图和几份深入阅读的官方文档,特别是关于rsyslog队列机制的那篇。此外,文末也提及了RELP(可靠事件日志协议)等更健壮的传输方案,以及社区开发的syslog-safer工具作为补充。这是一次从故障现象到配置调优的完整经验梳理,对于使用rsyslog的日志架构很有参考价值。

IT 累计浏览 5,150

双机mount数据库出现ORA-00600[kccsbck_first]

这篇讲的是一个在双机高可用环境下,Oracle数据库恢复时遇到的经典问题——数据库无法正常启动到mount阶段,并抛出了ORA-00600[kccsbck_first]内部错误。 文章从一次实际的恢复故障切入,详细记录了排查过程。这个错误的根因指向了控制文件损坏或不一致,在双机共享存储的架构中,这类问题往往因异常断电或存储故障引发。作者没有停留在报错本身,而是深入解析了该错误代码的触发机制,即数据库在读取控制文件进行一致性校验时失败。 解决的关键在于恢复或重建有效的控制文件。文中分享了利用备份的控制文件或通过跟踪文件重建的具体操作步骤,并强调了在操作前做好数据文件头备份的重要性,以防二次损伤。整个案例清晰地展示了从现象到本质、从诊断到修复的完整逻辑链路,对于运维和DBA人员处理类似的数据库启动故障,具有直接的参考价值。

IT 累计浏览 2,790

xen虚拟机的迁移类型

这篇讲的是Xen虚拟机管理中一个关键但容易被忽略的环节——在线迁移。作者从保证业务连续性的高可用需求出发,具体拆解了两种核心迁移思路。 一种是“冷静态迁移”,它需要先完整保存Guest域的运行状态(通过xm save命令生成检查点文件),然后将配置文件、镜像连同检查点文件一并拷贝到目标服务器,再通过xm restore恢复运行。这本质上是一个“关机-转移-重启”的过程,虽然会导致服务中断,但状态保存完整。 更值得了解的是“温静态迁移”。它的精妙之处在于“暂停而非关机”——原宿主机先临时挂起(suspend)Guest域,随后将其内存状态和进程直接在目标宿主机上恢复(resume)运行。这种方式最大程度地减少了服务中断时间,是实现动态迁移的常见基础技术路径。 文章直接切入操作命令与步骤对比,清晰呈现了从完全停机到近乎不中断的两种技术权衡。对于需要规划虚拟机资源池维护或构建容灾体系的工程师来说,这两种迁移模式的适用场景和操作细节,正是实现高可用的实操基石。

IT 累计浏览 3,920

自己动手实现Multi-Master Replication

这篇讲的是如何深入MySQL内核,通过修改源码来真正实现多Master复制,解决原生架构的局限性。作者从实际生产痛点出发:现有的MySQL复制(包括双主模式)在搭建大规模在线备份时管理成本极高。例如,线上有128个实例,就需要对等数量的实例做复制,这在运维上几乎无法承受。 他们评估了现有的Perl脚本方案,发现存在监控缺失、管理不便等问题。与其修补外部脚本,不如直接在MySQL内部实现。核心思路是利用MySQL自身的复制管理框架,扩展其能力以支持多个Master同时向一个Slave提供数据流。这样不仅能统一管理,还能继承MySQL原生的监控和运维接口。 巧妙之处在于,这个实现并非从零构建一个复制系统,而是“站在巨人肩膀上”进行扩展,大幅降低了复杂度。文章详细分享了这一过程的实现细节与思考,为有类似高可用或复杂复制需求的团队提供了一个可落地的深度定制方向。

IT 累计浏览 3,756

ZooKeeper权限控制初探

这篇讲的是企业内ZooKeeper集群资源管理的一次实践思考。目前公司内部不少应用,尤其是一些非核心服务,都倾向于独立部署ZooKeeper集群。考虑到ZK自身的高可用要求(至少三台机器),以及未来容灾扩容的需要,这种“各自为战”的部署模式导致了显著的资源浪费和运维压力。 作者从这一现实的资源利用率与运维成本问题出发,引出了一个实际需求:合并ZooKeeper集群。文章的探索重点落在合并后集群面临的一个关键挑战上——权限控制。因为多套业务共用一套集群,必须解决数据隔离与安全访问的问题。 这篇内容并非提供一个现成的终极方案,而是聚焦于“合并集群”这一架构决策背景下的初步技术调研。它指出了从分散到集中管理时,在权限模型设计、业务隔离等具体环节需要思考和解决的方向,对面临类似运维困境的技术团队有直接的参考价值。

IT 累计浏览 6,922

在百度的第一年

这篇讲的是作者在百度工作第一年的心路历程。文章从一个很真实的细节切入:某个亢奋的夜晚,作者忽然想梳理这一年,并给出了一个高度概括的结论——前半年拼命给自己揽事儿,后半年尽量往外推事儿。 这并非简单的工作量增减,背后是职场认知的深刻转变。前半段的“揽”,是新人急于证明自己、渴望学习成长的典型心态,主动承接任务以快速融入和积累。而后半段的“推”,则更值得玩味:它可能意味着对职责边界的清晰认知、对工作优先级的重新判断,或是从“执行者”向“规划者”思维演进的开端。文章坦诚地展现了这种从热情迸发到理性收敛的轨迹,没有停留在表面抱怨或炫耀,而是提供了关于职业初期如何平衡“广度”与“深度”、如何界定个人责任的朴素思考。 对于许多技术新人而言,这篇更像一面镜子,映照出相似的心路阶段,而作者的直白复盘,则为如何平稳度过这一阶段提供了参照。

IT 累计浏览 4,658

MySQL5.5复制/同步的新特性及改进

这篇讲的是MySQL5.5中一个重要的新特性:半同步复制。作者从参加MySQL2010用户大会的经历切入,直接点明了该特性的核心价值——它源自Google的补丁,旨在解决传统异步复制可能导致的数据不一致问题,从而为构建高可用MySQL方案提供了更可靠的底层支持。 文章具体剖析了半同步复制的工作原理:它要求主库在提交事务时,必须至少确认一个从库已将日志写入磁盘,然后才向客户端返回成功。这种机制在“数据零丢失”和“性能”之间找到了一个平衡点,明显区别于完全同步复制的阻塞风险和异步复制的数据丢失隐患。 对于需要保障数据强一致性的业务,比如金融或核心交易系统,半同步复制提供了一个现成的、开箱即用的选项。它降低了DBA实现高可用架构的复杂度,让MySQL在可用性上迈出了关键一步。

IT 累计浏览 3,597

海纳百川――人人网海量存储系统Nuclear开发手记

这篇讲的是人人网技术团队在2009年面对业务快速扩张时,为应对评论数据聚合与线上读写需求,着手开发海量存储系统“Nuclear”的初期历程。 当时,来自不同业务线的评论数据量激增,系统必须同时承担高并发读写和极高的稳定性要求——任何宕机都可能影响大片业务。作者从这个现实压力出发,回顾了团队如何开始探索构建一套能满足这些苛刻条件的存储架构。 文章聚焦于系统诞生的背景与原始挑战,展现了在大数据场景下,技术选型与系统设计如何从实际业务痛点中一步步生长出来。Nuclear的命名,也寓意着其要像大海容纳百川一样,承载起庞大而关键的数据洪流。

IT 累计浏览 3,108

MySQL半同步 : MySQL 5.5 Released

这篇讲的是MySQL 5.5版本发布带来的一个重磅利好。作者从MySQL的高可用性需求出发,指出这个新版本基于5.4,在性能大幅提升的同时,更关键的是将Google开发的半同步复制(semi-sync-replication)补丁直接内置到了核心代码中。 这意味着,过去需要额外打补丁才能实现的、能在数据安全与性能间取得平衡的半同步机制,现在成了官方原生支持的功能。这一变化使得构建一个相对完整、可靠的MySQL高可用架构变得更加直接和方便。文章提及这是基于对5.x新特性的持续关注,让期待高性能与数据一致性的用户看到了更优的解决方案。

IT 累计浏览 3,907

寻找适合你的MySQL高可用解决方案

这篇讲的是如何根据实际业务场景,挑选真正适合自己的MySQL高可用方案。作者直接切入问题的核心——面对众多高可用选项,决策者最常感到迷茫。文章没有堆砌各种技术的优劣,而是引导读者先回答一系列关键问题,比如你的业务能容忍多少数据丢失、故障切换的时间窗口是多少、运维团队的技术储备如何。 通过这套问题清单,不同的业务需求会自然地指向不同的技术路径。例如,对强一致性和零数据丢失有极致要求的金融场景,可能会倾向于基于半同步复制或专用集群的方案;而对读扩展和成本更敏感的互联网应用,可能更适合采用异步复制与负载均衡的组合。文章清晰地勾勒出,没有“最好”的通用方案,只有“最匹配”的解决方案。 其价值在于将技术选型从纯粹的性能对比,拉回到了业务需求驱动的决策框架中,帮助读者建立起一套清晰的思考逻辑。

IT 累计浏览 4,637

利用MySQL Cluster 7.0 + LVS 搭建高可用环境

这篇讲的是如何用MySQL Cluster 7.0结合LVS,为MySQL搭建一个真正高可用的架构。 作者从传统MySQL主从复制的高可用痛点切入:当主库宕机,需要手动或依赖脚本切换IP,服务中断时间不可控,且存在数据不一致的风险。为了解决这个问题,文章提出了一套基于MySQL Cluster(NDB引擎)与LVS(Linux虚拟服务器)的自动化高可用方案。 方案的核心思路在于利用MySQL Cluster本身的数据多节点复制与自动故障转移能力,确保数据层的高可用;同时,通过LVS在前端负载均衡层进行健康检查与流量调度,自动将请求从故障节点移开,实现应用访问层的无缝切换。文章详细说明了具体的架构设计、LVS的配置要点,以及如何测试验证其故障自动切换的效果。 最终,这套组合拳实现了在节点故障时,业务访问几乎无感知,显著提升了系统的整体可用性。它为需要兼顾高性能与高可用的MySQL环境,提供了一个可靠且具备扩展性的架构参考。