위키미디어 서버
위키백과 및 기타 위키미디어 프로젝트는 여러 데이터 센터에 있는 서버 랙에서 실행됩니다.
시스템 아키텍처
네트워크 토폴로지
네트워크 토폴로지는 위키테크의 "네트워크 설계"에 설명되어 있습니다.
소프트웨어
- 우리의 DNS 서버는 gdnsd를 실행합니다. 우리는 지리적 DNS를 사용하여 클라이언트 위치에 따라 7개 데이터 센터(미국 3개, 유럽 2개, 아시아 1개, 남아메리카 1개) 간에 요청을 분산합니다.
- 우리는 상용 서버에서 리눅스 버추얼 서버(Linux Virtual Server, LVS)를 사용하여 들어오는 요청의 부하를 분산합니다. LVS는 미디어위키 요청을 배포하기 위한 내부 로드 밸런서로도 사용됩니다. 백엔드 모니터링 및 장애 조치를 위해 PyBal이라는 자체 시스템이 있습니다.
- 일반 미디어위키 웹 요청(문서/API)의 경우 아파치 HTTP 서버 앞에 Varnish 및 아파치 트래픽 서버 캐싱 프록시 서버를 사용합니다.
- 모든 서버는 Debian GNU/Linux를 실행합니다.
- 분산 객체 스토리지의 경우 Swift를 사용합니다.
- 우리의 주요 웹 애플리케이션은 PHP(~70%)와 자바스크립트(~30%)로 작성된 미디어위키입니다.ref>See 미디어위키 분석, 미디어위키 WMF-지원 확장 기능 분석.</ref>
- 구조화된 데이터는 2013년부터 MariaDB에 저장됩니다.[1] 서버에 의해 제공됩니다.
- 데이터베이스 쿼리 및 계산 결과의 캐싱을 위해 Memcached를 사용합니다.
- 전체 텍스트 검색의 경우 Elasticsearch (Extension:CirrusSearch)를 사용합니다.
- https://noc.wikimedia.org/ – 위키미디어 환경 설정 파일.
호스팅
2024년 4월 기준으로 우리는 다음과 같은 코로케이션 시설을 보유하고 있습니다(마그루를 제외한 각 이름은 시설 회사의 약어와 인근 공항의 약어에서 파생되었습니다):
- eqiad
- 버지니아주 애쉬번(워싱턴 DC 지역)에 있는 Equinix의 응용 프로그램 서비스(기본).
- codfw
- 텍사스 캐롤턴(댈러스-포트워스 지역)에 있는 CyrusOne의 응용 프로그램 서비스(보조).
- esams
- 네덜란드 암스테르담의 EvoSwitch에서 캐싱.[2]
- ulsfo
- 샌프란시스코의 United Layer에서 캐싱.
- eqsin
- 싱가포르의 Equinix에서 캐싱.
- drmrs
- 마르세유의 Digital Realty에서 캐싱.
- magru
- 브라질 상파울루의 캐싱.
역사
백엔드 웹 및 데이터베이스 서버는 애슈번에 있으며 캐럴턴은 향후 비상 폴백을 처리합니다. 캐럴턴은 2013년 데이터센터 RfC의 결과로 이를 위해 선택되었습니다. EvoSwitch에는 Varnish 캐시 클러스터와 여러 기타 서버가 있습니다. Kennisnet 위치는 이제 네트워크 접근 및 라우팅에만 사용됩니다.
애슈번(eqiad)은 2004년부터 주요 데이터 센터였던 탬파(pmtpa 및 sdtpa)를 인수하여 2013년 1월에 기본 데이터 센터가 되었습니다. 2014년 10월 pmtpa(플로리다주 탬파에 위치한 Hostway – 이전 PowerMedium – 이전 PowerMedium)가 중단되었습니다.
과거에는 서울(yaseo, Yahoo!) 및 파리(lopar, Lost Oasis)와 같은 다른 캐싱 위치가 있었습니다. WMF 2010-2015년 전략 계획은 다음과 같은 목표 상태에 도달합니다: "라틴 아메리카, 아시아 및 중동에서 증가하는 트래픽을 관리하고 독자의 위치에 관계없이 합리적이고 일관된 로드 시간을 보장하기 위해 주요 위치에 추가 캐싱 센터."
EvoSwitch와 Kennisnet은 현물 기부에 대한 후원자로 인정받고 있습니다. 현재 후원자 목록을 참조하세요.
서버 역할 페이지에서 사용할 수 있었던 서버 및 해당 기능 목록. 그러한 목록은 현재 공개적으로 유지되지 않습니다(개인 racktables 도구에 하나가 있을 수 있음). 이전에는 icinga에서 유형별로 그룹화된 모든 서버의 컴팩트 테이블을 볼 수 있었지만 더 이상 공개적으로 사용할 수 없습니다. 퍼펫 환경설정은 각 서버가 실행하는 소프트웨어에 대한 꽤 좋은 참조를 제공합니다.
상태 및 모니터링
위키미디어 서버에 과부하가 걸렸는지 알고 싶거나 그냥 어떻게 돌아가는지 보고 싶다면 다음 사이트 중 하나를 확인할 수 있습니다.
- https://www.wikimediastatus.net/
- Grafana
총 대역폭, 유휴 상태가 아닌 CPU 및 서버 그룹당 로드가 포함된 데이터 센터 개요. 하위 클러스터별 드롭다운이 있는 버전과 그래프가 없는 총 수도 있습니다."(2019년 7월 다운)"- 시작하려면 https://grafana.wikimedia.org/ 이 필요합니다.
- 네트워킹 지연
- Icinga (개인)
실시간으로 오류가 발생하는 경우 irc.libera.chat에서 #wikimedia-tech접속 을 방문하세요. 다른 사람이 이미 당신이 겪고 있는 문제를 조사하고 있는지 알아보기 위해 주제를 확인하세요. 그렇지 않은 경우 채널에 문제를 보고하세요. 오류 메시지의 정확한 텍스트, 오류 직전에 수행한 작업 및 오류를 생성하는 서버를 포함하여 특정 증상을 보고할 수 있다면 도움이 될 것입니다.
에너지 사용
2017년 WMF 이사회는 특히 데이터 센터 주변에서 녹색 에너지를 사용하여 재단의 전반적인 환경 영향을 최소화하겠다는 약속이 담긴 결의안을 채택했습니다. 2015년에 창설된 커뮤니티 주도의 지속 가능성 이니셔티브는 서버에 전력을 공급하기 위해 재생 가능 에너지를 요구함으로써 서버의 환경적 영향을 줄이는 것을 목표로 합니다.
위키미디어 재단의 서버는 미국의 버지니아, 텍사스 및 샌프란시스코, 유럽의 암스테르담 및 마르세유, 아시아의 싱가포르에 있는 5개의 코로케이션 데이터 센터에 분산되어 있습니다.
2021년에 서버는 358.8kW(킬로와트)를 사용하여 연간 약 3.143GWh(기가와트시)의 전기 에너지를 사용했습니다. 서버의 총 탄소 발자국은 2021년에 1,073미터톤 CO2-eq였습니다.[3]
암스테르담 및 마르세유의 소수의 서버만 재생 에너지로 실행되고 다른 서버는 다른 기존 에너지 믹스를 사용합니다. 2016년, 전반적으로 위키미디어 재단 데이터 센터의 에너지 중 9%만이 재생 가능 자원에서 나왔고 나머지는 석탄, 가스 및 원자력에 균등하게 분배되었습니다(각각 34%, 28% 및 28%). 위키미디어 재단의 전기 수요 대부분은 버지니아와 텍사스에서 발생하는데, 두 지역 모두 화석 연료를 많이 사용하는 전력망을 가지고 있습니다.
서버명 | 데이터 센터 장소 | 공급자 | 개통일 | 평균 에너지 소비(kW) | 에너지 원 | 탄소 발자국(CO2/년) | 재생 가능 옵션 및 비용 |
---|---|---|---|---|---|---|---|
eqiad | Ashburn, VA
20146-20149 USA |
Equinix (웹사이트) | 2011년 2월 | 2016년 5월: 130
2015년 5월: 152 |
2016년: 32% 석탄 20% 천연 가스 25% 원자력 17% 재생에너지 |
1,040,000 lb = 520 미국톤 = 470 미터톤
= 0.32 * 130 kW * 8765.76 hr/년 * 2.1 lb CO2/kWh 석탄용 + 0.20 * 130 kW * 8765.76 hr/년 * 1.22lb CO2/kWh 천연가스용 + 0.25 * 130 kW * 8765.76 hr/년 * 0 lb CO2/kWh 원자력용 + 0.17 * 130 kW * 8765.76 hr/년 * 0 lb CO2/kWh 재생에너지용 |
2015년 Equinix는 "100% 청정 재생 에너지 사용에 대한 장기적인 약속"을 했습니다. 2017년에 Equinix는 이 약속을 갱신했습니다. |
codfw | Carrollton, TX
75007 USA |
CyrusOne (웹사이트) | 2014년 5월 | 2016년 5월: 77
2015년 5월: 70 |
2016년: 23% 석탄 50% 천연 가스 6% 원자력 1% 수력/바이오매스/태양광/기타 14% 풍력(Oncor/Ercot) |
790,000 lb = 400 미국톤 = 360 미터톤
= 0.23 * 77 kW * 8765.76 hr/년 * 2.1 lb CO2/kWh 석탄용 + 0.56 * 77 kW * 8765.76 hr/년 * 1.22lb CO2/kWh 천연가스용 + 0.06 * 77 kW * 8765.76 hr/년 * 0 lb CO2/kWh 원자력용 + 0.15 * 77 kW * 8765.76 hr/년 * 0 lb CO2/kWh 재생에너지용 |
? |
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 |
2016년: 25% 천연 가스 23% 원자력 30% 재생에너지 6% 수력 17% 지정되지 않음(PG&E) |
13,000 lb = 6.7 미국톤 = 6.1 미터톤 (+ 지정되지 않음)
= 0.00 * 5 kW * 8765.76 hr/년 * 2.1 lb CO2/kWh 석탄용 + 0.25 * 5 kW * 8765.76 hr/년 * 1.22lb CO2/kWh 천연가스용 + 0.23 * 5 kW * 8765.76 hr/년 * 0 lb CO2/kWh 원자력용 + 0.36 * 5 kW * 8765.76 hr/년 * 0 lb CO2/kWh 수력/재생에너지용 + 0.17 * 5 kW * 8765.76 hr/년 * ? lb CO2/kWh 지정되지 않은 용도 |
? |
eqsin | Singapore | Equinix (웹사이트) | ? | ? | ? | ? | ? |
drmrs | Marseille | Digital Realty (웹사이트) | ? | ? | ? | ? | ? |
같이 보기
추가 하드웨어 정보
- wikitech:Clusters – 위키미디어 클러스터에 대한 기술 및 일반적으로 최신 정보
관리자 로그
- 서버 관리자 로그 – 문서 서버 변경 사항(특히 소프트웨어 변경 사항)
오프사이트 트래픽 페이지
이력 정보
- 캐시 전략 (2006년 초안)
- PHP 캐싱 및 최적화 (2007년 초안)
- 2007년까지 하드웨어 주문
참조
- ↑ "Wikipedia Adopts MariaDB" [우리는 위키를 클러스터로 그룹화하고 각 클러스터는 단일 마스터 구성으로 복제된 여러 MariaDB] (text/html). blog.wikimedia.org. Wikimedia Foundation, Inc. 2013-04-22. Retrieved 2014-07-20.
- ↑ 2019년 9월 6/7일에 주요 DoS 공격을 받았습니다. WMF 웹사이트의 전용 기사를 참조하세요.
- ↑ 2021년 위키미디어 재단 환경 지속 가능성(탄소 발자국) 보고서