Saviez-vous que les dernières élections municipales du 3 novembre 2013 n’étaient pas comme les autres? Mis à part les nombreuses candidatures, la participation élevée ou les élus, sachez que les technologies mises en place pour recueillir et afficher les résultats étaient très avant-gardistes. Le Ministère des Affaires municipales, des Régions et de l’Occupation du territoire a eu recours à l’infonuagique pour l’hébergement web des élections municipales le 3 novembre dernier.
Le MAMROT a pour mission d’appuyer l’administration des municipalités. Le Ministère est aussi responsable d’appliquer la Loi sur les élections et les référendums dans les municipalités et de promouvoir l’exercice de la démocratie municipale en coordonnant les élections municipales avec le Directeur général des élections du Québec (DGEQ). Les élections municipales sont prévues à date fixe le premier dimanche de novembre tous les quatre ans. Depuis 2005, les élections générales se tiennent simultanément dans toutes les municipalités québécoises.
Des élections simultanées signifient beaucoup d’utilisateurs sur une courte période de temps. Malgré ce grand achalandage, les systèmes doivent rester fiables, disponibles, performants et sécuritaires. Le MAMROT a donc fait appel à l’expertise d’Evollia dans la mise en place et la configuration d’infrastructures temporaires sur le nuage d’Amazon Web Services (AWS).
Les différents volets du projet
Ayant connu des ennuis techniques avec les deux dernières élections générales municipales, cette année, le MAMROT s’était donné une obligation de réussir ce projet. Pour y arriver, Evollia a pris en charge différents volets de l’hébergement pour s’assurer qu’aucune composante ne s’incline devant l’achalandage monstre à venir.
DNS
Par le passé, cette composante avait connu des ennuis et nous voulions mettre toutes les chances de notre côté pour qu’ils restent disponibles contre vents et marées. Les serveurs DNS d’Amazon sont répartis à travers le monde, ce qui procure un niveau de fiabilité et de performance inégalée. Le DNS est en quelque sorte un système de bottin pour les adresses IP. Ce n’est pas la composante la plus complexe, mais cette portion d’une solution d’hébergement doit être performante et très fiable.
RÉSEAU DISTRIBUTION DE CONTENU (CDN)
Le site du ministère et le micro-site informationnel des élections municipales allaient être les portes d’entrées pour les sites des résultats. Ces sites sont mieux référencés que les sites de résultats. Par le passé, ces sites n’avaient pas tenu le coup. Pour éviter de les déplacer, nous avons installé le service CloudFront d’Amazon en avant des sites ministériels. Ce service a agi comme un bouclier en protégeant les sites contre les demandes trop fréquentes au niveau des pages et des images. Ainsi, la majorité des requêtes des internautes dans les jours précédents, pendant et après l’élection étaient servis directement par ce service.
Au plus fort de la soirée, vers 21h40, ces sites accueillaient sans flancher 11 400 visiteurs simultanés.
SAISIE DES RÉSULTATS
La saisie des résultats s’est fait sur des serveurs web configurés derrière un répartiteur de charge. Toutefois, le gros du travail fut de configurer un groupe d’autoscaling. Un groupe d’autoscaling permet de faire varier très rapidement le nombre de machines. Il permet même d’automatiser l’augmentation et la diminution du nombre de ces machines. Des alarmes ont été configurées sur le parc informatique pour lui permettre de s’ajuster automatiquement selon l’affluence.
La puissance du serveur de base de données, quant à lui, s’est fait ajusté à plusieurs reprises pendant la période électorale. Les services RDS d’Amazon nous ont permis d’ajuster sa capacité sur demande.
LA DIFFUSION DES RÉSULTATS
L’affluence la plus considérable allait bien entendu être les milliers de citoyens qui allait se rendre pour consulter les résultats de l’élection. Pour réduire les risques et pour simplifier la solution, nous avons opté pour éliminer tout élément transactionnel. En d’autre mots, nous avons hébergé et servi aux internautes des fichiers standards ou statiques. Amazon S3 est un service d’hébergement de fichiers réseau très fiable et très peu dispendieux. Il permet aussi de servir des pages via le web avec le protocole HTTP. En empruntant cette avenue, nous avons pratiquement éliminé les risques que ce site flanche au courant de la soirée. Nous nous sommes appuyé sur une technologie simple, robuste et prévue pour la cavalerie!
Autre innovation, le site des résultats était alimenté par des données ouvertes. L’application de saisie écrivait des fichiers de données de résultats électoraux en format JSON sur le site donnees.electionsmunicipales.gouv.qc.ca. Le site resultats.electionsmunicipales.gouv.qc.ca s’alimentait à même ce dépôt de données. Ainsi, tout développeur d’application externe avait les mêmes données en même temps.
Les élections en chiffres
1 100 présidents d’élections se sont connectés entre 20h00 et le lendemain pour saisir les résultats de leur municipalité. Au plus fort de la soirée à 21h40, 22 900 personnes consultaient simultanément les résultats des élections. Les 3 et 4 novembre 2013, il y a eu 692 000 visites de 446 903 visiteurs uniques qui ont visionné 4,1 millions de pages. Sur les serveurs CloudFront ou le CDN, on a enregistré tout près de 100 millions de hits (pages et images).
En conclusion
Certains se demanderont pourquoi nous avons eu recours à Amazon. Sachez, pour l’instant, qu’Amazon possède l’offre la plus innovatrice et de loin la plus complète. Certains services auxquels nous avons eu recours sont offerts uniquement par Amazon. Toutefois, avec l’avancement du projet libre Heat d’OpenStack et la quantité d’hébergeurs qui l’adopteront, il y aura davantage de choix dans les années à venir.
Pour terminer, je salue l’audace des collègues au MAMROT et au DGEQ d’essayer des solutions alternatives qui sortent des sentiers battus. Je tiens à les remercier aussi pour la confiance qu’ils nous ont témoignée tout au long du projet.