Atom feed of this document
  

 复制

因为每个副本在对象存储中都是功能上独立的,而且客户端通常只需要有一个节点来响应,这样就被认为是一次成功的操作,诸如网络分区这样的瞬间失效就会立刻引发副本的发散。所造成的差异最终是通过异步来协调,点对点的复制器来处理的。复制器会遍历这些本地的文件系统,而且同时执行操作跨物理磁盘的负载均衡动作。

复制使用推送的模式,通常仅从本地复制纪录和文件到远程的复制器。这非常的重要,因为节点上的数据可能不属于哪里(如发生偏移或环变更的情况),而且复制器无法得知哪些数据需要从集群中的拉入的。任何包含数据的节点必须确保数据归属于哪里。环掌控着副本的所在。

复制除了创建之外就是删除了,系统中每个删除的纪录或文件都会被标记为一个墓碑。复制清理墓碑是在一致性窗口过时之后进行。此窗口定义了复制的持续时间以及失效的节点多长时间可从集群中删除。墓碑的清理必须联系到复制达到副本已收敛。

如果复制器发现了远程的磁盘驱动已经失效,复制器就会使用get_more_nodes接口,为环选择相关与之同步的节点提供依据。复制器可以在磁盘失效期间维护期望水平的复制,尽管一些副本可能不能在本地立即使用。

[注意]注意

复制器不会维护哪些诸如整个节点都宕机的失效时的期望水平的复制;多数的失效都是瞬时的。

主要的复制类型有:

  • 数据库复制,复制容器和对象。

  • 对象复制。复制对象数据。

Questions? Discuss on ask.openstack.org
Found an error? Report a bug against this page


loading table of contents...