8
分分分分分分 Chubby 1

Google 的云计算

Embed Size (px)

DESCRIPTION

Google 的云计算. 分布式锁服务 Chubby. Chubby 是什么?. 主要用于解决分布式一致性问题 在一个分布式系统中,有一组的 Process ,它们需要确定一个 Value 。于是每个 Process 都提出了一个 Value ,一致性就是指只有其中的一个 Value 能够被选中作为最后确定的值,并且当这个值被选出来以后,所有的 Process 都需要被通知到 粗粒度的分布式锁服务 Chubby 是 Google 为解决分布式一致性问题而设计的提供粗粒度锁服务的 文件系统 其他分布式系统可以使用它对共享资源的访问进行同步. Chubby 的设计目标. - PowerPoint PPT Presentation

Citation preview

Page 1: Google 的云计算

分布式锁服务 Chubby

1

Page 2: Google 的云计算

主要用于解决分布式一致性问题◦在一个分布式系统中,有一组的 Process,它们需要确定一个 Value。于是每个 Process都提出了一个 Value,一致性就是指只有其中的一个 Value能够被选中作为最后确定的值,并且当这个值被选出来以后,所有的 Process都需要被通知到

粗粒度的分布式锁服务◦ Chubby 是 Google为解决分布式一致性问题而设计的提供粗粒度锁服务的文件系统文件系统

◦其他分布式系统可以使用它对共享资源的访问进行同步

2

Page 3: Google 的云计算

需要实现的特性◦高可用性◦高可靠性◦支持粗粒度的建议性锁服务◦支持小规模文件直接存储

不作考虑的特性◦高性能◦存储能力

3

Page 4: Google 的云计算

客户端应用程序

Chubby程序库

. . .

客户端应用程序

Chubby程序库

客户端进程

主服务器

Chubby 单元的5个服务器

远程过程调用

4

Page 5: Google 的云计算

文件系统中文件操作的权限有哪些?文件系统中文件操作的权限有哪些?

这些权限之间的互斥关系是怎样的?这些权限之间的互斥关系是怎样的?

Page 6: Google 的云计算

Chubby系统本质上就是一个分布式的、存储大量小文件的文件系统◦ Chubby中的锁就是文件◦ 在 GFS的例子中,创建文件就是进行“加锁”操作,创建文件成功的那个 server其实就是抢占到了“锁”

◦用户通过打开、关闭和存取文件,获取共享锁或者独占锁;并且通过通信机制,向用户发送更新信息

6

Page 7: Google 的云计算

1

2

3 4

5

6

7

8

旧的主服务器

新的主服务器

宽限期

旧的主服务器故障

选出新的主服务器

客户端

租约期M1

租约期M2

租约期M3

租约期C1

租约期C2

租约期C3

无主服务器

危险状态临界点 安全状态临界点

KeepAlives

7

Page 8: Google 的云计算

主节点选举独占锁共享锁数据存取应用

◦获取 GFS ChunkServer信息◦元数据存储◦ ……

8