3
Posted by alex on Apr 21st, 2008

Cet article devrait plutôt s'intituler "Tout ce que vous avez toujours voulu savoir sur les centres de données de google sans jamais oser le demander" mais je trouvais ça trop long pfff :P .

Google

Certains d'entre vous (oui oui vous devez être presqu'une dizaine à lire mon blog.. lol) me connaissez, et vous savez que j'ai toujours été fasciné par Google.(Je prévois même de me faire tatouer "Google" sur le corps... ça et un deuxième démon FreeBSD... Tout ce que je souhaite, c'est de rester geek toute ma vie, sinon j'vais avoir l'air ridicule... haha 8) ) Comme je suis aussi très intéressé par les centres de données et les télécommunications en général, il est donc normal que je passe des nuits blanches à chercher toutes sortent d'infos sur l'énorme infrastructure qui doit supporter Google et ses sites connexes.

Déja quand on sait que google possède probablement plus d'un demi million de serveur, eh bien ça mérite qu'on essait de voir comment ils organisent tout ça ! Beaucoup d'entreprises ont déjà toute la misère du monde à gêrer une centaine de PC, imaginez 500 000 qui sont répartis sur la planète ? J'avais déja eu plusieurs informations à l'aide de wikipedia (Je t'aime wiki) mais rien de bien concluant. Google est très secret sur ses infrastructures (pour quelles raisons ? J'ai quelques doutes, mais aucune certitude), cela dit j'ai trouvé un site qui regroupe beaucoup de faits (vérifiés et spéculations) sur google.

C'est ici et pour l'article sur wiki

Wikipedia

Pour complêter ce billet, en cherchant sur ... google ;) j'ai aussi trouvé des informations sur l'architecture de wikipedia, qui, elle aussi, doit être énorme. J'ai trouvé un fichier pdf particulièrement complêt que je n'ai pas encore tout lu, mais vous pouvez être certain que j'imprime ça dès que possible :)

Vous pouvez le télécharger workbook2007

Plus d'infos sur le développement de site à très large échelle: http://highscalability.com/

Conclusion ?

Quand je vois des grandes compagnies tel que iWeb (je surveille son développement depuis la fin des années 90) qui a eu une croissance phénoménale ou Google, je me dis que je pourrais, moi aussi, ouvrir un centre de données éventuellement. Certainement pas à aussi grande échelle, mais pourquoi pas quelques centaines de pieds carrées interconnectés avec Vidéotron Télécom (VTL), Cogent et Peer1 afin d'offrir de l'hébergement mutualisé ou colocation de baie ?

Avec mon projet d'hébergement gratuit (et payant, pendant un temps) j'ai beaucoup appris sur le milieu. Par exemple je sais maintenant qu'il y vraiment une demande pour de l'hébergement, tout le monde veut un petit site web. Mais j'ai aussi appris que c'était un milieu TRÈS compétitif, il ya tellement de monde qui s'improvisent hébergeurs que les clients ne savent plus quoi choisir.

C'est vrai, certains hébergeurs offrent un service de qualité (autant dans le payant que dans le gratuit), mais on s'entend que la plupart soit ils font de l'overselling ce qui se traduit par une lenteur généralisée, soit leurs supports ne sont juste pas à la hauteur ou encore ils ne sont simplement pas assez compétents pour assurez la qualité du service. Mais d'un autre coté il y a les Dieux du net, tel que Google, qui arrivent avec leurs services tel que Google Pages qui remettent sérieusement en question l'intérêt d'un hébergeur... Enfin.... Comme on dit: qui vivra, verra. ;)

Read more...
3 comments
0
Posted by alex on Apr 12th, 2008

firewall.pngSous Linux on a droit à un outil très flexible qui agit comme firewall, routeur, passerelle et etc... Cet outil s'appele iptables.

Bon soyont honnête, il est puissant et flexible, mais il est chiant à configurer et il ne garde pas sa configuration, il faut donc la refaire à chaque démarrage.
Ensuite pour bannir un IP du serveur nous avons le /etc/hosts.deny qui est très pratique. Pratique ? Oui sans aucun doute. MAIS celui ci n'agit pas au niveau de la couche réseau du kernel directement comme le fait iptable, il est lu par les différents programmes. C'est à dire que si un programme n'est pas conçu pour le lire, alors le IP en question peut toujours s'y connecter...

Voila qu'on a un problème hein... Après avoir longuement réfléchie à la meilleure façon de proceder je me suis dit "Pourquoi ne pas utiliser le hosts.deny, mais de le faire interpreter par iptables ?".

Je m'explique:

Je ne voulais pas avoir de fichiers de configuration supplémentaires juste pour stocker la liste de IP à bannir. Comme le shell est un outil très puissant, j'ai pensé qu'à l'aide d'un petit script j'arriverais à faire gober le hosts.deny à iptables pour qu'il lise la liste de IP.

Le hosts.deny, comment c'est fait ?

C'est simple la syntaxe est la suivante: SERVICE:IP

Soit par exemple: SSH:241.23.43.65

Ou pour bloqué le IP sur tous les services ALL:241.23.43.65

Une entrée par ligne.

La solution:

Tapper cette petite ligne la dans le shell pour rafraichir les règles avec les IPs dans hosts.deny. Seules les IP précédée de ALL: seront bannies.

awk -F: '$1 =="ALL" {system("/sbin/iptables -A INPUT -s "$2" -j DROP")}' /etc/hosts.deny

awk prends chaque ligne du hosts.deny, compare la première colonne si elle égale ALL,si c'est le cas on appele iptables avec le IP à bannir.

Attention: Les règles disparaissent au redémarrage, il est donc bien de mettre cette ligne la dans le /etc/rc.local aussi pour qu'elle soit executé au démarrage, ou dans un cronjob pour que vous puissiez ajouter des IPs sans vous souciez de raffraichir !

Et voila, les Ip dans votre hosts.deny seront refusés violement par votre PC :)

Have fun

0 comment
2
Posted by alex on Mar 29th, 2008

J'ai trouvé de nombreux howtos qui expliquent comment changer le papier peint du bureau xfce automatiquement à chaque X minutes.

Pour être honnête la plupart étaient très mal fait et suggèraient defaire un cronjob qui "tuait" le desktop à chaque X minutes. C'est ridicule quand on sait que xfce possède un switch pour reloader le bureau sans le tuer !

Alors voici comment:

Tout d'abord aller dans les réglages du bureau pour faire la liste.

screen.png

Ensuite créer un cron avec pour commande:

export DISPLAY=:0; /usr/bin/xfdesktop -reload

Donc par exemple

 bash-3.1# crontab -e

*/5 * * * * export DISPLAY=:0; /usr/bin/xfdesktop -reload dans votre éditeur de cronjobs (crontab -e)!

Read more...
2 comments
2
Posted by alex on Mar 29th, 2008

Salut à tous,
Alors voila récement j'ai été confronté à un problème assez gênant. En effet l'éditeur par défaut sur mon système était nano. Puisque comme tout bon unix geek je déteste nano, eh bien j'ai voulu chercher comment changer cela. C'était embetant surtout que nano n'était pas installé sur mon système, donc les utilitaires dépendant de l'éditeur (crontab entre autre) ne fonctionnaient donc plus.
L'astuce fonctionne si votre éditeur par défaut est mcedit, emacs ou autre !

Voici comment:

Tout d'abord décider l'éditeur que vous souhaitez utiliser.

Ensuite vous devez trouver la variable d'environement qui définit l'éditeur, d'après mes test elle pourrait s'appeler VISUAL ou EDITOR. (remplacer nano par l'éditeur actuel)

Tapper: set|grep nano

vous allez voir quelque chose comme ça:

bash-3.1# set|grep nano

VISUAL=nano

pour changer l'éditeur il suffit de faire

export VISUAL=vi

Vérifiez que tout a fonctionner:

bash-3.1# set|grep vi

VISUAL=vi

Et voila :)

Read more...
2 comments
Go to Top