Utföra paketinsamling på en paketkärninstans
Paketinsamling för kontroll- eller dataplanspaket utförs med hjälp av mec-dataplansspårningsverktyget . MEC-Dataplane (MEC-DP) Trace liknar tcpdump, ett datanätverkspaketanalysprogram som körs på ett kommandoradsgränssnitt (CLI). Du kan använda MEC-DP Trace för att övervaka och registrera paket på alla användarplansgränssnitt i åtkomstnätverket (N3-gränssnittet) eller datanätverket (N6-gränssnittet) på enheten och kontrollplanet (N2-gränssnittet). Du kan komma åt MEC-DP Trace med hjälp av Azure-portalen eller Azure CLI.
Paketinsamling fungerar genom spegling av paket till ett Linux-kernelgränssnitt, som sedan kan övervakas med hjälp av tcpdump. I den här guiden får du lära dig hur du utför paketinsamling på en paketkärninstans.
Viktigt!
Om du utför paketinsamling minskar systemets prestanda och dataflödet för dataplanet. Därför rekommenderas endast att använda det här verktyget i låg skala under den inledande testningen.
Förutsättningar
Du måste ha en AP5GC-plats distribuerad för att utföra paketinsamling.
Om du vill utföra paketinsamling med hjälp av kommandoraden måste du:
- Identifiera Kubernetes – Azure Arc-resursen som representerar Det Azure Arc-aktiverade Kubernetes-klustret som paketkärninstansen körs på.
- Se till att den lokala datorn har grundläggande kubectl-åtkomst till Det Azure Arc-aktiverade Kubernetes-klustret. Detta kräver en kubeconfig-kärnfil som du kan hämta genom att följa core-namnområdesåtkomsten.
Utföra paketinsamling med hjälp av Azure-portalen
Konfigurera ett lagringskonto
Du måste konfigurera ett lagringskonto för att lagra diagnostikpaketet.
- Skapa ett lagringskonto för diagnostik med följande ytterligare konfiguration:
- På fliken Dataskydd går du till Åtkomstkontroll och väljer Aktivera oföränderlighetsstöd på versionsnivå. På så sätt kan du ange en tidsbaserad kvarhållningsprincip för kontot i nästa steg.
- Om du vill att innehållet i ditt lagringskonto ska tas bort automatiskt efter en viss tidsperiod konfigurerar du en standardprincip för tidsbaserad kvarhållning för ditt lagringskonto.
- Skapa en container för din diagnostik.
- Anteckna URL:en för containerblob . Till exempel:
https://storageaccountname.blob.core.windows.net/diagscontainername
- Gå till ditt Lagringskonto.
- Välj symbolen ... till höger om containerbloben som du vill använda för diagnostiksamlingen.
- Välj Containeregenskaper på snabbmenyn.
- Kopiera innehållet i URL-fältet i vyn Containeregenskaper .
- Skapa en användartilldelad identitet och tilldela den till lagringskontot som skapades ovan med rollen Storage Blob Data Contributor .
Dricks
Du kanske redan har skapat och associerat en användartilldelad identitet när du skapar webbplatsen.
- Gå till kontrollplansresursen Paketkärn för platsen.
- Välj Identitet under Inställningar på menyn till vänster.
- Markera Lägga till.
- Välj den användarsignerade hanterade identiteten som du skapade och välj Lägg till.
Viktigt!
När du har skapat den användartilldelade hanterade identiteten måste du uppdatera paketkärnkonfigurationen genom att göra en ändring av dummykonfigurationen. Detta kan vara en ändring som inte påverkar distributionen och kan lämnas kvar eller en ändring som du omedelbart återställer. Se Ändra en paketkärninstans. Om du inte uppdaterar paketkärnkonfigurationen misslyckas paketinsamlingen.
Starta en paketinsamling
Logga in på Azure-portalen.
Gå till översiktssidan för paketkärnkontrollfönstret på den webbplats som du vill köra en paketinsamling i.
Välj Paketinsamling under hjälpavsnittet till vänster. Då öppnas en paketinsamlingsvy .
Om det här är första gången du tar en paketinsamling med hjälp av portalen visas ett felmeddelande där du uppmanas att konfigurera ett lagringskonto. I så fall:
- Följ länken i felmeddelandet.
- Ange url :en för lagringskontocontainern som har konfigurerats för diagnostiklagring och välj Ändra.
Dricks
Om du inte har URL:en för lagringskontocontainern:
- Gå till ditt Lagringskonto.
- Välj symbolen ... till höger om containern som du vill använda för paketinsamling.
- Välj Containeregenskaper på snabbmenyn.
- Kopiera innehållet i URL-fältet .
- Gå tillbaka till vyn Paketinsamling .
Välj Starta paketinsamling.
Fyll i informationen i fönstret Starta paketinsamling och välj Skapa.
Maxgränsen för byte per session tillämpas per nod. I distributioner med hög tillgänglighet (HA) är det troligt att paketinsamlingen når den här gränsen och slutförs på en nod före den andra, så en paketinsamling körs fortfarande när den första har slutförts. Du bör stoppa alla paketinsamlingar som körs innan du startar ett nytt.
Sidan uppdateras med några sekunders mellanrum tills paketinsamlingen har slutförts. Du kan också använda knappen Uppdatera för att uppdatera sidan. Om du vill stoppa paketinsamlingen tidigt väljer du Stoppa paketinsamling.
När paketinsamlingen har slutförts sparar AP5GC-onlinetjänsten utdata på det angivna lagringskontots URL.
I HA-distributioner laddas två paketinsamlingsfiler upp, en för varje nod. Filerna kommer att märkas med en
0
eller en1
, som motsvararcore-mec-dp-0
ellercore-mec-dp-1
podden. Om en paketinsamling misslyckas visas ett fel på statussidan, men resultatet av den lyckade avbildningen laddas upp som vanligt.Om du vill ladda ned utdata från paketinsamlingen kan du använda knappen Kopiera till Urklipp i kolumnerna Lagring eller Filnamn för att kopiera informationen och sedan klistra in dem i sökrutan i portalen. Om du vill ladda ned utdata högerklickar du på filen och väljer Ladda ned.
Utföra paketinsamling med hjälp av Azure CLI
På en kommandorad med kubectl-åtkomst till Det Azure Arc-aktiverade Kubernetes-klustret anger du felsökarpodden MEC-DP:
kubectl exec -it -n core core-mec-dp-0 -c troubleshooter -- bash
Kommentar
I en HA-distribution
core-mec-dp-0
kanske det inte finns eftersom noden är nere. I så fall anger du icore-mec-dp-1
stället.Visa listan över konfigurerade användarplansgränssnitt:
mect list
Detta bör rapportera ett enda gränssnitt i kontrollplanets nätverk (N2), ett enda gränssnitt i åtkomstnätverket (N3) och ett enda gränssnitt för kärnnätverket (N6).
n2trace n3trace n6trace
Kör
mectdump
med alla parametrar som du vanligtvis skickar till tcpdump. I synnerhet-i
för att ange gränssnittet och-w
ange var du ska skriva till. Stäng verktyget när du är klar genom att trycka på Ctrl + C. Följande exempel är vanliga användningsfall:- Om du vill samla in paket i alla gränssnitt kör du
mectdump -i any -w any.pcap
- Om du vill samla in paket för N3-gränssnittet och N6-gränssnittet för ett enda datanätverk anger du felsökarpodden MEC-DP i två separata fönster. Kör i ett fönster
mectdump -i n3trace -w n3.pcap
och körmectdump -i n6trace -w n6.pcap
i det andra fönstret . Om du vill välja ett enskilt datanätverk filtrerar du efter VLAN-ID.
Viktigt!
Paketinsamlingsfiler kan vara stora, särskilt när du kör paketinsamling i alla gränssnitt. Ange filter när du kör paketinsamling för att minska filstorleken – se tcpdump-dokumentationen för tillgängliga filter.
- Om du vill samla in paket i alla gränssnitt kör du
Lämna containern:
exit
Kopiera utdatafilerna:
kubectl cp -n core core-mec-dp-0:<path to output file> <location to copy to> -c troubleshooter
Tcpdump kan ha stoppats mitt under skrivning av ett paket, vilket kan leda till att det här steget skapar ett fel som anger
unexpected EOF
. Filen bör dock ha kopierats och du kan kontrollera målutdatafilen för att bekräfta.Ta bort utdatafilerna:
kubectl exec -it -n core core-mec-dp-0 -c troubleshooter -- rm <path to output file>
Nästa steg
Fler alternativ för att övervaka distributionen och visa analys:
- Läs mer om övervakning av Azure Private 5G Core med azure monitor-plattformsmått
- Om du har hittat ett problem och inte vet hur du löser det kan du få support för din Azure Private 5G Core-tjänst