一些版本信息: Operating system is Ubuntu 11.10, on EC2, kernel is 3.0.0-16-virtual and the application info is: Version: 8.3.11 (api:88) GIT-hash: 0de839cee13a4160eed6037c4bddd066645e23c5 build by buildd@allspice, 2011-07-05 19:51:07 在dmesg(见下面)中获得一些奇怪的错误,没有复制发生。 我已经做了我的第一个节点的主要和显示: drbd driver loaded OK; device status: version: 8.3.11 (api:88/proto:86-96) srcversion: DA5A13F16DE6553FC7CE9B2 m:res cs ro ds p mounted fstype 0:r0 StandAlone Primary/Unknown UpToDate/DUnknown r—-s ext3 我的辅助节点正在显示: drbd driver […]
Backround:我们需要在小型办公环境中使用HA服务器,并且正在寻找DRBD来提供它。 我们只有约100GB需要在HA服务器上,服务器负载将会非常低。 如果我们存档较旧的办公室数据,每年的数据可能会增加大约10%-25%,如果我们不这样做,每年可能增加50%-75%。 要点是我们使用消费品级和使用企业级硬件的混合,如果我们不预先规划它,这将是一个问题; 而预先构build的高质量服务器也会失败,所以冗余服务器似乎是要走的路。 计划:我们认为find(2)最好的“我们的降压”服务器并同步它们是件好事。 我们只需要支持SATA / SAS的服务器和空间就可以为价格提供尽可能多的驱动器。 这些服务器好像可以有$ 100- $ 200(+一些零件和额外的驱动器),如果你达成协议。 这在理论上意味着一台服务器可能会失败,如果我们花了几天的时间去解决问题,只要我们没有再次发生巧合的故障,事情就会一直响起,直到我们的IT部门(我)能够实现。 我们将使用Debian作为操作系统。 一些问题 (A)DRBD如何处理驱动器或控制器故障? 这就是显示存储驱动程序之前的DRBD,那么当控制器发生故障并写入脏数据或驱动器发生故障但不立即崩溃时会发生什么情况? 数据是否镜像到其他服务器,在这种情况下是否存在跨服务器数据损坏的风险? (B)DRBD的失败点是什么? 这在理论上只要一台服务器启动并运行就没有问题了。 但是我们知道存在一些问题,那么使用DRBD的失败模式是什么,因为它们大多数在理论上应该是软件? 如果我们要为此有两台服务器,那么使用MYSQL和Apache来运行虚拟机的数据库和Web服务器复制是否合理? (我假设如此) DRBD是否足够可靠? 如果不是,某些任务是不可靠的,或者是更随机的。 search出现了各种各样的问题的人,但这是互联网与看似更坏的信息比好。 如果数据通过LAN进行同步,DRBD是否使用了两倍的带宽? 也就是说,我们应该把NICS加倍,做一些链路聚合和中继? 然后,也许把他们分开的路由器在不同的电路和不同的房间UPS,现在你真的有一些冗余! 就服务器pipe理而言,这对于一个办公室来说太疯狂了吗? 有一个更简单的REALTIME替代(理论上认为DRBD看起来简单)。 我们已经有一台服务器。 所以在我看来,第二台配备DRBD专用驱动器的USED服务器可以很容易地以一些智能购物的价格达到150-250美元左右。 添加第二个路由器,更多的驱动器,更多的网卡(使用),和(2)UPS的,并谈论$ 1,000 +/-。 那相对便宜! 我希望这将主要是在服务器故障期间为我们购买时间。 这些日子,驱动器故障似乎是RAID处理起来更容易的事情。 这是其他硬件故障,如控制器,内存或电源,可能需要停机诊断和解决这个问题。 对于我们来说,冗余服务器意味着使用的硬件变得更加可行,更多的运行时间和更多的灵活性让我能够在我的日程安排允许的情况下解决问题,而不必停止一切来修复服务器。 希望我不会错过这些问题容易search的答案。 我做了一个快速search,没有find我正在寻找的东西。
我们正在使用两台服务器实施DRDB +心跳,以使文件系统具有故障转移function。 这些服务器公开其他服务器的NFS服务 目前DRDB工作得很好,但是当testing我们从一台服务器切换到另一台服务器时,挂载的文件夹在其他服务器上的NFS只是挂起。 有没有透明的方法来做这个故障转移? 使它对NFS透明,或者我们需要重新安装这些nfs–mounted文件夹?
我正在通过两个节点上的DRBDconfiguration。 DRBD已经configuration,但是我想启用双主模式function。 在drbd站点上,我已经看到它需要使用一个共享集群文件系统,它使用了像GFS和OCFS2这样的分布式锁pipe理器。 ext3文件系统有可能吗? 提前致谢。
我必须为Magento做一个设置。 我的约束主要是便于安装和容错/故障切换。 而且成本是一个问题。 我有三个相同的物理服务器来完成这项工作。 每个服务器节点在软件RAID 1configuration中都有一个i7四核,16GB RAM和2x3TB HD。 每个节点运行Ubuntu 12.04。 马上。 我有一个额外的IP地址可以路由到任何这些节点。 Magento商店有最大。 1000个产品,其中50%是捆绑产品。 我估计,最大。 10个用户同时激活。 这使我得出结论,performance不是这里的重中之重。 我的第一个设置想法 一个节点(lb)运行nginx作为负载均衡器。 附加IP与域名一起使用,并默认路由到此节点。 Nginx将负载平均分配给另外两个节点(shop1,shop2)。 Shop1和Shop2configuration相同:每台服务器运行Apache2和MySQL。 Mysqlsconfiguration了主/从复制。 我的故障转移策略: Lb失败=>将IP路由到shop1(MySQL master),继续。 Shop1失败=> Lb会自动处理,在shop2上升级MySQL从属掌握,重新configurationMagento使用shop2进行写入,继续。 Shop2失败=> Lb会自动处理,继续。 这是一个理智的战略? 有没有人做过与Magento类似的设置? 我的第二个设置想法 另一种方法是使用drbd在shop1和shop2上存储MySQL数据文件。 我明白,在这种情况下,只有一个节点/ MySQL实例可以是活动的,而另一个被用作热备份。 所以如果shop1失败,我会在shop2上启动MySQL,将IP路由到shop2,然后继续。 我喜欢这一点,因为MySQL设置更容易,节点可以configuration99%相同。 所以在这种情况下,负载平衡器变得毫无用处,我有一个备用服务器。 我的第三个设置想法 第三种方式可能是MySQL数据库的主 – 主复制。 然而,在我的select中这可能是棘手的,因为Magento不是针对这种情况构build的(例如,新行的冲突ID)。 直到听说过一个实例,我才会这样做。 你能给我一个build议,哪条路要走? 似乎没有一个“好”的方法来做到这一点。 例如,我读博客文章描述Magento的MySQL主/从设置,但在其他地方,我读到,当奴隶落后于主人(例如,当订单被放置,顾客可能被创build两次)时,数据可能被重复。 我有点迷路了
我有一个具有DRBD挂载分区的Debian Xen DomU。 我需要将这个分区从46G调整到50G。 我做了以下几点: 停止辅助节点上的DRBD: /etc/init.d/drbd stop 将底层LVM dist增加到50 GB: lvresize -L 50G /lvm/device 再次启动DRBD并等待磁盘同步: /etc/init.d/drbd start 切换的主要部分。 并在另一个节点上执行相同的操作。 在现在的第二个DRBD节点上停止drbd: /etc/init.d/drbd stop 增加底层的LVM: lvresize -L 50G /lvm/device 再次启动DRBD并等待磁盘同步: /etc/init.d/drbd start 在发布的两个节点上: drbdadm resize drbd-device 在主节点上发出: resize2fs /dev/drbd0 我得到这个回应: $ resize2fs 1.40-WIP (14-Nov-2006) The filesystem is already 12058624 blocks long. Nothing to do! 使用fdisk,drbd0和sda设备drbd都使用报告设备的大小为49392123904.这与resize2fs的说法是一致的。 (12058624×4096 […]
我想考虑使用DRBD在主要和次要位置之间进行数据复制。 最初的计划是在两者之间build立VPN隧道; 主要使用一个双T1链路的一个片段和一个电缆/ DSL线路上的次要位置设置。 辅助将只存在DR – 它将“永不”复制回主节点。 有没有人完成/累/使用这样的事情,你有什么经验。 Linbit还有一个(付费)DRBD代理产品,它应该被devise用于跨WANtypes的链路(压缩,多个对等体)进行操作。 任何人都试过这个?
我已经设置了一对带有RAIDarrays(8核,16GB RAM,12×2 TB RAID6),3个10GigE接口的相同服务器,来承载一些高度可用的服务。 目前系统正在运行Debian 7.9 Wheezy oldstable(因为corosync / pacemaker在8.x stable和testing上不可用)。 本地磁盘性能大约为900 MB / s写入,1600 MB / s读取。 机器之间的networking吞吐量超过700MB / s。 通过iSCSI,每台机器可以以超过700 MB / s的速度向另一台存储器写入数据。 但是,不pipe我configurationDRBD的方式,吞吐量都限制在100MB / s。 它看起来像一些硬编码的限制。 我可以通过调整设置来可靠地降低性能,但是它永远不会超过1Gbit(一次达到122MB / s,几秒钟)。 我真的在这个上拉我的头发。 普通香草仁3.18.24 amd64 drbd 8.9.2〜rc1-1〜bpo70 + 1 configuration分为两个文件: global-common.conf : global { usage-count no; } common { handlers { } startup { } […]
我在centos 5运行带有ocfs2 ,并计划使用packemaker 。 过了一段时间,我正面临着drbd裂脑的问题。 version: 8.3.13 (api:88/proto:86-96) GIT-hash: 83ca112086600faacab2f157bc5a9324f7bd7f77 build by [email protected], 2012-05-07 11:56:36 1: cs:StandAlone ro:Primary/Unknown ds:UpToDate/DUnknown r—– ns:0 nr:0 dw:112281991 dr:797551 al:99 bm:6401 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:60 我无法将我的drbd切换到辅助。 drbdadm secondary r0 1: State change failed: (-12) Device is held open by someone Command 'drbdsetup 1 secondary' terminated with exit […]
我正在尝试使用corosync和pacemaker设置一个主动/被动(2个节点)的Linux-HA集群来启动并运行PostgreSQL数据库。 它通过DRBD和一个服务IP工作。 如果node1发生故障,node2应该接pipe。 如果PG在节点2上运行,则失败。 一切正常,除了STONITH的东西。 节点之间是一个专用的HA连接(10.10.10.X),所以我有以下接口configuration: eth0 eth1 host 10.10.10.251 172.10.10.1 node1 10.10.10.252 172.10.10.2 node2 Stonith已启用,并正在使用ssh代理进行testing以杀死节点。 crm configure property stonith-enabled=true crm configure property stonith-action=poweroff crm configure rsc_defaults resource-stickiness=100 crm configure property no-quorum-policy=ignore crm configure primitive stonith_postgres stonith:external/ssh \ params hostlist="node1 node2" crm configure clone fencing_postgres stonith_postgres crm_mon -1显示: ============ Last updated: Mon Mar 19 15:21:11 […]