gluster的使用示例

这一节我们来演示搭建一个gluster集群,为简单起见,我们这个集群只有3个节点:192.168.2.15、192.168.2.63、192.168.2.114,名称分别设置为node1、node2、node3。

一、gluster选举流程

node1:

node2:

node3:

Continue reading “gluster的使用示例”

gluster的安装及使用

一、gluster的安装

gluster采用了go语言进行开发,因此gluster具有优异的跨平台性能,gluster是开源的、免费的,采用GPLv3协议进行发布。

gluster的开源项目地址:https://gitee.com/johng/gluster

 

安装方式1(推荐):

gluster提供了各个平台预编译好的二进制版本(推荐),下载地址是:https://gitee.com/johng/dists/tree/master/gluster/

gluster不需要任何的运行环境依赖,用户根据自己运行的平台选择对应的二进制文件下载运行即可。

 

安装方式2:

您也可以自行下载源代码进行编译安装,所使用到的编译环境除了go语言开发环境外,还包括gluster使用到的轻量级框架gf,开源项目地址:https://gitee.com/johng/gf

如果预编译的常用平台版本中没有您需要的版本,那么您可以选择自行进行编译安装。 Continue reading “gluster的安装及使用”

gluste的介绍及设计

一、gluster的介绍

gluster是一款轻量级高性能的分布式集群管理软件,实现了分布式软件架构中的常用核心组件,包括:
1、服务配置管理中心
2、服务注册与发现
3、服务健康检查
4、服务负载均衡
gluster的灵感来源于ZooKeeper及Consul,它们都实现了类似的分布式组件,但是gluster更加的轻量级、低成本、易维护、架构清晰、简单实用、性能高效,这也是gluster设计的初衷。

二、gluster的特点

1、开源、免费、跨平台;
2、使用RAFT算法实现分布式一致性;
3、使用通用的REST协议提供API操作;
4、使用分布式KV键值存储实现服务的配置管理;
5、超高读写性能,适合各种高并发的应用场景;
6、支持集群分组,不同的集群之间数据相互隔离;
7、配置管理简单,且仅提供实用的API接口以及终端管理命令,轻量级、低成本、易维护; Continue reading “gluste的介绍及设计”

rsync的核心算法

rsync是unix/linux下同步文件的一个高效算法,它能同步更新两处计算机的文件与目录,并适当利用查找文件中的不同块以减少数据传输。rsync中一项与其他大部分类似程序或协定中所未见的重要特性是镜像是只对有变更的部分进行传送。rsync可拷贝/显示目录属性,以及拷贝文件,并可选择性的压缩以及递归拷贝。rsync利用由Andrew Tridgell发明的算法。这里不介绍其使用方法,只介绍其核心算法。我们可以看到,Unix下的东西,一个命令,一个工具都有很多很精妙的东西,怎么学也学不完,这就是Unix的文化啊。

本来不想写这篇文章的,因为原先发现有很多中文blog都说了这个算法,但是看了一下,发现这些中文blog要么翻译国外文章翻译地非常烂,要么就是介绍这个算法介绍得很乱让人看不懂,还有错误,误人不浅,所以让我觉得有必要写篇rsync算法介绍的文章。(当然,我成文比较仓促,可能会有一些错误,请指正) Continue reading “rsync的核心算法”

一键安装Docker图形化管理界面-Shipyard

Shipyard是一款开源的图形化的Docker管理工具,记得以前安装很麻烦的,现在官方有了自动安装脚本,使用非常方便。复制、粘贴、使用,就这么简单。先不研究他是如何实现的,安装使用起来再说。

Continue reading “一键安装Docker图形化管理界面-Shipyard”