Dela via


Skapa ett kaosexperiment som använder ett tjänstdirigeringsfel för att redundansväxla en Azure Cosmos DB-instans

Du kan använda ett kaosexperiment för att kontrollera att programmet är motståndskraftigt mot fel genom att orsaka dessa fel i en kontrollerad miljö. I den här artikeln orsakar du en Azure Cosmos DB-redundans med flera läsningar och enkelskrivning med hjälp av ett kaosexperiment och Azure Chaos Studio. Om du kör det här experimentet kan du skydda dig mot dataförlust när en redundanshändelse inträffar.

Du kan använda samma steg för att konfigurera och köra ett experiment för alla tjänstdirigeringsfel. Ett tjänstdirigeringsfel körs direkt mot en Azure-resurs utan instrumentation. Agentbaserade fel kräver installation av kaosagenten.

Förutsättningar

  • En Azure-prenumeration. Om du inte har en Azure-prenumeration skapar du ett kostnadsfritt Azure-konto innan du börjar.
  • Ett Azure Cosmos DB-konto. Om du inte har något Azure Cosmos DB-konto följer du de här stegen för att skapa ett.
  • Minst en installation av läs- och skrivregionen för ditt Azure Cosmos DB-konto.

Aktivera Chaos Studio på ditt Azure Cosmos DB-konto

Chaos Studio kan inte mata in fel mot en resurs om inte resursen läggs till i Chaos Studio först. Du lägger till en resurs i Chaos Studio genom att skapa ett mål och funktioner för resursen. Azure Cosmos DB-konton har bara en måltyp (tjänstdirigering) och en funktion (redundans). Andra resurser kan ha upp till två måltyper. En måltyp är för tjänstdirigeringsfel. En annan måltyp är för agentbaserade fel. Andra resurser kan ha många andra funktioner.

  1. Öppna Azure Portal.

  2. Sök efter Chaos Studio i sökfältet.

  3. Välj Mål och gå till ditt Azure Cosmos DB-konto.

    Skärmbild som visar vyn Mål i Azure Portal.

  4. Markera kryssrutan bredvid ditt Azure Cosmos DB-konto. Välj Aktivera mål och välj sedan Aktivera tjänstdirigeringsmål på den nedrullningsbara menyn.

    Skärmbild som visar aktivering av mål i Azure Portal.

  5. Bekräfta att den önskade resursen visas. Välj Granska + aktivera och sedan Aktivera.

  6. Ett meddelande visas som anger att de valda resurserna har aktiverats.

    Skärmbild som visar ett meddelande som visar att målet har aktiverats.

Nu har du lagt till ditt Azure Cosmos DB-konto i Chaos Studio. I vyn Mål kan du också hantera de funktioner som är aktiverade på den här resursen. Om du väljer länken Hantera åtgärder bredvid en resurs visas de funktioner som är aktiverade för den resursen.

Skapa ett experiment

Nu kan du skapa experimentet. Ett kaosexperiment definierar de åtgärder som du vill vidta mot målresurser. Åtgärderna organiseras och körs i sekventiella steg. Kaosexperimentet definierar också de åtgärder som du vill vidta mot grenar som körs parallellt.

  1. Välj fliken Experiment i Chaos Studio. I den här vyn kan du se och hantera alla dina kaosexperiment. Välj Skapa>nytt experiment.

    Skärmbild som visar experimentvyn i Azure Portal.

  2. Fyll i prenumerationen, resursgruppen och platsen där du vill distribuera kaosexperimentet. Ge experimentet ett namn. Välj Nästa: Experimentdesigner.

    Skärmbild som visar hur du lägger till grundläggande experimentinformation.

  3. Nu är du i Chaos Studio-experimentdesignern. Med experimentdesignern kan du skapa experimentet genom att lägga till steg, grenar och fel. Ge steget och grenen ett eget namn och välj Lägg till åtgärd > Lägg till fel.

    Skärmbild som visar experimentdesignern.

  4. Välj CosmosDB-redundans i listrutan. Fyll i Varaktighet med det antal minuter som du vill att felet ska vara och readRegion med läsregionen för ditt Azure Cosmos DB-konto. Välj Nästa: Målresurser.

    Skärmbild som visar felegenskaper.

  5. Välj ditt Azure Cosmos DB-konto och välj Nästa.

    Skärmbild som visar hur du lägger till ett mål.

  6. Kontrollera att experimentet ser korrekt ut och välj Granska + skapa>Skapa.

    Skärmbild som visar granskning och skapande av ett experiment.

Ge experimentbehörighet till målresursen

När du skapar ett kaosexperiment skapar Chaos Studio en systemtilldelad hanterad identitet som kör fel mot dina målresurser. Den här identiteten måste ges lämpliga behörigheter till målresursen för att experimentet ska kunna köras. Du kan använda de här stegen för valfri resurs- och måltyp genom att ändra rolltilldelningen i steg 3 så att den matchar lämplig roll för resursen och måltypen..

  1. Gå till ditt Azure Cosmos DB-konto och välj Åtkomstkontroll (IAM).

    Skärmbild som visar översiktssidan för Azure Cosmos DB.

  2. Välj Lägg till>Lägg till rolltilldelning.

    Skärmbild som visar översikten över åtkomstkontroll.

  3. Sök efter Cosmos DB-operatör och välj rollen. Välj Nästa.

    Skärmbild som visar tilldelning av rollen Azure Cosmos DB-operatör.

  4. Välj Välj medlemmar och sök efter experimentnamnet. Välj experimentet och välj Välj. Om det finns flera experiment i samma klientorganisation med samma namn trunkeras experimentnamnet med slumpmässiga tecken tillagda.

    Skärmbild som visar hur du lägger till ett experiment i en roll.

  5. Välj Granska + tilldela>Granska + tilldela.

Kör experimentet

Nu är du redo att köra experimentet. Om du vill se effekten rekommenderar vi att du öppnar översikten över ditt Azure Cosmos DB-konto och går till Replikera data globalt på en separat webbläsarflik. Om du uppdaterar regelbundet under experimentet visas regionbytet.

  1. I vyn Experiment väljer du experimentet. Välj Starta>OK.
  2. När Status ändras till Körs väljer du Information för den senaste körningen under Historik för att se information om experimentet som körs.

Nästa steg

Nu när du har kört ett tjänstdirigeringsexperiment i Azure Cosmos DB är du redo att: