维基媒体服务器
在维基百科上的其他语言版本: de, es, fr, it, ja, ko, zh, uk
维基百科和其他维基媒体项目运行在几个满载服务器的机架上。另请参阅维基媒体基金会的技术博客和Phabricator用户的博客文章。
系统架构

网络拓扑
软件
- 我们的DNS服务器运行gdnsd。我们使用地理DNS在我们的五个数据中心(3个位于美国、1个位于欧洲、1个位于亚洲)之间根据客户端的位置分发请求。
- 我们在服务器上使用LVS来对传入请求进行负载平衡。LVS还用作内部负载平衡器来分发MediaWiki请求。对于后端监控和故障转移,我们有自己的系统,称为PyBal。
- 对于常规的MediaWiki Web请求(文章/API),我们在Apache HTTP Server前面使用Varnish和Apache Traffic Server缓存代理服务器。
- 所有的服务器都运行Debian GNU/Linux。
- 对于分布式对象存储,我们使用 Swift。
- 我们主要的Web应用程序是MediaWiki,主要由PHP(~70%)和JavaScript(~30%)组成。[1]
- 自2013年以来,我们的结构化数据存储在MariaDB中[2]。我们将wiki分散到集群中,每个集群由多个MariaDB服务器提供服务,并在单主配置中复制。
- 我们使用Memcached来缓存数据库查询和计算结果。
- 对于全文搜索,我们使用Elasticsearch (Extension:CirrusSearch)。
- https://noc.wikimedia.org/-维基媒体配置文件
主机
截至2018年5月,我们拥有以下托管设施(每个名称均来自设施公司的首字母缩写词和附近机场的首字母缩写词):
- eqiad
- 应用服务(主要)在弗吉尼亚州阿什本(华盛顿特区地区)Equinix公司。
- codfw
- 应用服务(二级)在Carrollton, Texas(达拉斯-沃斯堡地区)的CyrusOne公司。
- esams
- 缓存在荷兰阿姆斯特丹中的EvoSwitch。[3]
- ulsfo
- 在旧金山的United Layer缓存。
- eqsin
- 在新加坡中的Equinix中缓存。
历史
后端Web和数据库服务器位于阿什本,Carrollton负责处理未来的紧急后备。作为2013年数据中心RfC的结果,Carrollton被选中。在EvoSwitch,我们有一个Varnish缓存集群和几个杂项服务器。Kennisnet位置现在仅用于网络访问和路由。
Ashburn(eqiad)于2013年一月成为了主要数据中心,替代了自2004年起使用的Tampa (pmtpa与sdtpa)。在2014年4月左右,sdtpa(Equinix – 前Switch and Data – 位于 Tampa, Florida, 为pmtpa提供网络服务)被关闭,pmtpm(Hostway – 前 PowerMedium – 位于 Tampa, Florida)随后于10月被关闭。
在過去,我們有其他的緩存伺服器,包含坐落於首爾的"yaseo", Yahoo!以及位在巴黎的”lopar“, Lost Oasis。WMF 2010–2015 戰略計劃達到目標指出:“應在關鍵的地理位置適當的增加緩存伺服器中心,以確保任何地方的讀者都可以獲得相同的加載速度“
EvoSwitch和Kennisnet被公认为他们的in-kind捐赠的捐助者。参见当前的捐助者名单。
服务器角色页面上曾经提供的服务器及其功能列表;目前没有公开维护这样的列表(也许私有racktables 工具有一个)。过去可以在icinga上看到按类型分组的所有服务器的紧凑表,但现在不再公开可用。puppet configuration为每个服务器运行的软件提供了很好的参考。
状态和监控
如果您想知道维基媒体服务器是否过载,或者您只想查看它们的运行情况,您可以查看以下站点之一。
- https://www.wikimediastatus.net/
- Grafana
数据中心概览总带宽、非空闲 CPU 和每组服务器的负载;版本也存在per-subcluster dropdown和没有图表的总数(2019年7月下线)
- Icinga (私有)
- 网络延迟
如果您实时看到错误,请访问irc.libera.chat上的#wikimedia-tech连接。检查主题以查看是否有人已经在调查您遇到的问题。如果没有,请向频道报告您的问题。如果您能报告具体的症状,包括任何错误消息的确切文本、您在错误发生前所做的事情以及产生错误的服务器(如果您能告诉的话),那将会很有帮助。
能源使用
可持续发展倡议旨在通过呼吁使用可再生能源为服务器供电来减少服务器对环境的影响。
维基媒体基金会的服务器分布在美国弗吉尼亚州、德克萨斯州和旧金山、欧洲的阿姆斯特丹和亚洲的新加坡的五个托管数据中心。截至2016年5月,服务器使用222kW,总计每年约2GWh的电能。相比之下:美国家庭平均每年使用11MWh,德国平均为3MWh/年。
阿姆斯特丹只有少数几台服务器使用可再生能源,其他服务器使用不同的传统能源组合。总体而言,维基媒体基金会数据中心的能源中只有9%来自可再生能源,其余的在煤炭、天然气和核能之间平均分配(分别为34%、28%和28%)。维基媒体基金会的大部分电力需求来自弗吉尼亚州和德克萨斯州,不幸的是,这两个国家都拥有大量使用化石燃料的电网。
服务器名称 | 数据中心位置 | 提供者 | 开启时间 | 平均能耗(千瓦) | 能源 | 碳足迹(CO2/年) | 可再生选择和成本 |
---|---|---|---|---|---|---|---|
eqiad | Ashburn, VA
20146-20149 USA |
Equinix (网站) | 2011年2月 | 2016年5月:130
2015年5月:152 |
32% 煤
20% 天然气 25% 核能 17% 再生能源 |
1,040,000 lb = 520 short tons = 470 metric tons = 0.32 * 130 kW * 8765.76 hr/yr * 2.1 lb CO2/kWh for coal + 0.20 * 130 kW * 8765.76 hr/yr * 1.22lb CO2/kWh for nat gas + 0.25 * 130 kW * 8765.76 hr/yr * 0 lb CO2/kWh for nuclear + 0.17 * 130 kW * 8765.76 hr/yr * 0 lb CO2/kWh for renewable |
2015年,Equinixmade长期承诺使用100%清洁和可再生能源。2017年,Equinix更新这一承诺。 |
codfw | Carrollton, TX
75007 USA |
CyrusOne (网站) | 2014年5月 | 2016年5月:77
2015年5月:70 |
23% 煤
56% 天然气 6% 核能 1% 水力/生物质/太阳能/其他 14% 风能 |
790,000 lb = 400 short tons = 360 metric tons = 0.23 * 77 kW * 8765.76 hr/yr * 2.1 lb CO2/kWh for coal + 0.56 * 77 kW * 8765.76 hr/yr * 1.22lb CO2/kWh for nat gas + 0.06 * 77 kW * 8765.76 hr/yr * 0 lb CO2/kWh for nuclear + 0.15 * 77 kW * 8765.76 hr/yr * 0 lb CO2/kWh for renewables |
? |
esams | Haarlem
2031 BE Netherlands |
EvoSwitch (网站) | 2008年12月 | 2016年5月:<10
2015年5月:10 |
风电、水电、生物质的结合 | 0 | 不适用 |
ulsfo | San Francisco, CA
94124 USA |
UnitedLayer (网站) | 2012年6月 | 2016年5月:< 5
2015年5月:< 5 |
25% 天然气
23% 核能 30% 再生能源 6% 水力 17% 未指定 (PG&E) |
13,000 lb = 6.7 short tons = 6.1 metric tons (+ unspecified) = 0.00 * 5 kW * 8765.76 hr/yr * 2.1 lb CO2/kWh for coal + 0.25 * 5 kW * 8765.76 hr/yr * 1.22lb CO2/kWh for nat gas + 0.23 * 5 kW * 8765.76 hr/yr * 0 lb CO2/kWh for nuclear + 0.36 * 5 kW * 8765.76 hr/yr * 0 lb CO2/kWh for hydro/renewable + 0.17 * 5 kW * 8765.76 hr/yr * ? lb CO2/kWh for unspecified |
? |
eqsin | Singapore | Equinix (网站) | ? | ? | ? | ? | ? |
参见
更多硬件信息
- 技术常见问题解答——硬件怎么样?
- 您在工作中的捐赠:维基百科的新服务器, by Brion Vibber, 02-12-2009
- wikitech:Clusters – 维基媒体集群上的技术信息和通常更新的信息
管理员日志
- 服务器管理员日志——记录服务器更改(尤其是软件更改)
异地流量页面
长期计划
历史信息
- 缓存策略(2006年的草案)
- PHP缓存和优化(2007年的草案)
- 到2007年的硬件订单
参考资料
- ↑ 参见MediaWiki analysis和MediaWiki WMF-supported extensions analysis。
- ↑ "Wikipedia Adopts MariaDB" [维基百科采用MariaDB] (text/html). blog.wikimedia.org. Wikimedia Foundation, Inc. 2013-04-22. Retrieved 2014-07-20.
- ↑ 在2019年9月6日/7日遭受了一次重大的DoS攻击。参见维基媒体基金会网站上的相关文章。