总共113327次浏览,今日100465次。

2014-07-15随笔

1 辙道辕门 发表于:2014-07-15 16:10:26 +0800

    原来域名里是不允许出现下划线的……写了下划线导致glusterfs解析出问题直接异常退出了,而且报的错还是八竿子打不到一起去的……妈蛋浪费了周五一下午和周一周二的时间……


阅览(102)评论(0) 全文

快速配置脚本备忘

1 辙道辕门 发表于:2014-07-14 16:48:36 +0800

          
          
    在执行脚本之前要做的事:

         

服务器在host表里配置好server1.com、server2.com、anotherserver.com、haserver1.com、haserver2.com,一开始IP都写成127.0.0.1。注意:按照标准,域名是不能出现下划线的。     
    设置好redis配置文件,自启动。     
    设置keepalived需要的那两个模块自启动     
    有一个默认的gluster客户端配置文件,只挂载127.0.0.1的     
    将rails项目中的mysql/redis/sidekiq配置文件里的host修改为虚拟IP对应的域名haserver1.com     
    文件存储到/mnt/gluster/下

         

脚本要做的事:

         

在host表里将已经存在的四个域名替换成设置的IP     
    生成keepalived配置文件     
    生成keepalived的脚本文件...


阅览(83)评论(0) 全文

glusterfs资料总结

1 辙道辕门 发表于:2014-07-13 16:35:43 +0800

          
          
    特点:GlusterFS是Scale-Out存储解决方案Gluster的核心,它是一个开源的分布式文件系统GlusterFS支持运行在任何标准IP网络上标准应用程序的标准客户端,如图2所示,用户可以在全局统一的命名空间中使用NFS/CIFS等标准协议来访问应用数据高可用性弹性哈希算法,无中心服务器现有程序不需要做任何修改无元数据服务,根据算法来寻找文件位置客户端上运行Glusterfs进程,它实际是Glusterfsd的符号链接,利用FUSE(File system in User Space)模块将GlusterFS挂载到本地文件系统之上,实现POSIX兼容的方式来访问系统数据。GlusterFS存储网关提供弹性卷管理和NFS/CIFS访问代理功能,其上运行Glusterd和Glusterfs进程,两者都是Glusterfsd符号链接。卷管理器负责逻...


阅览(124)评论(0) 全文

gluster部署时的坑

1 辙道辕门 发表于:2014-07-13 16:35:07 +0800

          
          
        * 我们使用的是debian6.0,源里自带的版本比较旧(3.0.5),据说bug比较多,需要自己编译3.5版。    * configure的时候指定../configure --prefix=/usr否则path会有问题    * 有资料说ubuntu8.04的fuse默认没有支持glusterfs,需要重新编译。在我们的debian6.0未发现此问题。    * 两台机器互为服务端和客户端,都需要配置/etc/glusterfs/glusterfs.vol 和glusterfsd.vol。    * “option auth.addr.brick.allow 192.168.0....


阅览(112)评论(0) 全文

redis和mysql高可用性方案归纳

1 辙道辕门 发表于:2014-07-07 11:44:07 +0800

          
          
    前提条件:对于mariadb和redis2.8或更新版本,实现在两台位于不同机房的高可用性方案。     
    要求:对客户端透明,自动切换。     
    考虑了几个方案,最后决定都使用keepalived方案来进行failover。这样的话,有以下几个问题需要解决:

         

配置keepalived,使VIP总是指向可用的服务器,并在某台服务器宕掉以后可以自动将VIP实际指向的地址漂移到另一台可用的服务器     
    双向同步mysql和redis,使得宕机切换以后,新的服务器上的redis和mysql的数据与原来宕掉的服务器相同     
    旧master恢复以后抢占回VIP     
    抢占回VIP以后,redis会直接作为master启动,另一台作为backup启动。因此master脚本需要首先从backup机复制回数据,等待5秒,然后再slaveof no one,以便继承宕机时产生的新数据     
    ...


阅览(81)评论(0) 全文