Wikipedia:Server

Da Wikipedia, l'enciclopedia libera.

La versione aggiornata di questo articolo è presente, in inglese, su meta


bussola Disambiguazione – Se stai cercando informazioni sulla gestione in Wikipedia del protocollo HTTPS, o sulla tecnologia di sicurezza adottata nei Progetti di Wikimedia Foundation, vedi Wikipedia:Server sicuro.
I server in funzione nel settembre 2004

Wikipedia e gli altri progetti Wikimedia si avvalgono del funzionamento di diversi server. I nomi dei server sono basati su famosi enciclopedisti della storia.

Elenco dei server[modifica | modifica wikitesto]

La popolarità dei progetti Wikimedia rende necessario utilizzare più di un server, su ciascuno dei quali è installato il sistema operativo GNU/Linux. Di seguito viene elencata la configurazione, aggiornata al 12 ottobre 2004:

Nome Data Funzione SO Indirizzo IP Hardware Origine nome
ariel 05/2004 Database master Fedora core 2 (64-bit) custom 207.142.131.244 2U, 2 x Opteron 248, 8 GB (8x1G) PC2700 registered ECC RAM, 6x73GB 15K SCA SCSI drives (4 RAID 1+0 (146 GB), 2 RAID 1 (72 GB)) Ariel Durant
suda 01/2004 Database slave and fallback Fedora core 2 (64-bit) 207.142.131.226 2U, 2 x Opteron 246, 4 GB (4x1G) PC2700 registered ECC RAM, 4x146GB SCSI RAID 1+0 (292 GB) and 2x36GB SCA SCSI RAID 1 (36 GB) Suda
bacon 08/2004 Database slave. Fedora core 2 (64bits) 207.142.131.200 2U, 2xOpteron 242 1.6 GHz, 4 GB (4x1G) PC2700 registered ECC RAM, 6x200GB SATA RAID 10 Francis Bacon
albert 08/2004 NFS storage server. Burning in by using it as a database server. SUSE Linux 9.1 207.142.131.201 2U, 2xOpteron 242 1.6 GHz, 1 GB (2x512M) PC2700 registered ECC RAM, 6x250GB SATA (RAID 5) Albertus Magnus
zwinger 01/2004 NFS, mail, Apache (solo download), DNS, coda (sperimentale) Redhat 9 207.142.131.234 1U, 1 x Pentium 4 2.6 GHz, 1 GB (cap?) unbuf non-ECC DDR400 RAM, 250 GB SATA (details) Theodor Zwinger
browne 01/2004 Squid Fedora core 2 207.142.131.229 1U, 1 x Pentium 4 2.6 GHz, 4 GB (4x1G) unbuf non-ECC DDR400 RAM, 80 GB SATA Thomas Browne
coronelli 01/2004 Squid Fedora core 2 207.142.131.230 1U, 1 x Pentium 4 2.6 GHz, 3 GB (2x1G? +?) unbuf non-ECC DDR400 RAM, 80 GB SATA Vincenzo Coronelli
maurus 05/2004 Squid Fedora core 2 207.142.131.238 1U, 1 x Pentium 4 2.8 GHz, 4 GB (4x1G) unbuf DDR 400 ECC RAM, 80 GB SATA Rabanus Maurus
rabanus 05/2004 Squid Fedora core 2 207.142.131.239 1U, 1 x Pentium 4 2.8 GHz, 4 GB (4x1G) unbuf DDR 400 ECC RAM, 80 GB SATA Rabanus Maurus
will 05/2004 Squid Fedora core 2 207.142.131.243 1U, 1 x Pentium 4 2.8 GHz, 4 GB RAM, 2 x 200 GB SATA in RAID 1 (details) Will Durant
bart 01/2004 Squid, 1120 MB memcached Fedora core 2 207.142.131.227 1U, 1 x Pentium 4 2.6 GHz, 4 GB (4x1G) unbuf non-ECC DDR400 RAM, 80 GB SATA Bartholomeus de Glanvilla
bayle 01/2004 Apache, 1120 MB memcached, switched between Squid and Apache as needed Fedora core 2 207.142.131.228 1U, 1 x Pentium 4 2.6 GHz, 2 GB (2x1G) unbuf non-ECC DDR400 RAM, 80 GB SATA Pierre Bayle
diderot 08/2004 Apache. Fedora core 2 207.142.131.250 1U, 1 x Pentium 4 3 GHz, 0.5 GB (2x256M) unbuf DDR400 ECC RAM, 200 GB SATA Denis Diderot
goeje 08/2004 Apache. Fedora core 2 207.142.131.198 1U, 1 x Pentium 4 3 GHz, 0.5 GB (2x256M) unbuf DDR400 ECC RAM, 200 GB SATA Michael Jan de Goeje
yongle 05/2004 Apache, 1960 MB memcached Fedora core 2 207.142.131.237 1U, 1 x Pentium 4 2.8 GHz, 4 GB (4x1G) unbuf DDR 400 ECC RAM, 80 GB SATA Imperatore Yongle
isidore 01/2004 Apache, 1 tugelacache Fedora core 2 207.142.131.231 1U, 1 x Pentium 4 2.6 GHz, 1 GB (cap?) unbuf non-ECC DDR400 RAM, 80 GB SATA Isidoro di Siviglia
moreri 01/2004 Apache, 280 MB memcached Fedora core 2 207.142.131.232 1U, 1 x Pentium 4 2.6 GHz, 1 GB (cap?) unbuf non-ECC DDR400 RAM, 80 GB SATA Louis Moréri
vincent 01/2004 Apache Fedora core 2 207.142.131.233 1U, 1 x Pentium 4 2.6 GHz, 1 GB (cap?) unbuf non-ECC DDR400 RAM, 80 GB SATA Vincenzo di Beauvais
avicenna 08/2004 Apache Fedora core 2 207.142.131.249 1U, 1 x Pentium 4 3 GHz, 0.5 GB (2x256M) unbuf DDR400 RAM, 200 GB SATA Avicenna
dalembert 08/2004 Apache Fedora core 2 207.142.131.194 1U, 1 x Pentium 4 3 GHz, 0.5 GB (2x256M) unbuf DDR400 RAM, 200 GB SATA Jean le Rond d'Alembert
tingxi 08/2004 Apache Fedora core 2 207.142.131.195 1U, 1 x Pentium 4 3 GHz, 0.5 GB (2x256M) unbuf DDR400 RAM, 200 GB SATA Jiang Tingxi
alrazi 08/2004 Apache Fedora core 2 207.142.131.196 1U, 1 x Pentium 4 3 GHz, 0.5 GB (2x256M) unbuf DDR400 RAM, 200 GB SATA Al-Razi
friedrich 08/2004 Apache Fedora core 2 207.142.131.197 1U, 1 x Pentium 4 3 GHz, 0.5 GB (2x256M) unbuf DDR400 RAM, 200 GB SATA Friedrich Arnold Brockhaus
harris 08/2004 Apache Fedora core 2 207.142.131.199 1U, 1 x Pentium 4 3 GHz, 0.5 GB (2x256M) unbuf DDR400 RAM, 200 GB SATA John Harris
hypatia 10/2004 Apache Fedora core 2 207.142.131.212 1U, 1x Pentium 4 3.0 GHz, 1 GB RAM, 1x 200 GB SATA Ipazia di Alessandria
humboldt 10/2004 Apache Fedora core 2 207.142.131.213 1U, 1x Pentium 4 3.0 GHz, 1 GB RAM, 1x 200 GB SATA Alexander von Humboldt
kluge 10/2004 Apache Fedora core 2 207.142.131.214 1U, 1x Pentium 4 3.0 GHz, 1 GB RAM, 1x 200 GB SATA Friedrich Kluge
avarroes 10/2004 Apache, DB backup slave Fedora core 2 207.142.131.217 1U, 1x Pentium 4 3.0 GHz, 1 GB RAM, 2x 250 GB SATA RAID 0 Averroè
khaldun 10/2004 Apache Fedora core 2 207.142.131.218 1U, 1x Pentium 4 3.0 GHz, 1 GB RAM, 2x 250 GB SATA RAID 0 Ibn Khaldun
chloe Squid in Francia, in test. Debian ? 1U, 1 x Celeron 600 MHz, 640 MB RAM, 20 GB ATA. HP Hosting Server Appliance sa1100 richiesta donatore
bleuenn Squid in Francia, in test. Debian ? 1U, 1 x Celeron 600 MHz, 640 MB RAM, 20 GB ATA. HP Hosting Server Appliance sa1100 richiesta donatore
ennael Squid in Francia, in test. Debian ? 1U, 1 x Celeron 600 MHz, 640 MB RAM, 20 GB ATA. HP Hosting Server Appliance sa1100 richiesta donatore
Diagramma dei server al 2008-10-11
  • Zwinger gestisce la posta e il file system NFS per le altre macchine.
  • Ariel è il server per il database principale, su cui gira MySQL: su di esso vengono memorizzati tutti gli articoli. Ariel ha un RAID 1+0 a quattro dischi e due dischi impostato in configurazione RAID 1 con una cache alimentata a batteria e 8 GB di RAM. Suda è il database secondario, di riserva rispetto ad Ariel. Bacon è un altro slave per il database.
  • alrazi, avicenna, dalembert, diderot, friedrich, goeje, harris, moreri, vincent, tingxi e yongle sono dei server web Apache, configurati tutti in maniera identica. I server Apache accolgono le richieste da parte degli utenti, prelevano i dati dal database se necessario, e restituiscono i risultati formattati all'utenza utilizzando il software MediaWiki implementato in PHP con la cache PHP (our experience) Turck MMCache. Questi server condividono le directory di lavoro attraverso NFS, dunque gli upload ecc. dovrebbero essere abbastanza sincronizzati.
  • I sistemi Squid Browne, coronelli, maurus, rabanus, bart and bayle mantengono grandi cache delle pagine, in modo che richieste comuni o frequenti non richiedano l'uso dei server Apache o dei database. Questi soddisfano la maggior parte delle richieste fatte dai visitatori che non hanno effettuato il login. Attualmente stanno lavorando al 75% circa delle loro possibilità, quadruplicando la capacità dei server Apache che stanno dietro di essi. Questo diventa particolarmente evidente quando una grande mole di traffico punta a una particolare pagina attraverso un collegamento web proveniente da un altro sito, poiché l'efficienza della cache per quella pagina sarà quasi del 100%. Essi eseguono anche la distribuzione del carico tra i server Apache. Il DNS Round-robin distribuisce il carico tra gli Squid. Vedi meta:cache strategy per maggiori dettagli.
  • Will è in riparazione per problemi di surriscaldamento della CPU.

Il sistema è disegnato per eseguire il failover e utilizzare le configurazioni di backup al livello di Apache e di Squid, ed è presente il supporto per il backup dei database, ma non in failover automatico.

Hosting[modifica | modifica wikitesto]

Al momento attuale tutte le apparecchiature in servizio sono ospitate in un centro dati utilizzato da Bomis.com in Florida. Lo stesso centro dati sta fornendo gratuitamente lo spazio per i rack e metà della banda. Dall'inizio del progetto fino a settembre (?) ha fornito tutta la banda.

Un'offerta di hosting e banda fatta da http://www.lost-oasis.fr/ in Francia è stata accettata e verrà utilizzata per fornire un servizio di cache Squid europeo usando chloe, bleuenn e ennael.

Dopo che i test sui sistemi siti in Francia saranno andati bene, probabilmente verranno accettate nuove offerte di hosting e banda.

Controllo[modifica | modifica wikitesto]

Wikipedia è lenta..

L'efficienza della cache Squid viene tenuta sotto controllo. Di seguito ci sono le richieste al secondo per tutti i server (in verde) e la parte relativa alla cache (in blu):

http://wikimedia.org/stats/live/org.wikimedia.all.squid.requests-hits-day.png

Una pagina di controllo "esterna" è disponibile su OpenFacts.

Anche i vecchi server web, che non sono attualmente in servizio, erano stati battezzati con nomi di enciclopedisti:

Anche se Wikipedia è libera sia nel senso di "libertà di parola", sia nel senso di "gratuito", mantenere il sito web comporta una spesa. Tu puoi aiutare acquistando nuovo hardware per i server e donandolo alla fondazione no-profit Wikimedia:

http://wikimediafoundation.org/fundraising

Note per gli Amministratori[modifica | modifica wikitesto]

Installazione di MediaWiki[modifica | modifica wikitesto]

Wikimedia usa uno script di installazione MediaWiki condiviso. Cioè, una copia degli script viene utilizzata da tutti i progetti. I singoli progetti hanno i loro propri LocalSettings.php, mentre CommonSettings.php viene usato per definire le impostazioni relative a tutti i progetti.

Il server NFS (montato su /home) contiene le impostazioni locali e gli uploads. Immagazzina anche una copia del template del codice di MediaWiki. Questo template viene copiato in ogni server Apache ogni volta che il codice viene aggiornato. Esiste uno script per fare questo: sync-common-all sotto /home/wikipedia/bin/. La ragione di questo procedimento sta nel fatto che usando NFS per fornire questi files PHP si rallenta di molto l'accesso. Devi essere su zwinger per usare sync-common-all.

Le copie locali dei files di MediaWiki sono conservate sotto /usr/local/apache/common/ (nelle sotto directory php, style e images; queste sono immagini dell'interfaccia utente (UI) MediaWiki, non uploads di file).

Webalizer[modifica | modifica wikitesto]

Le statistiche di webalizer sono generate su <project-url>/stats, ad esempio http://it.wikipedia.org/stats. Per creare una nuova serie di statistiche, crea una directory per il progetto, per esempio /home/wikipedia/htdocs/wikimedia/stats/it.wiktionary.org

Ordini e descrizioni dettagliate dell'hardware[modifica | modifica wikitesto]

  • meta:Hardware order August 2004: Search database server (bacon), NFS storage server (albert), 8 3.0 GHz P4 web servers (diderot, goeje, avicenna, dalembert, tingxi, alrazi, friedrich, harris), gigabit ethernet switch, 146 GB SCSI drive per Suda.
  • meta:Hardware order May 2004: Rimpiazzo per Geoffrin database server (ariel), tre macchine generiche 2.8 GHz P4 (maurus, rabanus, yongle) e un paio di drive 250 GB ATA. Basato su upgrade discussion April 2004.
  • meta:Hardware order January 2004: 8 macchine generiche (bart, bayle, browne, coronelli, isidore, moreri, vincent, zwinger) e 1 database server (suda).

Collegamenti esterni[modifica | modifica wikitesto]

Informazioni utili riguardanti altri siti[modifica | modifica wikitesto]