- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正尝试在 Wireshark 中查看我的一个 Kubernetes pod 中的实时网络流量。在普通的旧 Docker 中,我能够运行这个:
docker run --rm --net=container:app_service_1 crccheck/tcpdump -i any --immediate-mode -w - | wireshark -k -i -
这将启动一个简单的容器,运行 tcpdump
并显示参数,并将 pcap 格式的数据包捕获通过管道传输到 stdout(-w -
参数)。然后将此输出通过管道传输到在我的主机上运行的 Wireshark,它会在数据包到达时显示它们。
如何在 Kubernetes 中做类似的事情?
我试过如下打补丁:
template:
spec:
containers:
- name: tcpdumper
image: crccheck/tcpdump
args: ["-i", "any", "--immediate-mode", "-w", "-"]
tty: true
stdin: true
我通过运行 k attach -it app-service-7bdb7798c5-2lr6q | 应用它wireshark -k -i -
但这似乎行不通; Wireshark 启动但立即显示错误:
写入管道的数据既不是受支持的 pcap 格式也不是 pcapng 格式
最佳答案
我没有经常使用 k8s,但是 docker run 得到了整个干净的标准输出,而我的印象是 k attach 没有。
我不认为 kubectl 具有与 docker run 等效的功能,它可以为您提供干净的标准输出,但您可以使用 kubectl exec 做一些事情。
一个可能的测试是将输出重定向到一个文件,并查看它是否是您正在运行的命令的有效输出,并且那里没有任何意外。
关于docker - 如何将实时 pcap 记录从 Kubernetes pod 传输到本地运行的 Wireshark?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62333136/
我是一名优秀的程序员,十分优秀!