66 "github.com/goodrain/rainbond/api/client/prometheus"
77 k8sutil "github.com/goodrain/rainbond/util/k8s"
88 "github.com/pquerna/ffjson/ffjson"
9+ "github.com/shirou/gopsutil/disk"
910 "github.com/sirupsen/logrus"
1011 v1 "k8s.io/api/core/v1"
1112 policyv1 "k8s.io/api/policy/v1"
@@ -17,6 +18,7 @@ import (
1718 utilversion "k8s.io/apimachinery/pkg/util/version"
1819 "k8s.io/client-go/kubernetes"
1920 "k8s.io/client-go/rest"
21+ "runtime"
2022 "strings"
2123
2224 "github.com/goodrain/rainbond/api/model"
@@ -205,6 +207,24 @@ func (n *nodesHandle) GetNodeInfo(ctx context.Context, nodeName string) (res mod
205207 res .Resource .ReqDisk = diskCap - diskAvail
206208 res .Resource .CapContainerDisk = containerDiskCap
207209 res .Resource .ReqContainerDisk = containerDiskCap - containerDiskAvail
210+
211+ if res .Resource .CapDisk == 0 {
212+ var diskStatus * disk.UsageStat
213+ if runtime .GOOS != "windows" {
214+ diskStatus , _ = disk .Usage ("/" )
215+ } else {
216+ diskStatus , _ = disk .Usage (`z:\\` )
217+ }
218+ var diskCap , reqDisk uint64
219+ if diskStatus != nil {
220+ diskCap = diskStatus .Total
221+ reqDisk = diskStatus .Used
222+ }
223+ res .Resource .CapDisk = diskCap
224+ res .Resource .ReqDisk = reqDisk
225+ res .Resource .CapContainerDisk = diskCap
226+ res .Resource .ReqContainerDisk = reqDisk
227+ }
208228 return res , nil
209229}
210230
0 commit comments