我正在尝试configurationpgpool2和postgresql 9.1来处理故障转移。
我目前正在运行stream式复制,并正在使用pgpool2进行只读负载均衡。
我有2个服务器在我的设置,都运行postgresql – 1主和1奴隶。 主人也运行pgpool2。
我的问题是如何configuration此设置来处理故障转移? 特别是在主机崩溃的情况下,从机也必须接pipe并运行pgpool2。 我已经能够find的大多数文档和示例都假设pgpool2在单独的服务器上运行,因此“从不”崩溃。
我可能会或可能不会用错误的工具攻击问题。 在我的生产环境中,我总共有3台相同的服务器在独立的位置。 该设置的主要目标是实现高运行时间。 因此,故障转移应该是自动的,并且将故障节点备份应该只会导致最小的停机时间。 我希望所有3个节点尽可能接近相同,并且只能运行1或2个节点。 如果可能的话,我想使用负载平衡来提高性能。
如果任何人都可以帮助我了解如何使用我当前的设置做到这一点或build议一个不同的/更好的设置。
谢谢!
正如你所说的,pgpool需要在一个完全独立于数据库集群的服务器上运行,或者你正在努力完成的任何事情都不能工作。 如果主数据库服务器出现故障,pgpool基本上需要能够独立故障切换到备份服务器。 如果pgpool与主服务器closures,则不会发生这种情况。 如果备份服务器closures,也不会发生这种情况,并且pgpool正在运行。
大多数人设置了一些HA监视基础设施,比如心跳,这样pgpool服务器就会死掉,备份就会自动启动。