1. 28 Mar, 2017 3 commits
    • wlan0's avatar
      Use ProviderID to address nodes in the cloudprovider · a68c783d
      wlan0 authored
      The cloudprovider is being refactored out of kubernetes core. This is being
      done by moving all the cloud-specific calls from kube-apiserver, kubelet and
      kube-controller-manager into a separately maintained binary(by vendors) called
      cloud-controller-manager. The Kubelet relies on the cloudprovider to detect information
      about the node that it is running on. Some of the cloudproviders worked by
      querying local information to obtain this information. In the new world of things,
      local information cannot be relied on, since cloud-controller-manager will not
      run on every node. Only one active instance of it will be run in the cluster.
      
      Today, all calls to the cloudprovider are based on the nodename. Nodenames are
      unqiue within the kubernetes cluster, but generally not unique within the cloud.
      This model of addressing nodes by nodename will not work in the future because
      local services cannot be queried to uniquely identify a node in the cloud. Therefore,
      I propose that we perform all cloudprovider calls based on ProviderID. This ID is
      a unique identifier for identifying a node on an external database (such as
      the instanceID in aws cloud).
      a68c783d
    • Kubernetes Submit Queue's avatar
      Merge pull request #42974 from vmware/VSANPolicyProvisioningForKubernetesOnKubernetesRepo · 38431080
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue (batch tested with PRs 42835, 42974)
      
      VSAN policy support for storage volume provisioning inside kubernetes
      
      The vsphere users will have the ability to specify custom Virtual SAN Storage Capabilities during dynamic volume provisioning. You can now define storage requirements, such as performance and availability, in the form of storage capabilities during dynamic volume provisioning. The storage capability requirements are converted into a Virtual SAN policy which are then pushed down to the Virtual SAN layer when a storage volume (virtual disk) is being created. The virtual disk is distributed across the Virtual SAN datastore to meet the requirements.
      
      For example, User creates a storage class with VSAN storage capabilities:
      
      > kind: StorageClass
      > apiVersion: storage.k8s.io/v1beta1
      > metadata:
      >   name: slow
      > provisioner: kubernetes.io/vsphere-volume
      > parameters:
      >   hostFailuresToTolerate: "2"
      >   diskStripes: "1"
      >   cacheReservation: "20"
      >   datastore: VSANDatastore
      
      The vSphere Cloud provider provisions a virtual disk (VMDK) on VSAN with the policy configured to the disk.
      
      When you know storage requirements of your application that is being deployed on a container, you can specify these storage capabilities when you create a storage class inside Kubernetes.
      
      @pdhamdhere @tthole @abrarshivani @divyenpatel 
      
      **Release note**:
      
      ```release-note
      None
      ```
      38431080
    • Kubernetes Submit Queue's avatar
      Merge pull request #42835 from deads2k/server-01-remove-insecure · 4159cb57
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue (batch tested with PRs 42835, 42974)
      
      remove legacy insecure port options from genericapiserver
      
      The insecure port has been a source of problems and it will prevent proper aggregation into a cluster, so the genericapiserver has no need for it.  In addition, there's no reason for it to be in the main kube-apiserver flow either.  This pull removes it from genericapiserver and removes it from the shared kube-apiserver code.  It's still wired up in the command, but its no longer possible for someone to mess up and start using in mainline code.
      
      @kubernetes/sig-api-machinery-misc @ncdc
      4159cb57
  2. 27 Mar, 2017 37 commits