{"id":86926,"date":"2022-04-13T01:03:52","date_gmt":"2022-04-13T03:03:52","guid":{"rendered":"https:\/\/teknomers.com\/fr\/reprise-apres-sinistre-interregionale-avec-elasticsearch\/"},"modified":"2022-04-13T01:03:52","modified_gmt":"2022-04-13T03:03:52","slug":"reprise-apres-sinistre-interregionale-avec-elasticsearch","status":"publish","type":"post","link":"https:\/\/teknomers.com\/fr\/reprise-apres-sinistre-interregionale-avec-elasticsearch\/","title":{"rendered":"Reprise apr\u00e8s sinistre interr\u00e9gionale avec Elasticsearch"},"content":{"rendered":"<p> <br \/>\n<\/p>\n<div id=\"articlebody\">\n<div class=\"separator\" style=\"clear: both;\"><img decoding=\"async\" alt=\"Reprise apr\u00e8s sinistre avec Elasticsearch\" border=\"0\" data-original-height=\"380\" data-original-width=\"728\" src=\"https:\/\/thehackernews.com\/new-images\/img\/b\/R29vZ2xl\/AVvXsEitL80zUEx6kf4-Ct4rdm9pZbZpIxWPUvi4bbasfPaAxYKwBwwgDBNOIGMrS-JxWnr1DAnzMQxnxEaG88WYMMPTqyN3-3XEqlTlMsEIaWKDwZwwmu-ov14HNytNVAXjel2vEprCLC7Gc6p9khxrGfvB22D2SV_0heTHAnSU9-ZDEncgpg37tkhfIzkH\/s728-e1000\/data.jpg\" title=\"Reprise apr\u00e8s sinistre avec Elasticsearch\"\/><\/div>\n<p>Sans surprise, ici \u00e0 <a rel=\"nofollow noopener\" href=\"https:\/\/rewind.com\/?utm_source=partner&amp;utm_medium=Blogpost&amp;utm_campaign=TheHackerNews_April2022\" target=\"_blank\">Rembobiner<\/a>, nous avons beaucoup de donn\u00e9es \u00e0 prot\u00e9ger (plus de 2 p\u00e9taoctets).  L&#8217;une des bases de donn\u00e9es que nous utilisons s&#8217;appelle Elasticsearch (ES ou Opensearch, comme on l&#8217;appelle actuellement dans AWS).  Pour le dire simplement, ES est une base de donn\u00e9es de documents qui facilite les r\u00e9sultats de recherche ultra-rapides.  La rapidit\u00e9 est essentielle lorsque les clients recherchent un fichier ou un \u00e9l\u00e9ment particulier qu&#8217;ils doivent restaurer \u00e0 l&#8217;aide de <a rel=\"nofollow noopener\" href=\"https:\/\/rewind.com\/?utm_source=partner&amp;utm_medium=Blogpost&amp;utm_campaign=TheHackerNews_April2022\" target=\"_blank\">Rembobiner<\/a>.  Chaque seconde d&#8217;indisponibilit\u00e9 compte, c&#8217;est pourquoi nos r\u00e9sultats de recherche doivent \u00eatre rapides, pr\u00e9cis et fiables.<\/p>\n<p>Une autre consid\u00e9ration \u00e9tait le d\u00e9sastre <a rel=\"nofollow noopener\" href=\"https:\/\/rewind.com\/blog\/data-recovery-services-essential-guide\/\" target=\"_blank\">r\u00e9cup\u00e9ration<\/a>.  Dans le cadre de notre <a rel=\"nofollow noopener\" href=\"https:\/\/rewind.com\/blog\/soc-2-rewind\/\" target=\"_blank\">Contr\u00f4les du syst\u00e8me et de l&#8217;organisation niveau 2 (SOC2)<\/a> processus de certification, nous devions nous assurer que nous disposions d&#8217;un plan de reprise apr\u00e8s sinistre fonctionnel pour restaurer le service dans le cas peu probable o\u00f9 toute la r\u00e9gion AWS serait en panne.<\/p>\n<p>\u00ab Une r\u00e9gion AWS enti\u00e8re ?? Cela n&#8217;arrivera jamais !  (\u00c0 l&#8217;exception de <a rel=\"nofollow noopener\" href=\"https:\/\/aws.amazon.com\/message\/12721\/\" target=\"_blank\">quand c&#8217;est arriv\u00e9<\/a>) <\/p>\n<p>Tout est possible, les choses tournent mal, et pour r\u00e9pondre \u00e0 nos exigences SOC2, nous avions besoin d&#8217;une solution fonctionnelle.  Plus pr\u00e9cis\u00e9ment, nous avions besoin d&#8217;un moyen de r\u00e9pliquer les donn\u00e9es de nos clients de mani\u00e8re s\u00e9curis\u00e9e, efficace et rentable dans une autre r\u00e9gion AWS.  La r\u00e9ponse \u00e9tait de faire ce que Rewind fait si bien &#8211; faire une sauvegarde\u00a0!<\/p>\n<p>D\u00e9couvrons comment fonctionne Elasticsearch, comment nous l&#8217;avons utilis\u00e9 pour sauvegarder des donn\u00e9es en toute s\u00e9curit\u00e9 et notre processus actuel de reprise apr\u00e8s sinistre.<\/p>\n<h2 style=\"text-align: left;\"><strong>Instantan\u00e9s<\/strong><\/h2>\n<p>Tout d&#8217;abord, nous aurons besoin d&#8217;une le\u00e7on de vocabulaire rapide.  Les sauvegardes dans ES sont appel\u00e9es <em>instantan\u00e9s<\/em>.  Les instantan\u00e9s sont stock\u00e9s dans un <em>r\u00e9f\u00e9rentiel d&#8217;instantan\u00e9s<\/em>.  Il y a <a rel=\"nofollow noopener\" href=\"https:\/\/www.elastic.co\/guide\/en\/elasticsearch\/reference\/current\/snapshots-register-repository.html#ess-repo-types\" target=\"_blank\">plusieurs types de r\u00e9f\u00e9rentiels d&#8217;instantan\u00e9s<\/a>, dont un soutenu par AWS S3.  \u00c9tant donn\u00e9 que S3 a la capacit\u00e9 de r\u00e9pliquer son contenu dans un compartiment dans une autre r\u00e9gion, c&#8217;\u00e9tait une solution parfaite pour ce probl\u00e8me particulier.<\/p>\n<p>AWS ES est livr\u00e9 avec un r\u00e9f\u00e9rentiel d&#8217;instantan\u00e9s automatis\u00e9 pr\u00e9-activ\u00e9 pour vous.  Le r\u00e9f\u00e9rentiel est configur\u00e9 par d\u00e9faut pour prendre des instantan\u00e9s toutes les heures et vous ne pouvez rien y changer.  C&#8217;\u00e9tait un probl\u00e8me pour nous parce que nous voulions un <em>du quotidien<\/em> instantan\u00e9 envoy\u00e9 \u00e0 un r\u00e9f\u00e9rentiel soutenu par l&#8217;un de nos propres compartiments S3, qui a \u00e9t\u00e9 configur\u00e9 pour r\u00e9pliquer son contenu dans une autre r\u00e9gion.<\/p>\n<table cellpadding=\"0\" cellspacing=\"0\" class=\"tr-caption-container\" style=\"float: left;\">\n<tbody>\n<tr>\n<td style=\"text-align: center;\"><img decoding=\"async\" alt=\"\" border=\"0\" data-original-height=\"82\" data-original-width=\"728\" src=\"https:\/\/thehackernews.com\/new-images\/img\/b\/R29vZ2xl\/AVvXsEhwJAIUxDaT3JdcAmTAWICwwWLLVBUBPcrfuFb0-5t9sQ3hw4vi4XQMQPKxR1nnF89qAM_WKasN3ZO_-uPWx6kfO5n6oGVRLhdhDpwlNMiU6O3mxoe4ZaUYH_wtPVnk4DCwwX3lg15RnvMk4FMsDKTDwt3T2dOoQzAy0eJ6IqsdlzoSEB6gsAt6J5wm\/s728-e100\/image-1.jpg\"\/><\/td>\n<\/tr>\n<tr>\n<td class=\"tr-caption\" style=\"text-align: center;\">Liste des instantan\u00e9s automatis\u00e9s GET _cat\/snapshots\/cs-automated-enc?v&#038;s=id<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>Notre seul choix \u00e9tait de cr\u00e9er et de g\u00e9rer notre propre r\u00e9f\u00e9rentiel d&#8217;instantan\u00e9s et nos instantan\u00e9s.<\/p>\n<p>Maintenir notre propre r\u00e9f\u00e9rentiel d&#8217;instantan\u00e9s n&#8217;\u00e9tait pas id\u00e9al et ressemblait \u00e0 beaucoup de travail inutile.  Nous ne voulions pas r\u00e9inventer la roue, nous avons donc recherch\u00e9 un outil existant qui ferait le gros du travail pour nous. <\/p>\n<h2 style=\"text-align: left;\"><strong>Gestion du cycle de vie des instantan\u00e9s (SLM)<\/strong><\/h2>\n<p>Le premier outil que nous avons essay\u00e9 \u00e9tait celui d&#8217;Elastic <a rel=\"nofollow noopener\" href=\"https:\/\/www.elastic.co\/guide\/en\/elasticsearch\/reference\/current\/snapshots-take-snapshot.html#automate-snapshots-slm\" target=\"_blank\">Gestion du cycle de vie des instantan\u00e9s (SLM)<\/a>une caract\u00e9ristique qui est d\u00e9crite comme\u00a0:<\/p>\n<p><em>Le moyen le plus simple de sauvegarder r\u00e9guli\u00e8rement un cluster.  Une politique SLM prend automatiquement des instantan\u00e9s selon un calendrier pr\u00e9d\u00e9fini.  La strat\u00e9gie peut \u00e9galement supprimer des instantan\u00e9s en fonction des r\u00e8gles de conservation que vous d\u00e9finissez.<\/em><\/p>\n<p>Vous pouvez m\u00eame utiliser votre propre r\u00e9f\u00e9rentiel d&#8217;instantan\u00e9s.  Cependant, d\u00e8s que nous avons essay\u00e9 de le configurer dans nos domaines, cela a \u00e9chou\u00e9.  Nous avons rapidement appris qu&#8217;AWS ES est une version modifi\u00e9e d&#8217;Elastic.  co&#8217;s ES et que SLM n&#8217;\u00e9tait pas pris en charge dans AWS ES.<\/p>\n<h4 style=\"text-align: left;\"><strong>Conservateur<\/strong><\/h4>\n<p>L&#8217;outil suivant que nous avons \u00e9tudi\u00e9 s&#8217;appelle <a rel=\"nofollow noopener\" href=\"https:\/\/github.com\/elastic\/curator\" target=\"_blank\">Curateur Elasticsearch<\/a>.  Il \u00e9tait open-source et maintenu par Elastic.co lui-m\u00eame. <\/p>\n<p>Curator est simplement un outil Python qui vous aide \u00e0 g\u00e9rer vos index et vos instantan\u00e9s.  Il a m\u00eame des m\u00e9thodes d&#8217;assistance pour cr\u00e9er des r\u00e9f\u00e9rentiels d&#8217;instantan\u00e9s personnalis\u00e9s, ce qui \u00e9tait un bonus suppl\u00e9mentaire.<\/p>\n<p>Nous avons d\u00e9cid\u00e9 d&#8217;ex\u00e9cuter Curator en tant que fonction Lambda pilot\u00e9e par une r\u00e8gle EventBridge planifi\u00e9e, le tout int\u00e9gr\u00e9 \u00e0 AWS SAM.<\/p>\n<p>Voici \u00e0 quoi ressemble la solution finale :<\/p>\n<div class=\"separator\" style=\"clear: both;\"><img decoding=\"async\" alt=\"\" border=\"0\" data-original-height=\"248\" data-original-width=\"728\" src=\"https:\/\/thehackernews.com\/new-images\/img\/b\/R29vZ2xl\/AVvXsEhTj1jw-Un60N5q33JKUuaoQnckx_IDtCJgof1HhqyFYvTqoc5y7a9PrF8oJblyquZgOrcs0DbJqnOiVG2l7CisAfHLplbxj5WLkOcOK7SkWViHv93n1PKikXesrXU9ifbSQIFtnSpmea3J-wD_jJeF8N6Jzhn-6lPYh8OEPxxPojZaKPcEUiUNpH3y\/s728-e100\/image-2.jpg\"\/><\/div>\n<h2 style=\"text-align: left;\"><strong>Fonction Lambda d&#8217;instantan\u00e9 ES<\/strong><\/h2>\n<p>Lambda utilise l&#8217;outil Curator et est responsable de la gestion des instantan\u00e9s et du r\u00e9f\u00e9rentiel.  Voici un sch\u00e9ma de la logique\u00a0:<\/p>\n<div class=\"separator\" style=\"clear: both;\"><img decoding=\"async\" alt=\"\" border=\"0\" data-original-height=\"627\" data-original-width=\"728\" src=\"https:\/\/teknomers.com\/fr\/wp-content\/uploads\/2022\/04\/Reprise-apres-sinistre-interregionale-avec-Elasticsearch.jpg\"\/><\/div>\n<p>Comme vous pouvez le voir ci-dessus, c&#8217;est une solution tr\u00e8s simple.  Mais, pour que cela fonctionne, nous avions besoin de quelques \u00e9l\u00e9ments pour exister\u00a0:<\/p>\n<ul>\n<li>R\u00f4les IAM pour accorder des autorisations<\/li>\n<li>Un compartiment S3 avec r\u00e9plication vers une autre r\u00e9gion<\/li>\n<li>Un domaine Elasticsearch avec des index<\/li>\n<\/ul>\n<h2 style=\"text-align: left;\"><strong>R\u00f4les IAM<\/strong><\/h2>\n<p>Les subventions S3SnapshotsIAMRole <em>conservateur<\/em> les autorisations n\u00e9cessaires \u00e0 la cr\u00e9ation du r\u00e9f\u00e9rentiel d&#8217;instantan\u00e9s et \u00e0 la gestion des instantan\u00e9s eux-m\u00eames\u00a0:<\/p>\n<div class=\"separator\" style=\"clear: both;\"><img decoding=\"async\" alt=\"\" border=\"0\" data-original-height=\"465\" data-original-width=\"728\" src=\"https:\/\/teknomers.com\/fr\/wp-content\/uploads\/2022\/04\/1649819030_313_Reprise-apres-sinistre-interregionale-avec-Elasticsearch.jpg\"\/><\/div>\n<p>Les bourses EsSnapshotIAMRole <em>Lambda<\/em> les autorisations n\u00e9cessaires au conservateur pour interagir avec le domaine Elasticsearch\u00a0:<\/p>\n<div class=\"separator\" style=\"clear: both;\"><img decoding=\"async\" alt=\"\" border=\"0\" data-original-height=\"466\" data-original-width=\"728\" src=\"https:\/\/thehackernews.com\/new-images\/img\/b\/R29vZ2xl\/AVvXsEiu2Ca63yYFfFNTX9gAF2TdZ7WI-Gr333s3N9see2x-2ZjSj9TPWGRbr45wKDwPNeeP3pK99WhT28WCfaEaBF8Wzirq8VjK-5yDm5EsSsPY-K8kmtFc0iS1-cHrv4RwuEjs5Wx9SbCcV-Uh1OmITph0MDLgRtdhSiq1KyhOx0gnCVjE5h23JLcg9GKA\/s728-e100\/code-2.jpg\"\/><\/div>\n<h2 style=\"text-align: left;\"><strong>Compartiments S3 r\u00e9pliqu\u00e9s<\/strong><\/h2>\n<p>L&#8217;\u00e9quipe avait pr\u00e9c\u00e9demment configur\u00e9 des compartiments S3 r\u00e9pliqu\u00e9s pour d&#8217;autres services afin de faciliter la r\u00e9plication entre r\u00e9gions dans Terraform.  (Plus d&#8217;infos \u00e0 ce sujet <a rel=\"nofollow noopener\" href=\"https:\/\/docs.aws.amazon.com\/AmazonS3\/latest\/userguide\/replication.html\" target=\"_blank\">ici<\/a>) <\/p>\n<p>Avec tout en place, la pile cloudformation d\u00e9ploy\u00e9e dans les tests initiaux de production s&#8217;est bien d\u00e9roul\u00e9e et nous avons termin\u00e9\u2026 ou l&#8217;avons-nous \u00e9t\u00e9\u00a0?<\/p>\n<div class=\"separator\" style=\"clear: both;\"><img decoding=\"async\" alt=\"\" border=\"0\" data-original-height=\"300\" data-original-width=\"728\" src=\"https:\/\/teknomers.com\/fr\/wp-content\/uploads\/2022\/04\/1649819031_283_Reprise-apres-sinistre-interregionale-avec-Elasticsearch.jpg\"\/><\/div>\n<h4 style=\"text-align: left;\"><strong>Sauvegarde et restauration-a-thon I<\/strong><\/h4>\n<p>Une partie de la certification SOC2 exige que vous validiez vos sauvegardes de base de donn\u00e9es de production pour tous les services critiques.  Parce que nous aimons nous amuser, nous avons d\u00e9cid\u00e9 d&#8217;organiser un &#8220;thon de sauvegarde et de restauration&#8221; trimestriel.  Nous supposerions que la r\u00e9gion d&#8217;origine avait disparu et que nous devions restaurer chaque base de donn\u00e9es \u00e0 partir de notre r\u00e9plique interr\u00e9gionale et valider le contenu.<\/p>\n<p>On pourrait penser &#8220;Oh mon Dieu, c&#8217;est beaucoup de travail inutile!&#8221;  et vous auriez \u00e0 moiti\u00e9 raison.  C&#8217;est beaucoup de travail, mais c&#8217;est absolument n\u00e9cessaire !  Dans chaque Restore-a-thon, nous avons d\u00e9couvert au moins un probl\u00e8me avec des services n&#8217;ayant pas de sauvegardes activ\u00e9es, ne sachant pas comment restaurer ou acc\u00e9der \u00e0 la sauvegarde restaur\u00e9e.  Sans parler de la formation pratique et de l&#8217;exp\u00e9rience que les membres de l&#8217;\u00e9quipe acqui\u00e8rent en faisant quelque chose qui n&#8217;est pas sous la haute pression d&#8217;une v\u00e9ritable panne.  Tout comme l&#8217;organisation d&#8217;un exercice d&#8217;incendie, nos restauration-a-thons trimestriels aident \u00e0 garder notre \u00e9quipe pr\u00e9par\u00e9e et pr\u00eate \u00e0 faire face \u00e0 toute urgence.<\/p>\n<p>Le premier ES Restore-a-thon a eu lieu des mois apr\u00e8s l&#8217;ach\u00e8vement et le d\u00e9ploiement de la fonctionnalit\u00e9 en production, de nombreux instantan\u00e9s ont donc \u00e9t\u00e9 pris et de nombreux anciens supprim\u00e9s.  Nous avons configur\u00e9 l&#8217;outil pour conserver 5 jours d&#8217;instantan\u00e9s et supprimer tout le reste.<\/p>\n<p>Toute tentative de restauration d&#8217;un instantan\u00e9 r\u00e9pliqu\u00e9 \u00e0 partir de notre r\u00e9f\u00e9rentiel a \u00e9chou\u00e9 avec une erreur inconnue et pas grand-chose d&#8217;autre \u00e0 faire.<\/p>\n<p>Les instantan\u00e9s dans ES sont incr\u00e9mentiels, ce qui signifie que plus la fr\u00e9quence des instantan\u00e9s est \u00e9lev\u00e9e, plus ils se terminent rapidement et plus leur taille est petite.  L&#8217;instantan\u00e9 initial de notre plus grand domaine a pris plus d&#8217;une heure et demie et tous les instantan\u00e9s quotidiens suivants ont pris quelques minutes\u00a0!<\/p>\n<p>Ce constat nous a conduit \u00e0 essayer de prot\u00e9ger l&#8217;instantan\u00e9 initial et d&#8217;emp\u00eacher sa suppression en utilisant un suffixe de nom (-initial) pour le tout premier instantan\u00e9 pris apr\u00e8s la cr\u00e9ation du r\u00e9f\u00e9rentiel.  Ce nom d&#8217;instantan\u00e9 initial est ensuite exclu du processus de suppression d&#8217;instantan\u00e9 par Curator \u00e0 l&#8217;aide d&#8217;un filtre regex.<\/p>\n<p>Nous avons purg\u00e9 les compartiments, les instantan\u00e9s et les r\u00e9f\u00e9rentiels S3 et recommenc\u00e9.  Apr\u00e8s avoir attendu quelques semaines pour que les instantan\u00e9s s&#8217;accumulent, la restauration a de nouveau \u00e9chou\u00e9 avec la m\u00eame erreur cryptique.  Cependant, cette fois, nous avons remarqu\u00e9 que l&#8217;instantan\u00e9 initial (que nous avons prot\u00e9g\u00e9) manquait \u00e9galement\u00a0! <\/p>\n<p>Comme il ne restait plus de cycles \u00e0 consacrer au probl\u00e8me, nous avons d\u00fb le garer pour travailler sur d&#8217;autres choses int\u00e9ressantes et g\u00e9niales sur lesquelles nous travaillons ici \u00e0 <a rel=\"nofollow noopener\" href=\"https:\/\/rewind.com\/?utm_source=partner&amp;utm_medium=Blogpost&amp;utm_campaign=TheHackerNews_April2022\" target=\"_blank\">Rembobiner<\/a>.<\/p>\n<h4 style=\"text-align: left;\"><strong>Sauvegarde et restauration-a-thon II<\/strong><\/h4>\n<p>Avant que vous ne vous en rendiez compte, le prochain trimestre commence et il est temps pour un autre marathon de sauvegarde et de restauration et nous r\u00e9alisons qu&#8217;il s&#8217;agit toujours d&#8217;une lacune dans notre plan de reprise apr\u00e8s sinistre.  Nous devons \u00eatre en mesure de restaurer les donn\u00e9es ES dans une autre r\u00e9gion avec succ\u00e8s. <\/p>\n<p>Nous avons d\u00e9cid\u00e9 d&#8217;ajouter une journalisation suppl\u00e9mentaire \u00e0 Lambda et de v\u00e9rifier quotidiennement les journaux d&#8217;ex\u00e9cution.  Les jours 1 \u00e0 6 fonctionnent parfaitement bien &#8211; les restaurations fonctionnent, nous pouvons lister tous les instantan\u00e9s, et le premier est toujours l\u00e0.  Le 7e jour, quelque chose d&#8217;\u00e9trange s&#8217;est produit &#8211; l&#8217;appel pour r\u00e9pertorier les instantan\u00e9s disponibles a renvoy\u00e9 une erreur &#8220;introuvable&#8221; uniquement pour l&#8217;instantan\u00e9 initial.  Quelle force externe supprime nos instantan\u00e9s\u00a0?\u00a0?<\/p>\n<p>Nous avons d\u00e9cid\u00e9 d&#8217;examiner de plus pr\u00e8s le contenu du compartiment S3 et de constater qu&#8217;il s&#8217;agit uniquement d&#8217;UUID (Universally Unique Identifier) \u200b\u200bavec certains objets corr\u00e9lant les instantan\u00e9s, \u00e0 l&#8217;exception de l&#8217;instantan\u00e9 initial qui manquait. <\/p>\n<p>Nous avons remarqu\u00e9 l&#8217;interrupteur \u00e0 bascule &#8220;afficher les versions&#8221; dans la console et avons pens\u00e9 qu&#8217;il \u00e9tait \u00e9trange que le compartiment ait activ\u00e9 la gestion des versions.  Nous avons activ\u00e9 la bascule de version et avons imm\u00e9diatement vu &#8220;Supprimer les marqueurs&#8221; partout, y compris un sur l&#8217;instantan\u00e9 initial qui a corrompu l&#8217;ensemble de l&#8217;instantan\u00e9. <\/p>\n<p>Avant apr\u00e8s<\/p>\n<div class=\"separator\" style=\"clear: both;\"><img decoding=\"async\" alt=\"\" border=\"0\" data-original-height=\"228\" data-original-width=\"728\" src=\"https:\/\/teknomers.com\/fr\/wp-content\/uploads\/2022\/04\/1649819031_441_Reprise-apres-sinistre-interregionale-avec-Elasticsearch.jpg\"\/><\/div>\n<p>Nous avons tr\u00e8s vite r\u00e9alis\u00e9 que le bucket S3 que nous utilisions avait une r\u00e8gle de cycle de vie de 7 jours qui purgeait tous les objets de plus de 7 jours. <\/p>\n<p>La r\u00e8gle de cycle de vie existe pour que les objets non g\u00e9r\u00e9s dans les buckets soient automatiquement purg\u00e9s afin de r\u00e9duire les co\u00fbts et de ranger le bucket.<\/p>\n<div class=\"separator\" style=\"clear: both;\"><img decoding=\"async\" alt=\"\" border=\"0\" data-original-height=\"359\" data-original-width=\"728\" src=\"https:\/\/teknomers.com\/fr\/wp-content\/uploads\/2022\/04\/1649819031_277_Reprise-apres-sinistre-interregionale-avec-Elasticsearch.jpg\"\/><\/div>\n<p>Nous avons restaur\u00e9 l&#8217;objet supprim\u00e9 et le tour est jou\u00e9, la liste des instantan\u00e9s a bien fonctionn\u00e9.  Plus important encore, la restauration a \u00e9t\u00e9 un succ\u00e8s.<\/p>\n<h2 style=\"text-align: left;\"><strong>La derni\u00e8re ligne droite<\/strong><\/h2>\n<p>Dans notre cas, Curator doit g\u00e9rer le cycle de vie des instantan\u00e9s. Tout ce que nous devions faire \u00e9tait d&#8217;emp\u00eacher la r\u00e8gle de cycle de vie de supprimer quoi que ce soit dans nos r\u00e9f\u00e9rentiels d&#8217;instantan\u00e9s \u00e0 l&#8217;aide d&#8217;un filtre de chemin \u00e9tendu sur la r\u00e8gle.<\/p>\n<p>Nous avons cr\u00e9\u00e9 un pr\u00e9fixe S3 sp\u00e9cifique appel\u00e9 &#8220;\/auto-purge&#8221; auquel la r\u00e8gle \u00e9tait \u00e9tendue.  Tout ce qui date de plus de 7 jours dans \/auto-purge serait supprim\u00e9 et tout le reste du compartiment serait laiss\u00e9 tel quel.<\/p>\n<p>Nous avons tout nettoy\u00e9 une fois de plus, attendu > 7 jours, r\u00e9ex\u00e9cut\u00e9 la restauration \u00e0 l&#8217;aide des instantan\u00e9s r\u00e9pliqu\u00e9s, et finalement cela a fonctionn\u00e9 parfaitement &#8211; la sauvegarde et la restauration-a-thon sont enfin termin\u00e9es\u00a0!<\/p>\n<div class=\"separator\" style=\"clear: both;\"><img decoding=\"async\" alt=\"\" border=\"0\" data-original-height=\"245\" data-original-width=\"728\" src=\"https:\/\/teknomers.com\/fr\/wp-content\/uploads\/2022\/04\/1649819032_804_Reprise-apres-sinistre-interregionale-avec-Elasticsearch.jpg\"\/><\/div>\n<h2 style=\"text-align: left;\"><strong>Conclusion<\/strong><\/h2>\n<p>L&#8217;\u00e9laboration d&#8217;un plan de reprise apr\u00e8s sinistre est un exercice mental difficile.  La mise en \u0153uvre et le test de chaque partie sont encore plus difficiles, mais il s&#8217;agit d&#8217;une pratique commerciale essentielle qui garantit que votre organisation sera en mesure de faire face \u00e0 n&#8217;importe quelle temp\u00eate.  Bien s\u00fbr, un incendie domestique est peu probable, mais si cela se produit, vous serez probablement heureux d&#8217;avoir pratiqu\u00e9 ce qu&#8217;il faut faire avant que la fum\u00e9e ne commence \u00e0 s&#8217;\u00e9chapper. <\/p>\n<p>Assurer la continuit\u00e9 des activit\u00e9s en cas de panne d&#8217;un fournisseur pour les parties critiques de votre infrastructure pr\u00e9sente de nouveaux d\u00e9fis, mais offre \u00e9galement d&#8217;incroyables opportunit\u00e9s d&#8217;explorer des solutions comme celle pr\u00e9sent\u00e9e ici.  Esp\u00e9rons que notre petite aventure ici vous aide \u00e0 \u00e9viter les pi\u00e8ges auxquels nous avons \u00e9t\u00e9 confront\u00e9s lors de l&#8217;\u00e9laboration de votre propre plan de reprise apr\u00e8s sinistre Elasticsearch.<\/p>\n<p><i><b>Noter &#8211;<\/b> Cet article est r\u00e9dig\u00e9 et contribu\u00e9 par Mandeep Khinda, sp\u00e9cialiste DevOps chez Rewind.<\/i><\/p>\n<p><\/p>\n<\/div>\n<p><br \/>\n<br \/><a href=\"https:\/\/thehackernews.com\/2022\/04\/cross-regional-disaster-recovery-with.html\" rel=\"nofollow noopener\" target=\"_blank\">ttn-fr-57<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Sans surprise, ici \u00e0 Rembobiner, nous avons beaucoup de donn\u00e9es \u00e0 prot\u00e9ger (plus de 2 p\u00e9taoctets). L&#8217;une des bases de donn\u00e9es que nous utilisons s&#8217;appelle Elasticsearch (ES ou Opensearch, comme on l&#8217;appelle actuellement dans AWS). Pour le dire simplement, ES est une base de donn\u00e9es de documents qui facilite les r\u00e9sultats de recherche ultra-rapides. La [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[6],"tags":[271,84,4168,4158,4165,4161,48449,48448,4157,4159,4171,4170,4167,4160,4163,4162,1395,4172,4169,21647,4166,4164],"class_list":["post-86926","post","type-post","status-publish","format-standard","hentry","category-technologie","tag-apres","tag-avec","tag-comment-pirater","tag-cyber-actualites","tag-cyber-attaques","tag-cyber-mises-a-jour","tag-elasticsearch","tag-interregionale","tag-lactualite-de-la-cybersecurite","tag-lactualite-de-la-cybersecurite-aujourdhui","tag-lactualite-des-hackers","tag-la-securite-des-informations","tag-logiciel-malveillant-de-ransomware","tag-mises-a-jour-de-la-cybersecurite","tag-nouvelles-de-piratage","tag-nouvelles-de-pirates","tag-reprise","tag-securite-informatique","tag-securite-internet","tag-sinistre","tag-violation-de-donnees","tag-vulnerabilite-logicielle"],"_links":{"self":[{"href":"https:\/\/teknomers.com\/fr\/wp-json\/wp\/v2\/posts\/86926","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/teknomers.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/teknomers.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/teknomers.com\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/teknomers.com\/fr\/wp-json\/wp\/v2\/comments?post=86926"}],"version-history":[{"count":0,"href":"https:\/\/teknomers.com\/fr\/wp-json\/wp\/v2\/posts\/86926\/revisions"}],"wp:attachment":[{"href":"https:\/\/teknomers.com\/fr\/wp-json\/wp\/v2\/media?parent=86926"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/teknomers.com\/fr\/wp-json\/wp\/v2\/categories?post=86926"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/teknomers.com\/fr\/wp-json\/wp\/v2\/tags?post=86926"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}