• Kubernetes Submit Queue's avatar
    Merge pull request #55845 from vmware/multi-vc-upstream · e201d342
    Kubernetes Submit Queue authored
    Automatic merge from submit-queue (batch tested with PRs 55112, 56029, 55740, 56095, 55845). If you want to cherry-pick this change to another branch, please follow the instructions <a href="https://github.com/kubernetes/community/blob/master/contributors/devel/cherry-picks.md">here</a>.
    
    Updating vsphere cloud provider to support k8s cluster spread across multiple vCenters
    
    **What this PR does / why we need it**:
    
    vSphere cloud provider in Kubernetes 1.8 was designed to work only if all the nodes of the cluster are in one single datacenter folder. This is a hard restriction that makes the cluster not span across different folders/datacenter/vCenters. Users have use-cases to span the cluster across datacenters/vCenters.
    
    **Which issue(s) this PR fixes** 
    Fixes # https://github.com/vmware/kubernetes/issues/255
    
    **Special notes for your reviewer**:
    This is a change purely in vsphere cloud provider and no changes in kubernetes core are needed.
    
    **Release note**:
    ```release-note
    With this change
     - User should be able to create k8s cluster which spans across multiple ESXi clusters, datacenters or even vCenters.
     - vSphere cloud provider (VCP) uses OS hostname and not vSphere Inventory VM Name.
       That means, now  VCP can handle cases where user changes VM inventory name.
    - VCP can handle cases where VM migrates to other ESXi cluster or datacenter or vCenter.
    
    The only requirement is the shared storage. VCP needs shared storage on all Node VMs.
    ```
    
    Internally tested and reviewed the code.
    
    @tthole, @shaominchen, @abrarshivani
    e201d342
Name
Last commit
Last update
..
aws_ebs Loading commit data...
azure_dd Loading commit data...
azure_file Loading commit data...
cephfs Loading commit data...
cinder Loading commit data...
configmap Loading commit data...
csi Loading commit data...
downwardapi Loading commit data...
empty_dir Loading commit data...
fc Loading commit data...
flexvolume Loading commit data...
flocker Loading commit data...
gce_pd Loading commit data...
git_repo Loading commit data...
glusterfs Loading commit data...
host_path Loading commit data...
iscsi Loading commit data...
local Loading commit data...
nfs Loading commit data...
photon_pd Loading commit data...
portworx Loading commit data...
projected Loading commit data...
quobyte Loading commit data...
rbd Loading commit data...
scaleio Loading commit data...
secret Loading commit data...
storageos Loading commit data...
testing Loading commit data...
util Loading commit data...
validation Loading commit data...
vsphere_volume Loading commit data...
BUILD Loading commit data...
OWNERS Loading commit data...
doc.go Loading commit data...
metrics_cached.go Loading commit data...
metrics_du.go Loading commit data...
metrics_du_test.go Loading commit data...
metrics_errors.go Loading commit data...
metrics_nil.go Loading commit data...
metrics_nil_test.go Loading commit data...
metrics_statfs.go Loading commit data...
metrics_statfs_test.go Loading commit data...
plugins.go Loading commit data...
plugins_test.go Loading commit data...
util.go Loading commit data...
util_test.go Loading commit data...
volume.go Loading commit data...
volume_linux.go Loading commit data...
volume_unsupported.go Loading commit data...