mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-04 01:40:07 +00:00
Fix issue #390
This commit is contained in:
parent
a5d2a025b7
commit
ecdb47a40b
@ -18,13 +18,14 @@ package vsphere
|
|||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
|
"strings"
|
||||||
|
"sync"
|
||||||
|
|
||||||
"github.com/golang/glog"
|
"github.com/golang/glog"
|
||||||
"golang.org/x/net/context"
|
"golang.org/x/net/context"
|
||||||
"k8s.io/api/core/v1"
|
"k8s.io/api/core/v1"
|
||||||
k8stypes "k8s.io/apimachinery/pkg/types"
|
k8stypes "k8s.io/apimachinery/pkg/types"
|
||||||
"k8s.io/kubernetes/pkg/cloudprovider/providers/vsphere/vclib"
|
"k8s.io/kubernetes/pkg/cloudprovider/providers/vsphere/vclib"
|
||||||
"strings"
|
|
||||||
"sync"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
// Stores info about the kubernetes node
|
// Stores info about the kubernetes node
|
||||||
@ -241,6 +242,10 @@ func (nm *NodeManager) removeNode(node *v1.Node) {
|
|||||||
nm.registeredNodesLock.Lock()
|
nm.registeredNodesLock.Lock()
|
||||||
delete(nm.registeredNodes, node.ObjectMeta.Name)
|
delete(nm.registeredNodes, node.ObjectMeta.Name)
|
||||||
nm.registeredNodesLock.Unlock()
|
nm.registeredNodesLock.Unlock()
|
||||||
|
|
||||||
|
nm.nodeInfoLock.Lock()
|
||||||
|
delete(nm.nodeInfoMap, node.ObjectMeta.Name)
|
||||||
|
nm.nodeInfoLock.Unlock()
|
||||||
}
|
}
|
||||||
|
|
||||||
// GetNodeInfo returns a NodeInfo which datacenter, vm and vc server ip address.
|
// GetNodeInfo returns a NodeInfo which datacenter, vm and vc server ip address.
|
||||||
|
@ -32,12 +32,13 @@ import (
|
|||||||
|
|
||||||
"fmt"
|
"fmt"
|
||||||
|
|
||||||
|
"path/filepath"
|
||||||
|
|
||||||
"github.com/vmware/govmomi/vim25/mo"
|
"github.com/vmware/govmomi/vim25/mo"
|
||||||
"k8s.io/api/core/v1"
|
"k8s.io/api/core/v1"
|
||||||
k8stypes "k8s.io/apimachinery/pkg/types"
|
k8stypes "k8s.io/apimachinery/pkg/types"
|
||||||
"k8s.io/kubernetes/pkg/cloudprovider/providers/vsphere/vclib"
|
"k8s.io/kubernetes/pkg/cloudprovider/providers/vsphere/vclib"
|
||||||
"k8s.io/kubernetes/pkg/cloudprovider/providers/vsphere/vclib/diskmanagers"
|
"k8s.io/kubernetes/pkg/cloudprovider/providers/vsphere/vclib/diskmanagers"
|
||||||
"path/filepath"
|
|
||||||
)
|
)
|
||||||
|
|
||||||
const (
|
const (
|
||||||
@ -194,13 +195,18 @@ func getSharedDatastoresInK8SCluster(ctx context.Context, dc *vclib.Datacenter,
|
|||||||
return nil, fmt.Errorf(msg)
|
return nil, fmt.Errorf(msg)
|
||||||
}
|
}
|
||||||
var sharedDatastores []*vclib.DatastoreInfo
|
var sharedDatastores []*vclib.DatastoreInfo
|
||||||
for index, nodeVmDetail := range nodeVmDetails {
|
for _, nodeVmDetail := range nodeVmDetails {
|
||||||
glog.V(9).Infof("Getting accessible datastores for node %s", nodeVmDetail.NodeName)
|
glog.V(9).Infof("Getting accessible datastores for node %s", nodeVmDetail.NodeName)
|
||||||
accessibleDatastores, err := getAccessibleDatastores(ctx, &nodeVmDetail, nodeManager)
|
accessibleDatastores, err := getAccessibleDatastores(ctx, &nodeVmDetail, nodeManager)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
if err == vclib.ErrNoVMFound {
|
||||||
|
glog.V(9).Infof("Got NoVMFound error for node %s", nodeVmDetail.NodeName)
|
||||||
|
continue
|
||||||
|
}
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
if index == 0 {
|
|
||||||
|
if len(sharedDatastores) == 0 {
|
||||||
sharedDatastores = accessibleDatastores
|
sharedDatastores = accessibleDatastores
|
||||||
} else {
|
} else {
|
||||||
sharedDatastores = intersect(sharedDatastores, accessibleDatastores)
|
sharedDatastores = intersect(sharedDatastores, accessibleDatastores)
|
||||||
|
Loading…
Reference in New Issue
Block a user