freebsd+Heartbeat2+php+postgres实现数据库复制和高可用网站

news/2024/5/20 1:09:45/文章来源:https://blog.csdn.net/zeeeitch/article/details/20379551

用2节点实现。采用heartbeat老版本2.x , 采用自己编写的resource agent,没有采用OCF


1 安装freebsd——废话


2 安装apache php (略) postgres,并设置复制,见:

http://blog.csdn.net/zeeeitch/article/details/5928319

3 设置hosts文件 (第二节点略)

192.168.15.6  zh103
192.168.15.9  zh104  

4 设置ha.cf文件,(第二节点略)

ucast em1 192.168.15.9
node zh104
node zh103
ping 192.168.14.1
logfile /var/log/ha-log 
keepalive 2 
deadtime 20 
warntime 5 
initdead 40 
udpport 694  
auto_failback off  

5 authkeys文件:

auth 1
1 crc  

6 haresources 文件:

zh104 192.168.14.11/24/em0 mypgsql myapache 

7 通过haresources文件,生成xml文件:

rm /var/lib/heartbeat/crm/cib.xml /var/lib/heartbeat/crm/cib.xml.sig /var/lib/heartbeat/crm/cib.xml.last
python2 /usr/local/lib/heartbeat/haresources2cib.py --stdout -c ha.cf haresources > /var/lib/heartbeat/crm/cib.xml;chown hacluster  /var/lib/heartbeat/crm/cib.xml

8 apache php启动关闭代理脚本

#!/bin/sh
case $1 in
status)ps -ax | grep -v grep | grep -q "httpd" rc=$?if [ $rc = 0 ]; thenecho "apache is running."else echo "apache is stopped."fiexit $rc;;
start)/usr/local/etc/rc.d/apache22 onestart exit ;;
stop)/usr/local/etc/rc.d/apache22 onestopexit ;;esacexit 0

9 主机上postgres启动关闭代理脚本
#!/bin/sh
case $1 in
status)ps -ax | grep -q postmaster|grep -v grep rc=$?if [ $rc = 0 ]; thenecho "postgres is running."else echo "postgres is stopped."fiexit $rc;;
start)/usr/local/etc/rc.d/postgresql onestartexit ;;
stop)/usr/local/etc/rc.d/postgresql onestopexit ;;esacexit 0

10 从机上的postgres代理脚本(启动时,hotstandby转为master)

#!/bin/sh
case $1 in
status)ps -ax | grep -v grep | grep -q "postgres: writer" && psql -Upgsql -c "select pg_is_in_recovery()" postgres | grep -q  frc=$?if [ $rc = 0 ]; thenecho "postgres is running."else echo "postgres is stopped."fiexit $rc;;
start)touch /var/run/pg_st2ma_triggerwhile truedops -ax | grep -v grep | grep -q "postgres: writer" && psql -Upgsql -c "select pg_is_in_recovery()" postgres | grep -q  frc=$?if [ $rc = 0 ]; thenbreakfisleep 1doneexit 0;;
stop)#/usr/local/etc/rc.d/postgresql onestopexit 0 ;;esacexit 0

11 最后rc.conf自启动

heartbeat_enable="YES"




本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_837838.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python爬取网站图像文件(网络爬虫)

一、代码 from bs4 import BeautifulSoup from bs4 import UnicodeDammit import urllib.request import threading def imageSpider(start_url):global threadsglobal counttry:urls[]requrllib.request.Request(start_url,headersheaders)dataurllib.request.urlopen(req)da…

html5 交互性网站,HTML5和CSS3的新交互性盘点:炫酷体验

【IT168 技术】本文标题的这副图片,是用Phosotshop制作的。但是,在搜索引擎中你却无法搜索到它,搜索引擎还没有强大到能够识别图片里面的文字。并且由于图片的体积不算太小,可能网速慢的网友在浏览的时候不得不耐心的等待图片的刷…

百度云cdn设置州五年制大专_使用CDN提升网站速度

CDN是什么鬼,下面我们就来介绍一下,CDN的全称是Content Delivery Network,即内容分发网络。CDN是构建在网络之上的内容分发网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块&#x…

谷歌翻译影响vue_给自己的网站接入谷歌翻译,以及修复了一个谷歌翻译的一个bug...

给网站加谷歌翻译,搜索引擎一搜一大堆,这里不再赘述。只贴一个申请谷歌翻译的一个地址:https://translate.google.com/...和一段代码:下面是官方给出的代码:下面是我改良的代码:function googleTranslateEl…

mysql迅_soxuncms 搜迅电影系统php版是一套采用PHP+MySQL环境搭建的智能建站 ,拥有海量 片信息, Web Server 266万源代码下载- www.pudn.com...

文件名称: soxuncms下载 收藏√ [5 4 3 2 1 ]开发工具: PHP文件大小: 3820 KB上传时间: 2016-10-30下载次数: 0提 供 者: npg详细说明:搜迅电影系统php版是一套采用PHPMySQL环境搭建的智能建站系统,拥有海量的影片信息,本站坚持每月都有…

nginx服务器带宽_如何利用nginx搭建一个简单的文件下载网站?

12月21日 因为时间关系写的并不是特别详细,后续会补充前期准备1、首先你需要有一台云服务器腾讯云服务器购买【腾讯云】云产品限时秒杀,爆款1核2G云服务器,首年99元其实我个人比较推广下面这款(性价比高):【…

软件测试:测试一个网站

一、软件测试的原则 1、软件测试应尽早执行,并贯穿于整个软件生命周期 2、软件测试应追溯需求 3、测试应由第三方来构造 4、穷举测试是不可能的,要遵循 Good-enough 原则 5、必须确定预期输出(或结果) 6、必须彻底检查每个测试结果 7、充分注…

网站服务器放置地怎么填,域名备案服务器放置地怎么填

域名备案服务器放置地怎么填 内容精选换一换通过华为云备案,需要先购买华为云中国大陆节点服务器,用于网站备案使用,后称为“备案服务器”。目前可用于华为云备案的服务器,请参见备案服务器。如果您的华为云帐号A中没有可备案的服…

使用Apache服务部署静态网站

10.1 网站服务程序 1970年,作为互联网前身的ARPANET(阿帕网)已初具雏形,并开始向非军用部门开放,许多大学和商业部门开始接入。虽然彼时阿帕网的规模(只有4台主机联网运行)还不如现在的局域网成…

记一次企业邮官网SEO优化

背景: 百度搜索 网易企业邮箱 会出现m.qiye.163.com 排名在前的问题 解决办法 在pc和m站分别加入 、mobile applicable-device标注可以帮助百度识别网站是PC站还是M站,给百度提交提交校验识别结果的正确性,减少百度蜘蛛把PC站当成M站&…

nginx配合前端实现网站分流 ABtest

前端随机生成0-99的cookie,通过nginx分配10%的流量 nginx配置 前端生成cookie (function(){function random(min, max) {return Math.floor(Math.random() * (max - min)) min;}function setCookie(name, value, days) { // 设置cookie days设置过期时间 单位:天…

懂点网站交互(1):网站设计准则

别让我思考 这是网站交互设计中最最最重要的原则——它是设计中判别什么有用,什么没用的终极法则。 这意味着,当读者看到一个页面时,它应该是不言而喻、一目了然、自我解释的。 即读者能“明白它”——知道它是什么意思,怎样用…

spring boot和spring cloud 开发必备工具准备 和 必备网站导航

spring boot和spring cloud 开发必备工具准备 和 必备网站导航 本文主要介绍spring cloud开发前期准备,为以后学习和开发有一些资料保障: 常用网站: spring boot 官网英文网站,有一些简单和详细的介绍 http://projects.spring.…

懂点网站交互(3):广告牌设计101法则

在上篇文章 懂点网站交互(2):我们实际上是如何使用web的 我们可以了解到实际上用户浏览网站时并不会按我们假定的方式,而是飞快的扫视而过,那么我们如何让用户了解我们的网站呢? 1.尽量利用习惯用法 2.建立…

VUE项目实践--网站管理系统

使用vue-cli来构建一个vue项目 什么是vue-cli?有了它我们还需要webpack吗? 通过几天的学习都知道webpack的使用难度真的有点高,而且文档又很难阅读。而vue-cli是一个可用帮助我们直接进行开发vue的脚手架(帮助我们建立项目框架&…

【Hexo】如何才能在百度搜索到你的博客?SEO优化了解一下(上)

关于Hexo的一切 —— 我的Hexo专栏 零 前言 SEO,即Search Engine Optimization,译为搜索引擎优化。 它是一种利用搜索引擎的规则提高网站在有关搜索引擎内的自然排名的方式。 继上篇域名绑定,这篇我们来聊聊如何才能在百度搜索到你的Hexo博客…

用python爬取需要cookie信息的网站

本次创作实验网站:实验网址 本次创作语言:python2 编译用到的工具:pycharm,Fiddler 首先我们打开这个网站,不难发现,在高级检索目录下的内容是需要登录后才能获取到的,所以我们需要先注册账号…

wordpress 网站迁移步骤

1.在就网站服务器上备份要迁移的网站,并上传到新的服务器上 2.在旧网站服务器上备份数据库,并导入到新的服务器的数据库中 3.打开wp_config.php文件,修改相应的数据库配置信息 4.打开新服务器上的数据库,找到wp_options表&…

转 PHP网站从Apache转移到Nginx后产生404错误的原因和解决办法

转 PHP网站从Apache转移到Nginx后产生404错误的原因和解决办法 原文地址链接:http://www.linuxidc.com/Linux/2014-06/103103.htm 原案例分析: 1、原来的网站在wamp环境下搭建完成,一切正常,上传到虚拟主机环境为lnmp&#xff…

WordPress 迁移网站以后,后台和首页正常,但是内容页出现404错误

在迁移WordPress博客的过程中,遇到不少问题,迁移有以后,后台正常,首页正常,就是其他页面全部404错误。 经过不懈努力总算是解决了这个问题.这里分享一下,这次是如何解决404错误的。 1、登录后台&#xff…