duanran3115 2018-03-09 11:14
浏览 62
已采纳

使用GO API查找可用的RAM

I am using the Minikube environment and I have defined the max memory using

$] minikube config set memory 2048

Now I want to get this memory value using the Kubernetes API call in GO. I have tried the following,

import (
    "k8s.io/client-go/kubernetes"
    "k8s.io/client-go/rest"
)

availableMem := kubernetes.Interface.StorageV1beta1().RESTClient().Get().Name("config")

But the output is not in readable manner.

  • 写回答

1条回答 默认 最新

  • dongshimao7115 2018-03-12 17:44
    关注

    This code will fetch the available memory of the first cluster

    nodeList, err := f.KubeClient.CoreV1().Nodes().List(metav1.ListOptions{})
    
    if err == nil {
       if len(nodeList.Items) > 0 {
            node := &nodeList.Items[0]
            memQuantity := node.Status.Allocatable[v1.ResourceMemory]
            totalMemAvail = int(memQuantity.Value() >> 20)
        } else {
            t.Fatal("Unable to read node list")
            return
        }
    } else {
        t.Fatalf("Error while reading node list data: %v", err)
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥20 基于MSP430f5529的MPU6050驱动,求出欧拉角
  • ¥20 Java-Oj-桌布的计算
  • ¥15 powerbuilder中的datawindow数据整合到新的DataWindow
  • ¥20 有人知道这种图怎么画吗?
  • ¥15 pyqt6如何引用qrc文件加载里面的的资源
  • ¥15 安卓JNI项目使用lua上的问题
  • ¥20 RL+GNN解决人员排班问题时梯度消失
  • ¥60 要数控稳压电源测试数据
  • ¥15 能帮我写下这个编程吗
  • ¥15 ikuai客户端l2tp协议链接报终止15信号和无法将p.p.p6转换为我的l2tp线路