Énoncé officiel · Module 2 · 25 %

Laboratoires
Application
distribuée

Quatre laboratoires et une démonstration pour faire passer le site de la petite entreprise du simple serveur à la grappe qui ne tombe jamais.

420-5A4-MT · Équipe de 4 · Dix mille visiteurs · Démonstration semaine 10
Le scénario

La petite entreprise devient grande

Le WordPress de la petite entreprise a survécu au module 1 : conteneurisé, composé, essaimé, sauvegardé. Mais le bouche-à-oreille n'arrête plus : dix mille visiteurs pointent à l'horizon, et une seule machine ne suffira plus. Il est temps de grandir en largeur : séparer, mettre en cache, balancer, doubler les points de faille, et prouver chaque étage avec un vrai test de charge.

À chaque étage, un test de charge BRUTAL avec JMeter documente ce que le montage encaisse : les chiffres racontent la croissance.

Votre mission

Un étage à la fois, chiffres à l'appui

1 et 2 · Séparer

WordPress et MySQL sur une instance, puis 1 service = 1 instance. Semaine 6.

3 · Mettre en cache

Varnish en avant du HTTP. Semaine 7.

4 et 5 · Balancer et redonder

HAproxy, deux Varnish, puis Heartbeat et l'IP virtuelle. Semaine 8.

6 · Le matériel réel

Tout rejouer sur la grappe de Raspberry Pi. Semaine 9, en équipe.

Nouveau cette année

Vos instances, votre choix d'infrastructure

Chaque serveur est une instance : VM VirtualBox (référence UbuntuServerAlpha, 1 Go, 12 Go), conteneurs DinD, ou VPS Linode. Comme au module 1 : mêmes gestes, mêmes livrables, même évaluation.

Option VPS : « conserver ses instances » = savoir les recréer et les restaurer en minutes, par script et sauvegardes. À la démonstration, vous relevez l'ensemble devant témoin.

Les règles du jeu

Ce qui est exigé, sans exception

Laboratoire 1 · Semaine 6 · 5 points

WordPress et MySQL : une instance, puis deux

Barème : guide (2) · configurations (1) · tableau (1) · captures (1). Minimum 2 commits en classe; terminé pour la semaine 7.

Laboratoire 2 · Semaine 7 · 5 points

Varnish : la cache en avant

Barème : guide (2) · configurations (1) · tableau (1) · captures (1). Minimum 2 commits en classe; terminé pour la semaine 8.

Laboratoire 3 · Semaine 8 · 10 points

HAproxy et Heartbeat

Barème : guide (4) · configurations (2) · tableau (2) · captures (2). Minimum 2 commits en classe; terminé pour la semaine 9.

Laboratoire 4 · Semaine 9 · 5 points · En équipe

Installation sur matériel réel

Barème : guide d'équipe (2) · configurations (1) · tableau (1) · captures (1).

Semaine 10

La démonstration, et comment se joue la note

5 points

WordPress et MySQL

5 points

Varnish

10 points

HAproxy et Heartbeat

5 points

Matériel réel

Total : 25 points · 25 % de la session. La question qui vaut de l'or, au README : d'un étage à l'autre, qu'est-ce qui s'est amélioré, et qu'est-ce que ça a coûté ?