Torus v0.1.1 发布,一个针对容器集群量身打造的存储系统

jopen 6年前
   <p style="text-align: center;"><img alt="" src="https://simg.open-open.com/show/8d0f31c9d9377e2468c73f5831975490.png" /></p>    <p>Torus是一种针对容器集群量身打造的存储系统,可以为通过Kubernetes编排和管理的容器集群提供可靠可扩展的存储。这是继 etcd 、 rkt 、 flannel ,以及CoreOS Linux之后CoreOS发布的另一个开源产品。</p>    <p><strong>Torus的架构“</strong></p>    <p>现代化集群的存储必须在网络端维持统一的可用性,随着数据在不同容器中处理还需要管理访问并保障一致性,就算只是在一个应用程序内部使用,随着应用版本的增长也需要做到这几方面。</p>    <p>Torus在架构的设计上通过下列几个特性解决了这些问题:</p>    <ul>     <li>扩展性 :与etcd类似,Torus也是一种构建块,可以实现包括分布式块设备(Distributed block device)或大型对象存储在内不同类型的存储。Torus使用Go语言编写并使用gRPC协议,用户可以方便地用任何语言创建Torus客户端。</li>     <li>易用性 :专门针对集群和Kubernetes等集群流程平台(Cluster orchestration platform)设计的Torus可用简单的方法部署和运维,并可随时缩放。</li>     <li>准确性 :Torus使用etcd分布式键值数据库存储并检索文件或对象元数据。etcd为必须快速可靠执行的分布式系统核心运作提供了一个坚实、经得起考验的基础。</li>     <li>缩放性 :Torus目前可缩放至数百个节点,并可将多个共用磁盘以单一存储池的方式使用。</li>    </ul>    <p>Torus的核心是一个将接口以传统文件方式呈现的库,这个库使得存储系统能够顺利实现易于理解的基本文件操作。借助etdc的一致过程(consensus process)进行协调和检查点操作,这个分布式文件可以通过多种方式暴露给用户的应用程序。目前Torus支持通过网络块设备(Network Block Device,NBD)将这个文件以面向块(Block-oriented)的存储进行暴露。</p>    <p style="text-align: center;"><img alt="" src="https://simg.open-open.com/show/b73092b10f6bef567f93866e0556b587.png" /></p>    <p style="text-align: center;">Torus为Kubernetes的pod提供了简单的固定存储</p>    <h2>更新日志</h2>    <ul>     <li>Plenty of AoE work from <a href="/misc/goto?guid=4958991537843705059">@mdlayher</a> -- try it out on your local network (<a href="/misc/goto?guid=4958991537944368738">#168</a>, <a href="/misc/goto?guid=4958991538046096525">#262</a>, <a href="/misc/goto?guid=4958991538134422858">#248</a>, <a href="/misc/goto?guid=4958991538236697354">#218</a>,<a href="/misc/goto?guid=4958991538338955592">#191</a>, <a href="/misc/goto?guid=4958991538438580337" title="block/aoe, cmd/torusblk: allow AoE server major and minor address con…">#181</a>)</li>     <li>Reworking of torusctl (<a href="/misc/goto?guid=4958991538532014597" title="Move actions into torusctl, expose snapshot functionality.">#272</a>)</li>     <li>Snapshot functionality -- free copy on write snapshots of block volumes (<a href="/misc/goto?guid=4958991538532014597" title="Move actions into torusctl, expose snapshot functionality.">#272</a>)</li>     <li>Not panicing on small rings or single node examples (<a href="/misc/goto?guid=4958991538637490754">#263</a>)</li>     <li>Force-remove nodes from rings</li>     <li>NBD TCP server (<a href="/misc/goto?guid=4958991538738597621">#202</a>)</li>     <li>Bugfixes (<a href="/misc/goto?guid=4958991538836945352">#257</a>, <a href="/misc/goto?guid=4958991538934415720">#253</a>, <a href="/misc/goto?guid=4958991539035030503">#251</a>, <a href="/misc/goto?guid=4958991539143659141">#239</a>, <a href="/misc/goto?guid=4958991539238835310">#226</a>, <a href="/misc/goto?guid=4958991539336312477">#224</a>)</li>    </ul>    <h2>下载</h2>    <ul>     <li><a href="/misc/goto?guid=4958991539430097466" rel="nofollow">14.7 MB<strong>torus_v0.1.1_darwin_386.zip</strong></a></li>     <li><a href="/misc/goto?guid=4958991539525729778" rel="nofollow">15.8 MB<strong>torus_v0.1.1_darwin_amd64.zip</strong></a></li>     <li><a href="/misc/goto?guid=4958991539622712505" rel="nofollow">14.6 MB<strong>torus_v0.1.1_linux_386.tar.gz</strong></a></li>     <li><a href="/misc/goto?guid=4958991539717209372" rel="nofollow">15.6 MB<strong>torus_v0.1.1_linux_amd64.tar.gz</strong></a></li>     <li><a href="/misc/goto?guid=4958991539815282048" rel="nofollow">14.1 MB<strong>torus_v0.1.1_linux_arm.tar.gz</strong></a></li>     <li><a href="/misc/goto?guid=4958991539910285354" rel="nofollow"><strong>Source code</strong> (zip)</a></li>     <li><a href="/misc/goto?guid=4958991540003348621" rel="nofollow"><strong>Source code</strong> (tar.gz)</a></li>    </ul>    <p> </p>