当前位置:数据中心行业动态 → 正文

Github工程师分享:Github数据中心的演变

责任编辑:editor006 作者:谢涛编译 |来源:企业网D1Net  2017-10-17 17:20:43 本文摘自:it168网站

近日,GitHub网站可靠性工程师、经理skottler在githubengineering.com发表了一篇博客,介绍了Github数据中心升级的相关事宜。在过去的18个月里,他们对GitHub的物理基础设施进行了大量的投入。其目标是改进GitHub系统的冗余性和全局可用性。在这样做的基础上,他们将扩展计算和存储空间,以支持其不断增长的用户群。以下内容来自skottler的博文:

概述

我们有四个设备,其中两个是“中转点”,我们称之为“存在点”(points of presence ,POP),其中两个是数据中心。先为大家说明一下我们的规模,我们已经为GitHub.com的用户存储了PB级的Git数据,并在传输、网络交换和私有网络接口上拥有大约100Gb / s的速度,以满足每秒数千个请求。我们的网络和设施是使用一个 hub-and-spoke设计来建造的。我们在西雅图和弗吉尼亚北部地区运营着我们自己的主干网,通过受保护的光纤提供更稳定的延迟和吞吐量。

POP是一些主要由网络设备组成的机柜。他们被安置在具有高度集中的中转供应商和接入区域互联网交换机的设施中。这些设施不存储客户数据,而是专注于互联网和主干网连接性,以及直接连接和Amazon Web服务的私有网络接口。目前,我们在弗吉尼亚州北部有一个POP,在西雅图的地铁区有一个,每个都独立地连接到在各自地理区域的中转供应商和数据中心。

不过,这些连接好的POP有一些消极面,导致我们需要选择单独的数据中心来存储客户数据和服务请求。一方面,由于对各种各样的交换选项的空间需求,我们使用的设施如POP更难以获得空间。由于这种对空间的需求,经常会有更少的电力供应,这使得我们无法部署高密度的存储和计算柜。因此,数据中心在设施不太连通的独立的围笼里,我们利用POP和数据中心之间的metro wave和被动式密集波分复用(DWDM)来连接它们。目前的POP是一对一的数据中心,所以我们在美国大陆的每个海岸都有一个数据中心。

设施之内

尽管POP和数据中心的围笼摆放和部署的方式有些不同,但我们仍然有一套关于如何建造我们的设施的共同原则。我们的目标是使柜子类型尽可能地均匀,以增加可重复性。在POP中只有一种柜子,包括管理和生产边界路由器、光学网络设备和足够的计算硬件来运行核心服务。我们的数据中心有三种不同类型的柜子——网络、计算和存储。大部分的柜子都是用于计算和存储的硬件,每一种都是在特定的柜子里,而不是混合在一起,允许该层独立扩展。我们关注的另一件事是,我们的基础设施和数据中心提供商之间的交叉连接有明显的分离。在POP中,我们使用预先标注的和电缆连接的分界点来添加新的中转、传输或直接连接供应商,这是一个与补丁面板的单边交互的问题。

数据中心是通过使用结构化的布线来简化增加新容量的。建造西海岸的数据中心时,结构的布线被部署在整个空间,包括尚未使用的机柜位置。每个存储和计算柜都通过一个上方的补丁面板连接到结构化的布线。每个柜侧补丁面板都连接到一对匹配的面板上,它们位于一对网络柜之间的两个柱架上。在网络柜中,将一个柜子连接到脊柱和聚合开关,就需要修补从叶片开关和控制台设备到头顶面板的一系列连接,然后从两柱架到网络柜打补丁。这两个网络补丁布置是通过使用预先标注的和锥形的光纤织机完成的,这有助于保持网络柜的整洁,尽管它们的光纤密度很高。


▲图片来源网络,与内容无关

扩展计算和存储

我们与一个机柜集成商紧密合作,以处理机架和堆叠、电缆、验证和物流事务。当一个关于在我们的一个数据中心扩展计算和/或存储能力的项目被启动时,第一步要决定是使用我们已经构建的现有的机柜配置,还是设计一个新的。除非我们正在部署一种新型的机柜,或者对底架和sled的配置做出改变,这一过程包括从供应商那里获得报价和交货时间,确保机柜布局符合我们的预期,然后下订单。一旦所有的部件都采购完成,机架集成商就会建造机柜,最终把它们装进一个适合货运的集装箱里。

在我们的一个设施到达后,机柜在数据中心的目标位置部署。网络配置是预先生成的,在机柜离开构建站点的时候已经在开关上了,所以需要打开一套新的柜子的所有东西为每一个打补丁,布置电源电路,并为它们内部的硬件供电。从集成商的机柜布局数据导入到我们的硬件管理系统gPanel,将序列号映射到机架单元和附件。gPanel通过无状态映像提供硬件发现,该映像在当前未安装的所有底架上运行。在第一次启动时,每个底架都进入一个未知状态,然后通过状态机来配置像iDRAC这样的设备,确保BMC、BIOS和驱动固件与我们在其他地方生产的版本匹配,然后验证机器的健康状况。一旦这些步骤完成,这个盒子就会在就绪状态下结束,并且可以通过gPanel响应请求。

新存储和计算柜的部署使用这种方法是高度可复制的,允许我们自信地在数据中心中扩展我们的物理覆盖区。在目前的情况下,这一过程允许我们为公司的工程师们提供硬件,在同一天内,他们的机柜预置好并供电。

这是我们最近添加到西雅图数据中心的一个计算柜:

结论

我们对数据中心和网络的改进使我们能够继续自信地扩展我们的物理基础设施。引入可重复的过程以增加新的容量,并将区域网络边缘从我们的计算和存储系统中分离出来,这使我们能够进入基础设施的下一阶段增长。

原文链接:https://githubengineering.com/evolution-of-our-data-centers/

关键字:数据中心Githubsled

本文摘自:it168网站

x Github工程师分享:Github数据中心的演变 扫一扫
分享本文到朋友圈
当前位置:数据中心行业动态 → 正文

Github工程师分享:Github数据中心的演变

责任编辑:editor006 作者:谢涛编译 |来源:企业网D1Net  2017-10-17 17:20:43 本文摘自:it168网站

近日,GitHub网站可靠性工程师、经理skottler在githubengineering.com发表了一篇博客,介绍了Github数据中心升级的相关事宜。在过去的18个月里,他们对GitHub的物理基础设施进行了大量的投入。其目标是改进GitHub系统的冗余性和全局可用性。在这样做的基础上,他们将扩展计算和存储空间,以支持其不断增长的用户群。以下内容来自skottler的博文:

概述

我们有四个设备,其中两个是“中转点”,我们称之为“存在点”(points of presence ,POP),其中两个是数据中心。先为大家说明一下我们的规模,我们已经为GitHub.com的用户存储了PB级的Git数据,并在传输、网络交换和私有网络接口上拥有大约100Gb / s的速度,以满足每秒数千个请求。我们的网络和设施是使用一个 hub-and-spoke设计来建造的。我们在西雅图和弗吉尼亚北部地区运营着我们自己的主干网,通过受保护的光纤提供更稳定的延迟和吞吐量。

POP是一些主要由网络设备组成的机柜。他们被安置在具有高度集中的中转供应商和接入区域互联网交换机的设施中。这些设施不存储客户数据,而是专注于互联网和主干网连接性,以及直接连接和Amazon Web服务的私有网络接口。目前,我们在弗吉尼亚州北部有一个POP,在西雅图的地铁区有一个,每个都独立地连接到在各自地理区域的中转供应商和数据中心。

不过,这些连接好的POP有一些消极面,导致我们需要选择单独的数据中心来存储客户数据和服务请求。一方面,由于对各种各样的交换选项的空间需求,我们使用的设施如POP更难以获得空间。由于这种对空间的需求,经常会有更少的电力供应,这使得我们无法部署高密度的存储和计算柜。因此,数据中心在设施不太连通的独立的围笼里,我们利用POP和数据中心之间的metro wave和被动式密集波分复用(DWDM)来连接它们。目前的POP是一对一的数据中心,所以我们在美国大陆的每个海岸都有一个数据中心。

设施之内

尽管POP和数据中心的围笼摆放和部署的方式有些不同,但我们仍然有一套关于如何建造我们的设施的共同原则。我们的目标是使柜子类型尽可能地均匀,以增加可重复性。在POP中只有一种柜子,包括管理和生产边界路由器、光学网络设备和足够的计算硬件来运行核心服务。我们的数据中心有三种不同类型的柜子——网络、计算和存储。大部分的柜子都是用于计算和存储的硬件,每一种都是在特定的柜子里,而不是混合在一起,允许该层独立扩展。我们关注的另一件事是,我们的基础设施和数据中心提供商之间的交叉连接有明显的分离。在POP中,我们使用预先标注的和电缆连接的分界点来添加新的中转、传输或直接连接供应商,这是一个与补丁面板的单边交互的问题。

数据中心是通过使用结构化的布线来简化增加新容量的。建造西海岸的数据中心时,结构的布线被部署在整个空间,包括尚未使用的机柜位置。每个存储和计算柜都通过一个上方的补丁面板连接到结构化的布线。每个柜侧补丁面板都连接到一对匹配的面板上,它们位于一对网络柜之间的两个柱架上。在网络柜中,将一个柜子连接到脊柱和聚合开关,就需要修补从叶片开关和控制台设备到头顶面板的一系列连接,然后从两柱架到网络柜打补丁。这两个网络补丁布置是通过使用预先标注的和锥形的光纤织机完成的,这有助于保持网络柜的整洁,尽管它们的光纤密度很高。


▲图片来源网络,与内容无关

扩展计算和存储

我们与一个机柜集成商紧密合作,以处理机架和堆叠、电缆、验证和物流事务。当一个关于在我们的一个数据中心扩展计算和/或存储能力的项目被启动时,第一步要决定是使用我们已经构建的现有的机柜配置,还是设计一个新的。除非我们正在部署一种新型的机柜,或者对底架和sled的配置做出改变,这一过程包括从供应商那里获得报价和交货时间,确保机柜布局符合我们的预期,然后下订单。一旦所有的部件都采购完成,机架集成商就会建造机柜,最终把它们装进一个适合货运的集装箱里。

在我们的一个设施到达后,机柜在数据中心的目标位置部署。网络配置是预先生成的,在机柜离开构建站点的时候已经在开关上了,所以需要打开一套新的柜子的所有东西为每一个打补丁,布置电源电路,并为它们内部的硬件供电。从集成商的机柜布局数据导入到我们的硬件管理系统gPanel,将序列号映射到机架单元和附件。gPanel通过无状态映像提供硬件发现,该映像在当前未安装的所有底架上运行。在第一次启动时,每个底架都进入一个未知状态,然后通过状态机来配置像iDRAC这样的设备,确保BMC、BIOS和驱动固件与我们在其他地方生产的版本匹配,然后验证机器的健康状况。一旦这些步骤完成,这个盒子就会在就绪状态下结束,并且可以通过gPanel响应请求。

新存储和计算柜的部署使用这种方法是高度可复制的,允许我们自信地在数据中心中扩展我们的物理覆盖区。在目前的情况下,这一过程允许我们为公司的工程师们提供硬件,在同一天内,他们的机柜预置好并供电。

这是我们最近添加到西雅图数据中心的一个计算柜:

结论

我们对数据中心和网络的改进使我们能够继续自信地扩展我们的物理基础设施。引入可重复的过程以增加新的容量,并将区域网络边缘从我们的计算和存储系统中分离出来,这使我们能够进入基础设施的下一阶段增长。

原文链接:https://githubengineering.com/evolution-of-our-data-centers/

关键字:数据中心Githubsled

本文摘自:it168网站

电子周刊
回到顶部

关于我们联系我们版权声明隐私条款广告服务友情链接投稿中心招贤纳士

企业网版权所有 ©2010-2024 京ICP备09108050号-6 京公网安备 11010502049343号

^