【Shell脚本3】节点request资源统计脚本

#!/bin/bash

for node in `kubectl get node | grep node | awk '{print $1}'` 
do
    total_cpu=`kubectl describe node $node | grep cpu | awk '{print $2}' | sed -n '1p'`
    used_cpuM=`kubectl describe node $node | grep "cpu " | awk '{print $2}'| cut -d 'm' -f 1`
    used_cpu=`expr $used_cpuM / 1024`
    used_cpu_ratio=`kubectl describe node $node | grep "cpu " | awk '{print $3}'`

    total_memK=`kubectl describe node $node | grep " memory:" | awk '{print $2}' | sed -n '1p' | cut -d 'K' -f 1`
    total_mem=`expr $total_memK / 1024 / 1024`
    used_memMm=`kubectl describe node $node | grep " memory  " | awk '{print $2}'`

    Mm=`echo $used_memMm | grep M | wc -l`
    if [ $Mm == 0 ];then
        if [ `echo $used_memMm | grep m | wc -l` == 0 ];then
            used_mem=`expr $used_memMm / 1024 / 1024 / 1024`
        else
            used_mem_Mm=`echo $used_memMm | cut -d 'm' -f 1`
            used_mem=`expr $used_mem_Mm / 1024 / 1024 / 1024 / 1024`
        fi
    else
        used_mem_Mm=`echo $used_memMm | cut -d 'M' -f 1`
        used_mem=`expr $used_mem_Mm / 1024`
    fi
    used_mem_ratio=`kubectl describe node $node | grep " memory  " | awk '{print $3}'`

    echo "--------"
    echo "$node"
    echo "cpu:  [ total:$total_cpu ] [ used:$used_cpu $used_cpu_ratio ]"
    echo "mem:  [ total:$total_mem ] [ used:$used_mem $used_mem_ratio ]"
done

在这里插入图片描述

包含两个节点(node01和node02)的集群的资源使用情况
- node01:
  - CPU:总共有4个CPU核心,目前使用0个(使用率为2%)。
  - 内存:总共有2GB的内存,目前使用0GB(使用率为2%)。

- node02:
  - CPU:总共有16个CPU核心,目前使用0个(使用率为0%)。
  - 内存:总共有5GB的内存,目前使用0GB(使用率为0%)。

这些信息显示了每个节点上CPU和内存资源的总量以及当前使用量。
根据给出的信息,节点01有4个CPU核心和2GB的内存,而节点02有16个CPU核心和5GB的内存。
目前,两个节点的资源使用率都非常低,都是0% 或2%。

你可能感兴趣的:(linux,服务器,运维)