Skip to content

Commit f639d82

Browse files
authored
made editorial changes
1 parent ba03a8e commit f639d82

File tree

1 file changed

+8
-6
lines changed

1 file changed

+8
-6
lines changed

support/azure/azure-kubernetes/logs/capture-system-insights-from-aks.md

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -7,15 +7,15 @@ editor: v-jsitser
77
ms.reviewer: cssakscic, josebl, v-leedennis
88
ms.service: azure-kubernetes-service
99
ms.topic: how-to
10-
ms.date: 08/09/2024
10+
ms.date: 07/01/2025
1111
ms.custom: sap:Monitoring and Logging
1212
---
1313

1414
# Capture real-time system insights from an AKS cluster
1515

1616
This article discusses the process of gathering real-time system insights from your Microsoft Azure Kubernetes Service (AKS) cluster by using Inspektor Gadget. The article contains step-by-step instructions for installing this tool on your AKS environment. It also explores practical examples that show how Inspektor Gadget helps you gather valuable information to do effective debugging of real-world issues.
1717

18-
## Demo
18+
## Demo-How to trace DNS traffic
1919

2020
To begin, consider the following quick demo. Suppose that you have to figure out why the DNS requests from an application fail. By using Inspektor Gadget, you can capture the DNS traffic in the Kubernetes namespace in which your application is running:
2121

@@ -31,7 +31,7 @@ aks-nodepool-41788306-vmss000002 demo-pod 13cc Q example.com. 1.
3131
aks-nodepool-41788306-vmss000002 demo-pod 13cc Q example.com. 1.2.3.4
3232
```
3333

34-
From this information, we can see that the DNS requests are directed to the DNS server at IP address `1.2.3.4` (`NAMESERVER` column), but we only see the queries (`Q` in `QR` column) and no responses (`R` in `QR` column). This means that the DNS server didn't respond to the queries, which is why the application can't resolve the domain name `www.example.com`.
34+
From this information, we can see that the DNS requests are directed to the DNS server at IP address `1.2.3.4` (the `NAMESERVER` column), but we only see the queries (`Q` in `QR` column) and no responses (`R` in `QR` column). This means that the DNS server didn't respond to the queries, which is why the application can't resolve the domain name `www.example.com`.
3535

3636
Now, suppose that `1.2.3.4` isn't the default name server configuration, and you suspect that a malicious process is modifying the configuration at runtime. In these kinds of cases, Inspektor Gadget goes beyond DNS diagnostics. It also enables you to monitor processes that access critical files (such as */etc/resolv.conf*) and have the intention of modifying those files. To do that, filter the flags in the output to show any of the [writing file access modes](https://linux.die.net/man/3/open) (`O_WRONLY` to open for writing only, or `O_RDWR` to open for reading and writing):
3737

@@ -140,7 +140,7 @@ Use the instructions for your OS:
140140
apt update && apt install -y curl
141141
```
142142
143-
2. Download Microsoft GPG public key:
143+
2. Download Microsoft GNU Privacy Guard (GPG) public key:
144144
145145
```bash
146146
curl -sSL https://packages.microsoft.com/keys/microsoft.asc | tee /usr/share/keyrings/microsoft.asc
@@ -228,13 +228,15 @@ Use the instructions for your OS:
228228
apt install -y kubectl-gadget
229229
```
230230
231+
---
232+
231233
Now, verify the installation by running the `version` command:
232234
233235
```bash
234236
kubectl gadget version
235237
```
236238
237-
The `version` command shows you the version of the client (`kubectl gadget` plug-in), but it also tells you that it isn't installed yet on the server (the cluster):
239+
The command output shows you the version of the client (`kubectl gadget` plug-in), and it isn't installed yet on the server (the cluster):
238240

239241
```output
240242
Client version: vX.Y.Z
@@ -271,7 +273,7 @@ Client version: vX.Y.Z
271273
Server version: vX.Y.Z
272274
```
273275

274-
Notice that by deploying Inspektor Gadget using the `kubectl gadget` plug-in available in the Microsoft Cloud-Native repository, the container image used for the DaemonSet is automatically pulled from the Microsoft Container Registry (MCR):
276+
When deploying Inspektor Gadget with the `kubectl gadget` plug-in available in the Microsoft Cloud-Native repository, the container image used for the DaemonSet is automatically pulled from the Microsoft Container Registry (MCR):
275277

276278
```bash
277279
kubectl get daemonset gadget -n gadget -o jsonpath='{.spec.template.spec.containers[*].image}'

0 commit comments

Comments
 (0)