Indisponibilité de `cdn.jsdelivr.net` due à un problème de certificat
(github.com/jsdelivr)C’est un problème plus critique qu’il n’y paraît, et comme il ne semble pas y avoir de communication distincte à ce sujet, je le partage.
- L’un des domaines edge de jsDelivr,
cdn.jsdelivr.net, service CDN de l’un des plus grands projets open source au monde, est inaccessible depuis la matinée du 2024-05-02 (KST) - Il semble s’agir d’une erreur due à l’expiration du certificat SSL (
ERR_CERT_DATE_INVALID), mais le message d’erreur a depuis changé pourERR_CERT_COMMON_NAME_INVALID - En Corée, de nombreux sites utilisent jsDelivr pour servir des bibliothèques frontend JavaScript, des polices web, etc. Il est donc nécessaire de vérifier vos propres services ou projets
13 commentaires
Dans le cas de
slick-sliderdistribué par cdn.jsdelivr.net, il est aussi disponible sur cdnjs.cloudflare.com, à titre d’information.Il n’y avait pas non plus d’annonce sur Discord.
Vers l’après-midi, les signalements de pannes se sont multipliés, rien ne fonctionnait, bouhouhou
Vers 20 h 08, heure de Corée, le créateur Dmitriy Akulov (@jimaek) a publié un billet de postmortem sur l’incident.
https://www.jsdelivr.com/blog/jsdelivr-may-outage-postmortem/
En voici une traduction et un résumé approximatifs (réalisés à l’aide du LLM Claude3 Sonnet).
Dans la nuit du 2 mai 2024, le domaine CDN de jsDelivr,
cdn.jsdelivr.net, a fourni un certificat SSL expiré à des clients de certaines régions, provoquant une panne de plus de 5 heures. Les utilisateurs de plusieurs pays d’Afrique, d’Asie, d’Europe et d’Amérique latine ont été les principaux touchés.La cause de l’incident est qu’au cours du passage de Cloudflare de l’autorité de certification DigiCert à Google Trust Services, la méthode de validation du domaine a changé, et en raison de la configuration particulière de jsDelivr, l’émission automatique du certificat a échoué.
Les développeurs de jsDelivr déclarent assumer l’entière responsabilité de cet incident et indiquent qu’à l’avenir, à chaque changement important chez un fournisseur de CDN, jsDelivr désactivera ce CDN et procédera à une vérification manuelle. À plus long terme, l’équipe prévoit d’optimiser le DNS, l’équilibrage de charge et les systèmes de bascule, ainsi que d’intégrer son propre service Globalping.
Il y avait visiblement un problème de certificat tôt ce matin, mais même en cherchant je ne trouvais rien.
Ce n’est que maintenant...
J’ai aussi eu une panne sur un projet monté en urgence, donc je l’ai déplacé vers mon propre CDN..
Au fait, comment ce type de CDN est-il implémenté ?
J’ai également résolu le problème en copiant les sources restées dans le cache disque pour les déplacer vers mon propre CDN.
Vous pouvez résoudre le problème en remplaçant
cdnde cdn.jsdelivr.net parfastlyougcore.En vérifiant, j’ai vu que ce problème était déjà survenu en 2019, et il semble qu’à l’époque aussi la réponse avait été lente.
https://github.com/orioncactus/pretendard/…
Au final, on dirait que pour les bibliothèques critiques, la vraie solution est de les auto-héberger plutôt que de dépendre d’un hébergement gratuit. Des problèmes du même genre peuvent aussi finir par se produire un jour chez gcore ou Fastly.
Oh là là, moi aussi je me prends la tête avec ça en ce moment