1. 09 Aug, 2018 23 commits
  2. 08 Aug, 2018 17 commits
    • Satyadeep Musuvathy's avatar
      025a0b3b
    • Kenjiro Nakayama's avatar
    • Kubernetes Submit Queue's avatar
      Merge pull request #67148 from yujuhong/add-gci-owner · 8f92b8e2
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue. 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>.
      
      GCE: Add OWNERS for image (gci) configuration
      
      **What this PR does / why we need it**:
      
      **Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
      Fixes #
      
      **Special notes for your reviewer**:
      
      **Release note**:
      
      ```release-note
      NONE
      ```
      8f92b8e2
    • Kubernetes Submit Queue's avatar
      Merge pull request #67149 from luxas/clientconfig_kubeconfig · a205089c
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue (batch tested with PRs 67061, 66589, 67121, 67149). 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>.
      
      Rename KubeConfigFile to Kubeconfig in ClientConnectionConfiguration
      
      **What this PR does / why we need it**:
      As discussed with @liggitt we should make the field name and JSON tag consistent, and we concluded `Kubeconfig` and `kubeconfig` is the most consistent naming we have (e.g. wrt `--kubeconfig`), so we're going with that naming for the `ClientConnectionConfiguration` struct. Also, this preserves backwards-compat wrt existing serialized configuration. This fixes the API violation.
      
      **Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
      ref: https://github.com/kubernetes/community/pull/2354
      
      **Special notes for your reviewer**:
      
      **Release note**:
      
      ```release-note
      NONE
      ```
      /assign  @liggitt @sttts
      a205089c
    • Kubernetes Submit Queue's avatar
      Merge pull request #67121 from feiskyer/azdisk-affinity · ae351f11
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue (batch tested with PRs 67061, 66589, 67121, 67149). 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>.
      
      Add DynamicProvisioningScheduling and VolumeScheduling support for Azure managed disks
      
      **What this PR does / why we need it**:
      
      Continue of [Azure Availability Zone feature](https://github.com/kubernetes/features/issues/586).
      
      This PR adds `VolumeScheduling` and `DynamicProvisioningScheduling` support to Azure managed disks.
      
      When feature gate `VolumeScheduling` disabled, no NodeAffinity set for PV:
      
      ```yaml
      kubectl describe pv
      Name:              pvc-d30dad05-9ad8-11e8-94f2-000d3a07de8c
      Labels:            failure-domain.beta.kubernetes.io/region=southeastasia
                         failure-domain.beta.kubernetes.io/zone=southeastasia-2
      Annotations:       pv.kubernetes.io/bound-by-controller=yes
                         pv.kubernetes.io/provisioned-by=kubernetes.io/azure-disk
                         volumehelper.VolumeDynamicallyCreatedByKey=azure-disk-dynamic-provisioner
      Finalizers:        [kubernetes.io/pv-protection]
      StorageClass:      default
      Status:            Bound
      Claim:             default/pvc-azuredisk
      Reclaim Policy:    Delete
      Access Modes:      RWO
      Capacity:          5Gi
      Node Affinity:
        Required Terms:
          Term 0:        failure-domain.beta.kubernetes.io/region in [southeastasia]
                         failure-domain.beta.kubernetes.io/zone in [southeastasia-2]
      Message:
      Source:
          Type:         AzureDisk (an Azure Data Disk mount on the host and bind mount to the pod)
          DiskName:     k8s-5b3d7b8f-dynamic-pvc-d30dad05-9ad8-11e8-94f2-000d3a07de8c
          DiskURI:      /subscriptions/<subscription-id>/resourceGroups/<rg-name>/providers/Microsoft.Compute/disks/k8s-5b3d7b8f-dynamic-pvc-d30dad05-9ad8-11e8-94f2-000d3a07de8c
          Kind:         Managed
          FSType:
          CachingMode:  None
          ReadOnly:     false
      Events:           <none>
      ```
      
      When feature gate `VolumeScheduling` enabled, NodeAffinity will be populated for PV:
      
      ```yaml
      kubectl describe pv
      Name:              pvc-0284337b-9ada-11e8-a7f6-000d3a07de8c
      Labels:            failure-domain.beta.kubernetes.io/region=southeastasia
                         failure-domain.beta.kubernetes.io/zone=southeastasia-2
      Annotations:       pv.kubernetes.io/bound-by-controller=yes
                         pv.kubernetes.io/provisioned-by=kubernetes.io/azure-disk
                         volumehelper.VolumeDynamicallyCreatedByKey=azure-disk-dynamic-provisioner
      Finalizers:        [kubernetes.io/pv-protection]
      StorageClass:      default
      Status:            Bound
      Claim:             default/pvc-azuredisk
      Reclaim Policy:    Delete
      Access Modes:      RWO
      Capacity:          5Gi
      Node Affinity:
        Required Terms:
          Term 0:        failure-domain.beta.kubernetes.io/region in [southeastasia]
                         failure-domain.beta.kubernetes.io/zone in [southeastasia-2]
      Message:
      Source:
          Type:         AzureDisk (an Azure Data Disk mount on the host and bind mount to the pod)
          DiskName:     k8s-5b3d7b8f-dynamic-pvc-0284337b-9ada-11e8-a7f6-000d3a07de8c
          DiskURI:      /subscriptions/<subscription-id>/resourceGroups/<rg-name>/providers/Microsoft.Compute/disks/k8s-5b3d7b8f-dynamic-pvc-0284337b-9ada-11e8-a7f6-000d3a07de8c
          Kind:         Managed
          FSType:
          CachingMode:  None
          ReadOnly:     false
      Events:           <none>
      ```
      
      When both  `VolumeScheduling` and `DynamicProvisioningScheduling` are enabled, storage class also supports `allowedTopologies` and `volumeBindingMode: WaitForFirstConsumer` for volume topology aware dynamic provisioning:
      
      ```yaml
      apiVersion: storage.k8s.io/v1
      kind: StorageClass
      metadata:
        annotations:
        name: managed-disk-dynamic
      parameters:
        cachingmode: None
        kind: Managed
        storageaccounttype: Standard_LRS
      provisioner: kubernetes.io/azure-disk
      reclaimPolicy: Delete
      volumeBindingMode: WaitForFirstConsumer
      allowedTopologies:
      - matchLabelExpressions:
        - key: failure-domain.beta.kubernetes.io/zone
          values:
          - southeastasia-2
          - southeastasia-1
      ```
      
      **Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
      Fixes #
      
      **Special notes for your reviewer**:
      
      **Release note**:
      
      ```release-note
      DynamicProvisioningScheduling and VolumeScheduling is not supported for Azure managed disks. Feature gates DynamicProvisioningScheduling and VolumeScheduling should be enabled before using this feature.
      ```
      
      /kind feature
      /sig azure
      /cc @brendandburns @khenidak @andyzhangx
      /cc @ddebroy @msau42 @justaugustus
      ae351f11
    • Kubernetes Submit Queue's avatar
      Merge pull request #66589 from MorrisLaw/get_load_balancer_name_per_provider · dd4ab76f
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue (batch tested with PRs 67061, 66589, 67121, 67149). 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>.
      
      Get load balancer name per provider
      
      **What this PR does / why we need it**:
      GetLoadBalancerName() should be implemented per cloud provider as opposed to one neutral implementation.
      
      This PR will address this by moving `cloudprovider.GetLoadBalancerName()` to the `LoadBalancer interface` and then provide an implementation for each cloud provider, while maintaining previously expected functionality.
      
      **Which issue(s) this PR fixes**:
      Fixes  [#43173](https://github.com/kubernetes/kubernetes/issues/43173)
      
      **Special notes for your reviewer**:
      This is a work in progress. Looking for feedback as I work on this, from any interested parties.
      
      **Release note**:
      
      ```release-note
      NONE
      ```
      dd4ab76f
    • Kubernetes Submit Queue's avatar
      Merge pull request #67061 from Random-Liu/fix-docker-registry · 8a475592
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue. 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>.
      
      Fix docker registry used in e2e test.
      
      See https://github.com/kubernetes/kubernetes/pull/66055#issuecomment-410947650.
      
      Fix docker registry used in e2e test, so that it works with all container runtimes.
      
      **Release note**:
      
      ```release-note
      none
      ```
      
      /cc @kubernetes/sig-node-pr-reviews @kubernetes/sig-testing-pr-reviews
      8a475592
    • Kubernetes Submit Queue's avatar
      Merge pull request #67108 from yujuhong/crictl-test · 06bac188
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue. 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>.
      
      GCE: add a crictl test
      
      This verifies that crictl is available on the node.
      
      
      
      **What this PR does / why we need it**:
      
      **Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
      Fixes #
      
      **Special notes for your reviewer**:
      
      **Release note**:
      
      ```release-note
      NONE
      ```
      06bac188
    • Lucas Käldström's avatar
    • Davanum Srinivas's avatar
      Multi-arch images for echoserver · a2d94d9a
      Davanum Srinivas authored
      Originally from:
      https://github.com/kubernetes/ingress-nginx/tree/master/images/echoheaders
      
      Moving the code here to prevent bit-rot and to be sure we can recreate
      or update the images on demand. Moving it here also ensures we can use
      the common harness to build the multi-arch manifests needed for running
      the e2e test that use this container.
      
      Change-Id: I15009268da4e7809a1c03d9af3181b585afa8139
      a2d94d9a
    • Yu-Ju Hong's avatar
      GCE: Add OWNERS for image (gci) configuration · ae6a76a4
      Yu-Ju Hong authored
      ae6a76a4
    • Lantao Liu's avatar
      Fix docker registry used in e2e test. · e232c4fe
      Lantao Liu authored
      e232c4fe
    • Yu-Ju Hong's avatar
      GCE: add a crictl test · 0bd9d47c
      Yu-Ju Hong authored
      This verifies that crictl is available on the node.
      0bd9d47c
    • Kubernetes Submit Queue's avatar
      Merge pull request #67117 from xiangpengzhao/check-cfgpath · 652cebcb
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue. 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>.
      
      Check config path for command "kubeadm alpha phase kubelet write-env-file"
      
      **What this PR does / why we need it**:
      Explicitly check the `--config` flag of command `kubeadm alpha phase kubelet write-env-file`.
      
      **Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
      Fixes https://github.com/kubernetes/kubeadm/issues/1043
      
      **Special notes for your reviewer**:
      
      **Release note**:
      
      ```release-note
      NONE
      ```
      652cebcb
    • Kubernetes Submit Queue's avatar
      Merge pull request #67030 from dims/multi-arch-images-for-apparmor-loader · 69ae3144
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue. 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>.
      
      Multi-arch images for apparmor-loader container
      
      **What this PR does / why we need it**:
      
      Originally from:
      https://github.com/kubernetes/contrib/tree/master/apparmor/loader
      
      Moving the code here to prevent bit-rot and to be sure we can recreate
      or update the images on demand. Moving it here also ensures we can use
      the common harness to build the multi-arch manifests needed for running
      the apparmor e2e test can run on multiple architectures.
      
      Change-Id: Idece17c494fc944c0aaef64805d2f0e3c4d7fb28
      
      **Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
      Fixes #
      
      **Special notes for your reviewer**:
      
      **Release note**:
      
      ```release-note
      NONE
      ```
      69ae3144
    • Kubernetes Submit Queue's avatar
      Merge pull request #66698 from WanLinghao/token_projected_improve · e38efdcc
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue. 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>.
      
      refuse serviceaccount projection volume request when pod has no servceaccount bounded
      
      **What this PR does / why we need it**:
      Currently, if user starts a cluster with ServiceAccount admission plugin disabled, then creates a Pod 
      like this:
      ```
      kind: Pod 
      apiVersion: v1
      metadata:
        labels:
          run: nginx
        name: busybox2
      spec:
            containers:
            - image: gcr.io/google-containers/nginx
              name: nginx
              volumeMounts:
              - mountPath: /var/run/secrets/tokens
                name: token
            - image: ubuntu
              name: ttt 
              volumeMounts:
              - mountPath: /var/run/secrets/tokens
                name: token
              command: [ "/bin/bash", "-c", "--" ]
              args: [ "while true; do sleep 30; done;" ]
            volumes:
            - name: token
              projected:
                sources:
                - serviceAccountToken:
                    path: tokenPath
                    expirationSeconds: 6000
                    audience: gakki-audiences
      ```
      The pod creation will fail with error info like:
      Events:
      ```
        Type     Reason       Age               From                Message
        ----     ------       ----              ----                -------
        Normal   Scheduled    23s               default-scheduler   Successfully assigned office/busybox2 to 127.0.0.1
        Warning  FailedMount  8s (x6 over 23s)  kubelet, 127.0.0.1  MountVolume.SetUp failed for volume "token" : failed to fetch token: resource name may not be empty
      ```
      We should refuse the projection request earlier. This patch fix this.
      
      
      **Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
      Fixes #
      
      **Special notes for your reviewer**:
      
      **Release note**:
      
      ```release-note
      NONE
      ```
      e38efdcc
    • Kubernetes Submit Queue's avatar
      Merge pull request #66932 from nilebox/discovery-include-unavailable · 28d649c2
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue (batch tested with PRs 66394, 66888, 66932). 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>.
      
      Include unavailable apiservices in discovery response
      
      **What this PR does / why we need it**:
      Include unavailable apiservices into `apis/` discovery endpoint response to fix namespace deletion https://github.com/kubernetes-incubator/service-catalog/issues/2254
      
      **Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
      Fixes https://github.com/kubernetes-incubator/service-catalog/issues/2254
      
      **Special notes for your reviewer**:
      
      **Release note**:
      
      
      ```release-note
      kube-apiserver now includes all registered API groups in discovery, including registered extension API group/versions for unavailable extension API servers.
      ```
      28d649c2