编写一个脚本,查看k8s集群中各pod性能情况
时间: 2024-02-27 09:58:13 浏览: 58
K8S监控模板,用于k8S集群Pod监控
以下是一个简单的示例脚本,可以查看k8s集群中各pod的CPU和内存使用情况:
```bash
#!/bin/bash
# 获取所有pod名称
pods=$(kubectl get pods -o jsonpath='{.items[*].metadata.name}')
# 遍历所有pod
for pod in $pods; do
echo "Pod: $pod"
# 获取pod中所有容器的名称
containers=$(kubectl get pods "$pod" -o jsonpath='{.spec.containers[*].name}')
# 遍历所有容器
for container in $containers; do
echo " Container: $container"
# 获取容器的CPU和内存使用情况
cpu=$(kubectl top pods "$pod" --containers "$container" | grep "$container" | awk '{print $2}')
memory=$(kubectl top pods "$pod" --containers "$container" | grep "$container" | awk '{print $3}')
echo " CPU: $cpu"
echo " Memory: $memory"
done
done
```
在上面的脚本中,首先使用kubectl命令获取所有pod的名称,然后遍历每个pod。对于每个pod,再使用kubectl命令获取其中所有容器的名称,并遍历每个容器。对于每个容器,使用kubectl top命令获取其CPU和内存使用情况,并输出到控制台。你可以根据实际情况修改脚本中的命令和输出格式。
阅读全文