全球主机交流论坛
标题:
【上干货】VPS故障时自动切换服务器的一个方法
[打印本页]
作者:
abccba94
时间:
2018-12-6 18:36
标题:
【上干货】VPS故障时自动切换服务器的一个方法
本帖最后由 abccba94 于 2018-12-7 10:14 编辑
原文链接:
http://iytc.net/wordpress/?p=4813
通过修改域名对应的IP地址可以在网站故障时实现自动切换
如果使用其他dns,需参考dns服务商提供的API
看回复有不少人说某些dns服务商提供自动切换IP的功能,用脚本控制的优点是你可以灵活控制切换策略,比如可以设置成ping丢包率超过多少时进行切换,切换后如果达到什么条件又自动切换回原服务器
【用godaddy实现ddns或服务器故障自动切换】
1、获取godaddy的API
访问如下网址:
https://developer.godaddy.com/keys
登陆后创建KEY:
注意创建时选“Product”不要选ote
注意:此页面只显示一次,需保存好key和secret
2、拷贝如下脚本,修改相关内容,保存为cdns.sh,上传至服务器或路由器,开启执行权限
#根据你自己的信息修改如下内容
domain="your_domain_here.com" # 需更新的域名,比如iytc.net
name="@" # 需更新的A记录名称,比如要更新test.iytc.net,此处填写test
key="your key here" # 你的godaddy Key
secret="your secret here" # 你的godaddy Secret
currentIp=$1
headers="Authorization: sso-key $key:$secret"
result=$(curl -v -k -X GET -H "$headers" \
"https://api.godaddy.com/v1/domains/$domain/records/A/$name")
dnsIp=$(echo $result | grep -oE "\b([0-9]{1,3}\.){3}[0-9]{1,3}\b")
#echo "dnsIp======="$dnsIp
if [ "$dnsIp" != "$currentIp" ]; then
request='[{"data":"'$currentIp'","ttl":600}]'
nresult=$(curl -i -k -v -X PUT \
-H "$headers" \
-H "Content-Type: application/json" \
-d $request "https://api.godaddy.com/v1/domains/$domain/records/A/$name")
fi
复制代码
3、使用方法
./cdns.sh ip
比如要将对应的dns IP地址改为11.22.33.44,则执行
./cdns.sh 11.22.33.44
4、应用
【路由器ddns】
你可以在ip改变时执行脚本,将域名指向的IP地址更新为新的IP地址
【网站故障自动切换】
在其他服务器上运行脚本监控某个网站(比如定时ping),当发现故障时执行此脚本修改域名的A记录指向备份网站的IP地址,实现故障自动切换
作者:
zhuzhenyu
时间:
2018-12-6 18:38
老哥,我就1个IP怎么办
作者:
zhongchen
时间:
2018-12-6 18:39
DNS开监控设一个备用IP不就可以了
作者:
小奶狗
时间:
2018-12-6 18:40
提示:
作者被禁止或删除 内容自动屏蔽
作者:
清歌
时间:
2018-12-6 18:41
dnspod真香
作者:
abccba94
时间:
2018-12-6 18:43
小奶狗 发表于 2018-12-6 18:40
数据啥的咋同步?还不如用dns盾搞负载均衡
rsync
作者:
倒影
时间:
2018-12-6 18:53
标记学习下。
作者:
南思
时间:
2018-12-6 19:04
提示:
作者被禁止或删除 内容自动屏蔽
作者:
南瓜头
时间:
2018-12-6 19:31
这个得大战搞搞吧 像我这种都没什么流量的 挂就挂了
作者:
solove
时间:
2018-12-7 06:48
脱裤子放屁,如果你是在乎高可用性的,就不能只有一台服务器,多服务器多层负载均衡。
只有一台,就找靠谱的商家,做好监控告警,第一时间人工排查恢复
作者:
tomcb
时间:
2018-12-7 08:28
额,什么自动切换ip,不就是个ddns么
作者:
hyllgf
时间:
2018-12-7 09:00
真香
欢迎光临 全球主机交流论坛 (https://443502.xyz/)
Powered by Discuz! X3.4