Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Containernetwerklogboeken in Advanced Container Networking Services voor Azure Kubernetes Service (AKS) u inzicht geven in elke netwerkstroom binnen uw cluster. Metrische gegevens vertellen u wat er gebeurt in uw netwerk (bandbreedtegebruik, foutpercentages). Logboeken vertellen u waarom: wie een verbinding heeft gestart, welke protocollen zijn gebruikt en of verkeer is toegestaan of geblokkeerd.
In deze logboeken worden metagegevens vastgelegd voor elke netwerkstroom:
- Bron- en doel-IP-adressen, podnamen en servicenamen
- Naamruimten, poorten en protocollen
- Verkeersrichting en beleidsbeoordelingen
Met deze context kunt u netwerkgedrag correleren met specifieke workloads, verbindingsproblemen oplossen, beveiligingsbeleid valideren en forensische analyse uitvoeren. Containernetwerklogboeken hebben betrekking op Laag 3-verkeer (IP), Laag 4 (TCP/UDP) en Laag 7 (HTTP/gRPC/Kafka).
Om het gegevensvolume en de kosten te beheren, ondersteunen containernetwerklogboeken aggregatie van stroomlogboeken, waarmee vergelijkbare stromen worden gegroepeerd in samengevatte records in plaats van één record per verbindingsgebeurtenis op te slaan. U behoudt de operationele patronen die u nodig hebt terwijl u de opslag- en invoerkosten verlaagt. Zie Stroomlogboekaggregatie voor meer informatie.
Containernetwerklogboeken bieden twee modi:
- Opgeslagen logboeken : continue verzameling met aangepaste filters en stroomaggregatie. Het meest geschikt voor langetermijnbewaking en -analyse.
- Logboeken op aanvraag - realtime vastleggen via de Hubble CLI en de Hubble UI. Het meest geschikt voor ad-hoc probleemoplossing.
Gebruik opgeslagen logboeken wanneer u permanente records nodig hebt voor naleving, trendanalyse of geautomatiseerde waarschuwingen. Gebruik logboeken op aanvraag wanneer u actief fouten in een connectiviteits- of prestatieprobleem opspoort en direct inzicht in live verkeer nodig hebt.
Opgeslagen logboeken
De modus Opgeslagen logboeken wordt automatisch ingeschakeld wanneer Advanced Container Networking Services is ingeschakeld op een cluster. De mogelijkheid is aanwezig, maar er worden geen logboeken gegenereerd totdat u ACNS vertelt wat u moet vastleggen.
Als u logboeken wilt verzamelen, definieert u ContainerNetworkLog aangepaste resources die aangeven welk verkeer moet worden bewaakt: op naamruimte, pod, service, protocol of oordeel. Zodra een CRD is toegepast, begint de Cilium-agent met het genereren van stromen die overeenkomen met de filters en schrijft deze naar elk knooppunt. Verzameling blijft actief totdat u de CRD's verwijdert of ACNS uitschakelt.
Omdat u precies bepaalt welk verkeer wordt geregistreerd via CRD-filters, kunt u zich richten op de stromen die van belang zijn en het verzamelen van onnodige gegevens voorkomen. In combinatie met flowlog-aggregatie houdt deze aanpak de opslagkosten voorspelbaar en de analyse gericht.
Hoe de modus voor opgeslagen logboeken werkt
Advanced Container Networking Services maakt gebruik van eBPF-technologie met Cilium om netwerkstromen op elk knooppunt vast te leggen. Zodra ACNS is ingeschakeld en er een ContainerNetworkLog aangepaste resource wordt toegepast, verzamelt de Cilium-agent verkeer dat overeenkomt met het filter en schrijft logboeken in JSON-indeling naar /var/log/acns/hubble/events.log elke host. Logboekgeneratie wordt volledig binnen het cluster uitgevoerd en is niet afhankelijk van Azure Monitor.
Voor productiegebruik raden we u aan de Azure Monitor-invoegtoepassing in te schakelen. Wanneer deze functie is ingeschakeld, verzamelen Container Insights-agents host-lokale logboeken, passen beperkingslimieten toe en verzenden ze naar een Log Analytics werkruimte, waar u langetermijnretentie, KQL-query's en de ingebouwde Azure portal- en Grafana-dashboards krijgt. Dit is het meest geïntegreerde traject en de meeste klanten zouden dit moeten kiezen.
Als uw team een bestaande pijplijn voor waarneembaarheid heeft, kunt u in plaats daarvan dezelfde hostlogboeken doorsturen naar een openTelemetry-compatibele collector- of logboekregistratieservice, naast Azure Monitor of in plaats daarvan.
Zie de Container Insights-documentatie voor meer informatie over throttling en Container Insights.
Containernetwerklogboeken gebruiken met of zonder Azure Monitor
U kunt containernetwerklogboeken op twee manieren gebruiken. De juiste keuze is afhankelijk van of u een geïntegreerde Azure systeemeigen ervaring wilt of dat u al een waarneembaarheidspijplijn hebt die u wilt blijven gebruiken.
| Pad | Wat u krijgt | Wanneer moet u deze kiezen |
|---|---|---|
| Azure Monitor-invoegtoepassing (aanbevolen) | Container Insights verzamelt host-gebaseerde logboeken in een Log Analytics workspace. U krijgt langetermijnretentie, KQL, de ingebouwde Azure portaldashboards en beheerde Grafana-dashboards. | U wilt de meest geïntegreerde, productieklare ervaring op AKS met minimale installatie. |
| Lokale hostbestanden met uw eigen pijplijn | ACNS schrijft JSON-logboeken naar /var/log/acns/hubble/events.log elk knooppunt. U stuurt ze door naar een openTelemetry-compatibele collector- of logboekregistratieservice, naast Azure Monitor of in plaats daarvan. |
U hebt al een gecentraliseerd waarneembaarheidsplatform en wilt dat netwerklogboeken daar terechtkomen. |
Voor de meeste klanten raden we u aan Azure Monitor in te schakelen. Het is de snelste manier om mogelijkheden voor retentie, query's en dashboards te verkrijgen zonder uw eigen pijplijn te bouwen.
Belangrijkste mogelijkheden van de opgeslagen logboekmodus
Aanpasbare filters. Definieer
ContainerNetworkLogaangepaste resources om te filteren op naamruimte, pod, service, poort, protocol, oordeel of verkeersrichting. Alleen overeenkomend verkeer wordt geregistreerd, zodat u nauwkeurige controle krijgt over wat er wordt verzameld en wat het kost.Aggregatie van flowlogboeken. Vergelijkbare stromen worden elke 30 seconden automatisch gegroepeerd in samengevatte records, waardoor het gegevensvolume wordt geknipt en operationele signalen behouden blijven, zoals servicecommunicatiepatronen, foutpercentages en beveiligingsbeoordelingen. Dankzij aggregatie met gerichte filters kunt u een brede zichtbaarheid behouden zonder overmatige verwerkingskosten. Zie Stroomlogboekaggregatie voor meer informatie.
Opties voor logboekopslag. ACNS schrijft logboeken altijd lokaal op elk knooppunt. Van daaruit kunt u kiezen hoe u ze kunt gebruiken:
Lokale hostbestanden (altijd ingeschakeld): Logboeken worden opgeslagen op hostknooppunten op
/var/log/acns/hubble. Bestanden worden automatisch geroteerd bij 50 MB, en oudere logboeken worden overschreven. Gebruik dit rechtstreeks voor kortetermijnbewaking, realtime bewaking of doorsturen van de bestanden naar een openTelemetry-compatibele collector- of logboekregistratieservice voor extra logboekbeheer.Azure Monitor (aanbevolen): Schakel de invoegtoepassing Azure Monitor in om logboeken in een Log Analytics werkruimte te verzamelen en op te slaan. U krijgt veilige, compatibele opslag met langetermijnretentie, KQL-query's, anomaliedetectie, historische analyse en waarschuwingen via de beheerde service voor Prometheus. Logboekgeneratie wordt nog steeds uitgevoerd via de Cilium-agent en de
ContainerNetworkLogCRD; Azure Monitor voegt de verbruikslaag bovenaan toe.De
ContainerNetworkLogstabel maakt standaard gebruik van de analyselaag . U kunt overschakelen naar de Basic-laag voor lagere opname- en retentiekosten, terwijl u een vergelijkbare waarneembaarheidservaring behoudt. Elke laag heeft een toegewezen Azure portaldashboard dat is geoptimaliseerd voor de querymogelijkheden. Zie Log Analytics tabelplannen voor meer informatie over tabelplannen. Zie Het tabelplan instellen voor meer informatie over het instellen van het tabelplan.
Visualisatie in de Azure-portal. Query's uitvoeren en logboeken rechtstreeks analyseren in Log Analytics of de ingebouwde Azure portaldashboards gebruiken. Er is een speciaal dashboard beschikbaar voor elke tabellaag, zodat u dezelfde waarneembaarheidservaring krijgt, ongeacht de laag die u kiest. Zie Visualiseer logboeken in de Azure portal voor meer informatie.
Logboeken visualiseren in de Azure-portal
U kunt stroomlogboeken visualiseren, opvragen en analyseren in de Azure-portal in de Log Analytics werkruimte voor uw cluster.
Containernetwerklogboeken bevatten ingebouwde Azure portaldashboards voor het visualiseren van stroomgegevens. Er is een afzonderlijk dashboard beschikbaar voor elke Log Analytics tabellaag:
| Dashboard | Pad | Tabelniveau |
|---|---|---|
| Stroomlogboeken - Basic-laag (id: 23155) | Azure>Insights>Containers>Networking>Stroomlogboeken - Basic-laag | Basisch |
| Stroomlogboeken - Analyselaag (id: 23156) | Analyse (standaard) |
Beide dashboards laten zien welke AKS-workloads met elkaar communiceren, inclusief netwerkaanvragen, antwoorden, verliezen en fouten. Gebruik het dashboard dat overeenkomt met de tabellaag die is geconfigureerd voor uw ContainerNetworkLogs tabel.
Tip
De ContainerNetworkLogs tabel wordt standaard ingesteld op de analytics-laag. Als u kosten wilt verlagen, kunt u overschakelen naar de Basic-laag en het bijbehorende dashboard van de Basic-laag gebruiken zonder dat u de dekking van waarneembaarheid verliest. Zie Log Analytics tabelplannen voor meer informatie.
De Azure portaldashboards hebben de volgende belangrijke onderdelen:
Overzicht van netwerkstatus. In de bovenste sectie ziet u samenvattingsgegevens (totale stroomlogboeken, unieke aanvragen, verwijderde aanvragen en doorgestuurde aanvragen), zodat u snel afwijkingen kunt herkennen. Statistieken zijn onderverdeeld per protocol: DNS-verzoeksverlies, HTTP 2xx-antwoorden, Layer 4-verzoek en -responspercentages, en verliescijfers. Een serviceafhankelijkheidsgrafiek laat zien welke services met elkaar communiceren, waardoor het gemakkelijker is om knelpunten en onverwachte verkeerspaden te identificeren.
Stroomlogboeken en foutenlogboeken. Het dashboard scheidt stroomlogboeken van foutenlogboeken in verschillende weergaven, zodat u zich kunt richten op fouten zonder normaal verkeer te doorzoeken. Gebruik de ingebouwde filters om de resultaten te beperken op basis van protocol, naamruimte of beoordeling. Als u bijvoorbeeld fouten met DNS-omzetting wilt oplossen, filtert u foutenlogboeken op basis van het DNS-protocol.
Elke logboekvermelding bevat labels, tijdstempels en bron-/doelgegevens om u te helpen specifieke gebeurtenissen vast te stellen tijdens een onderzoek.
Belangrijkste naamruimten, workloads en DNS-fouten. In deze sectie worden de meest actieve naamruimten, workloads met het hoogste verkeer, poortgebruik en meest frequente DNS-fouten weergegeven. Gebruik deze om te bepalen welke workloads het meeste verkeer genereren, verwijderde aanvragen spotten en protocoldistributie vergelijken (bijvoorbeeld TCP versus UDP). Ongebruikelijke patronen, zoals onverwachte pieken of onbekende bestemmingen, kunnen duiden op onjuiste configuraties of beveiligingsproblemen.
Aggregatie van stroomlogboek
Netwerkstromen lopen snel op. Een cluster met 200 microservices kan elke 30 seconden honderdduizenden stroomrecords genereren. Het opslaan van al die onbewerkte gegevens wordt duur.
Stel bijvoorbeeld dat client-1 en client-2 beide met een server pod communiceren via TCP. In een venster van 30 seconden zien onbewerkte stroomrecords op het knooppunt er als volgt uit:
| bron | Bronpoort | Destination | Doelpoort | Protocol | Flag |
|---|---|---|---|---|---|
| client-1 | 12345 | server | 80 | TCP | SYN |
| server | 80 | client-1 | 12345 | TCP | SYN-ACK |
| client-1 | 12345 | server | 80 | TCP | ACK |
| client-1 | 12345 | server | 80 | TCP | PSH |
| server | 80 | client-1 | 12345 | TCP | ACK |
| client-2 | 23456 | server | 80 | TCP | SYN |
| server | 80 | client-2 | 23456 | TCP | SYN-ACK |
| client-2 | 23456 | server | 80 | TCP | ACK |
| client-2 | 23456 | server | 80 | TCP | PSH |
| server | 80 | client-2 | 23456 | TCP | ACK |
Met aggregatie worden deze 10 records twee:
| bron | Bronpoort | Destination | Doelpoort | Protocol | Gegevensstromen verzonden | Ontvangen stromen |
|---|---|---|---|---|---|---|
| client-1 | 12345 | server | 80 | TCP | 4 | 6 |
| client-2 | 23456 | server | 80 | TCP | 4 | 6 |
Aggregatie van stroomlogboeken pakt dit aan door vergelijkbare stromen te groeperen in samengevatte records. In elk venster van 30 seconden worden stromen die dezelfde aggregatiesleutelvelden delen, gecombineerd tot één record met een telling van het aantal stromen dat deze vertegenwoordigt.
De volgende velden vormen de aggregatiesleutel:
| Veld | Description |
|---|---|
verdict |
DOORGESTUURD, VERWIJDERD OF FOUT |
is_reply |
Of de gegevensstroom een aanvraag (onwaar) of een antwoord (waar) is |
drop_reason_desc |
Redenen waarom pakketten zijn gedropt |
source.namespace |
Naamruimte van bronpod |
destination.namespace |
Doelpodnaamruimte |
source.workloads |
Bronworkload (implementatie, StatefulSet of DaemonSet) |
destination.workloads |
Doelworkload (implementatie, StatefulSet of DaemonSet) |
source.identity |
Bronbeveiligingsidentiteit (altijd beschikbaar als een noodoplossing) |
destination.identity |
Bestemmingsbeveiligingsidentiteit (altijd aanwezig als terugvaloptie) |
l4.TCP.destination_port |
TCP-doelpoort |
l4.UDP.destination_port |
UDP-doelpoort |
l7.http.code |
HTTP-antwoordcode (200, 404, 500, enzovoort) |
l7.dns.rcode |
DNS-antwoordcode (NOERROR, NXDOMAIN, enzovoort) |
IP.ipVersion |
IPv4 of IPv6 |
IP.encrypted |
Of het verkeer is versleuteld (WireGuard/IPsec) |
source.cluster_name |
Naam van broncluster |
destination.cluster_name |
Naam van doelcluster |
Stromen die overeenkomen met al deze velden binnen een venster van 30 seconden, worden samengevoegd in één record. Dit behoudt de signalen die u nodig hebt (welke services communiceren, hoe vaak, welke fouten optreden, of verkeer is toegestaan of geblokkeerd) terwijl het gegevensvolume aanzienlijk wordt beperkt. In tegenstelling tot steekproeven, die stromen willekeurig negeren en zeldzame beveiligingsgebeurtenissen kunnen missen, behoudt aggregatie 100% van de patroongegevens.
Belangrijkste punten:
- Aggregatie is standaard ingeschakeld en geconfigureerd. Dit vermindert logboekopslag en opnamekosten zonder handmatige afstemming.
- U bepaalt welk verkeer wordt vastgelegd via
includeFiltersin deContainerNetworkLogCRD. - Smallere filters (specifieke naamruimte of serviceparen) bereiken doorgaans betere compressie omdat de vastgelegde stromen vergelijkbaarer zijn.
- Geaggregeerde logboeken slaan hoge kardinaliteit en kenmerken per stroom (bijvoorbeeld afzonderlijke tijdstempels, pod-IP's, HTTP-URL's, DNS-querynamen) over om de opnamevolume en opslagkosten te minimaliseren. Ze zijn ontworpen voor detectie van problemen op hoog niveau. Gebruik logboeken op aanvraag voor fijnmazige stroomanalyse en -onderzoek.
Opmerking
De werkelijke opslagvermindering varieert op basis van uw filterconfiguratie, workloaddiversiteit en verkeerspatronen.
Logboeken op aanvraag
Met logboeken op aanvraag kunt u stroomlogboeken in realtime vastleggen en inspecteren, zonder eerdere configuratie of permanente opslag. Gebruik logboeken op aanvraag wanneer u een connectiviteits- of prestatieprobleem actief wilt oplossen en onmiddellijk zichtbaarheid nodig hebt.
ACNS biedt twee hulpprogramma's voor opname op aanvraag. Als u een van beide hulpprogramma's wilt instellen, raadpleegt u de modus Logboeken op aanvraag configureren.
Hubble CLI
Met de Hubble CLI kunt u stroomlogboeken rechtstreeks vanuit uw terminal opvragen, filteren en analyseren. Het is vooral handig wanneer u fijnmazige filters nodig hebt, bijvoorbeeld het isoleren van verkeer op naamruimte, podlabel of oordeel tijdens een actieve foutopsporingssessie.
Hubble UI
De Hubble-gebruikersinterface biedt een grafische weergave van service-naar-service-communicatie. Het is handig als u verkeerspaden visueel wilt traceren, welke services communiceren en afwijkingen herkennen zonder CLI-opdrachten te schrijven.
Belangrijke voordelen van logboeken op aanvraag
- Geen eerdere configuratie vereist. Begin met het vastleggen van stromen onmiddellijk zonder aangepaste resources te definiëren of opslag in te stellen.
- Realtime zichtbaarheid. Inspecteer liveverkeer en bekijk pakketmetagegevens wanneer er problemen optreden.
- Snelle probleemoplossing. Filter gegevensstromen interactief via de Hubble CLI, of bekijk servicediagrammen visueel in de Hubble-UI.
- Weinig overhead. Er is geen permanente opslag vereist, dus er zijn geen doorlopende kosten voor ad-hoconderzoeken.
Aanbevelingen voor opgeslagen logboeken
Begin met brede filters en vermalen. Wanneer u stroomlogboeken voor het eerst inschakelt, gebruikt u brede filters om verkeer vast te leggen in uw sleutelnaamruimten. Voer de configuratie enkele dagen uit en controleer de verzamelde gegevens in Log Analytics. Bekijk het gegevensvolume, de kosten en of de vastgelegde stromen overeenkomen met wat u daadwerkelijk nodig hebt. Draai vervolgens je
includeFiltersaan om je te concentreren op hoogwaardig verkeer en de ruis te verwijderen.Gebruik eerst de vooraf gemaakte dashboards. De ingebouwde Azure portaldashboards hebben betrekking op veelvoorkomende gebruiksvoorbeelden, zoals servicecommunicatiepatronen, foutpercentages en DNS-fouten. Begin daar. Voeg alleen aangepaste deelvensters of Log Analytics-queries toe als u zichtbaarheid nodig hebt die de vooraf gemaakte dashboards niet bieden.
Controleer regelmatig. Naarmate workloads en verkeerspatronen veranderen, moeten uw filters mogelijk worden bijgewerkt. Controleer regelmatig het gegevensvolume en de stroomdekking om ervoor te zorgen dat u nog steeds het juiste verkeer tegen redelijke kosten vastlegt.
Beperkingen
Vereisten voor gegevensvlak en functie:
- De modus Opgeslagen logboeken werkt alleen met het gegevensvlak Cilium.
- Stroomlogboeken van laag 7 worden alleen vastgelegd wanneer ondersteuning voor laag 7-beleid is ingeschakeld. Zie Een Laag 7-beleid configureren voor meer informatie.
- DNS-stromen en metrische gegevens worden alleen vastgelegd wanneer een FQDN-netwerkbeleid (Cilium Fully Qualified Domain Name) wordt toegepast. Zie Een FQDN-beleid configureren voor meer informatie.
Aggregatie-afwegingen:
- Aggregatie van stroomlogboeken behoudt geen afzonderlijke tijdstempels voor stromen, IP-adressen per pod of velden met hoge kardinaliteit, zoals HTTP-URL's en DNS-querynamen. Gebruik logboeken op aanvraag voor onderzoek per stroom.
Opslag en platform:
- Het host-lokale bestand
/var/log/acns/hubble/is beperkt tot 50 MB per knooppunt en wordt automatisch geroteerd. Als u langetermijnretentie nodig hebt, schakelt u Azure Monitor (aanbevolen) in of stuurt u het bestand door naar uw eigen logboekregistratieservice. - Het tabelplan Voor hulplogboeken wordt niet ondersteund.
Prijsstelling
Belangrijk
Advanced Container Networking Services is een betaald aanbod.
Zie Advanced Container Networking Services - Prijzen voor meer informatie over prijzen.
Verwante inhoud
- Netwerklogboeken van containers instellen
- Geavanceerde Container Networking Services voor AKS
- Containernetwerkobservatie in Geavanceerde Container Netwerkdiensten
- Container Network Security in Advanced Container Networking Services