1. 12 Jun, 2018 16 commits
    • Kubernetes Submit Queue's avatar
      Merge pull request #64974 from luxas/kubeadm_v111_bugs · 52866471
      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>.
      
      kubeadm: Fix small-ish bugs for v1.11
      
      **What this PR does / why we need it**:
      
      Fixes a bunch of bugs I noticed when I was reading the source code:
       - `--cloud-provider` should also be propagated to the kubelet when converting configs from v1alpha1 to v1alpha2
       - The validation for `.NodeRegistration.Name` is practically non-existent, just verifies the name isn't in upper case. Instead we currently do that validation in preflight checks, which is in the totally wrong place.
       - Now that we pull images in preflight checks, the timeout for the kubelet to start the Static Pods should be kinda short, as it doesn't depend on internet connection
       - I think the shorthand for `kubeadm reset --force` ought to be `-f`
       - The common flags between `upgrade apply` and `upgrade plan` were registered as global flags for the `upgrade` command, although they make no sense for `upgrade diff` and/or `upgrade node config`. Hence, I moved them to be locally registered.
       - Just because we vendor `glog` we have a lot of unnecessary/annoying flags registered in glog's `init()` function. Let's hide these properly.
       - I saw that `kubeadm upgrade apply` doesn't write down the new kubelet config that should be used, now that is the case. Also, the CRISocket annotation information is now preserved properly on upgrade (and is configurable using the `--cri-socket` flag)
       - If `kubeadm join` is run against a v1.10 cluster without the `kubelet-config-1.10` configmap,  it shouldn't fail.
      
      What I will still investigate:
       - `kubeadm token create` should have a flag called `--ttl`, not `--token-ttl` as it is now (this snuck in in this dev cycle)
       - That `--dry-run` works properly for `upgrade`, end to end.
      
      **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
      ```
      @kubernetes/sig-cluster-lifecycle-pr-reviews
      52866471
    • Kubernetes Submit Queue's avatar
      Merge pull request #65020 from detiber/etcd_grpc_gateway · 588e0887
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue (batch tested with PRs 64862, 65020). 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>.
      
      kubeadm - fix local etcd grpc gateway
      
      **What this PR does / why we need it**:
      etcd 3.2 uses the server certificate as the client cert for the grpc
      gateway, this updates the generation of the etcd server certificate to
      add client usage to resolve the issue.
      
      **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/910
      
      **Release note**:
      ```release-note
      NONE
      ```
      588e0887
    • Kubernetes Submit Queue's avatar
      Merge pull request #64862 from feiskyer/win-cni · 67ebbc67
      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>.
      
      Revert #64189: Fix Windows CNI for the sandbox case
      
      **What this PR does / why we need it**:
      
      This reverts PR #64189, which breaks DNS for Windows containers.
      
      Refer https://github.com/kubernetes/kubernetes/pull/64189#issuecomment-395248704
      
      **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 #64861
      
      **Special notes for your reviewer**:
      
      **Release note**:
      
      ```release-note
      NONE
      ```
      
      cc @madhanrm @PatrickLang @alinbalutoiu @dineshgovindasamy
      67ebbc67
    • Kubernetes Submit Queue's avatar
      Merge pull request #64768 from krzysied/scale_retries · 7e41ab4e
      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>.
      
      Adding scale error retries
      
      **What this PR does / why we need it**:
      ScaleWithRetries will retry all retryable errors, not only conflict error.
      ref #63030
      
      **Which issue(s) this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close the issue(s) when PR gets merged)*:
      
      **Special notes for your reviewer**:
      
      **Release note**:
      
      ```release-note
      NONE
      ```
      7e41ab4e
    • Lucas Käldström's avatar
      autogenerated · f126f782
      Lucas Käldström authored
      f126f782
    • Lucas Käldström's avatar
      5d96a719
    • Jason DeTiberus's avatar
      kubeadm - fix local etcd grpc gateway · b8e8e353
      Jason DeTiberus authored
      - etcd 3.2 uses the server certificate as the client cert for the grpc
        gateway, this updates the generation of the etcd server certificate to
        add client usage to resolve the issue.
      b8e8e353
    • Kubernetes Submit Queue's avatar
      Merge pull request #64988 from detiber/setPeerURLs · 7f00fe4c
      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>.
      
      kubeadm - set peer urls for default etcd instance
      
      **What this PR does / why we need it**:
      
      Override the default peer URLs for the default etcd instance. Previously we left the defaults, which meant the peer URL was unsecured previously.
      
      **Release note**:
      ```release-note
      kubeadm - Ensure the peer port is secured by explicitly setting the peer URLs for the default etcd instance.
      kubeadm - Ensure that the etcd certificates are generated using a proper CN
      kubeadm - Update generated etcd peer certificate to include localhost addresses for the default configuration.
      kubeadm - Increase the manifest update timeout to make upgrades a bit more reliable.
      ```
      7f00fe4c
    • Kubernetes Submit Queue's avatar
      Merge pull request #64994 from cheftako/aggrDelay · b15b18f9
      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>.
      
      Extended e2e/aggr test wait on sample-apiserver
      
      **What this PR does / why we need it**:
      The e2e/aggegator test usually passes. When it does it seems
      to take almost 30 seconds for the sample-apiserver to start returning
      2xx rather than 4xx to flunder requests. On the failing tests I looked
      at it was taking almost 45 seconds for the sample-apiserver to become
      healthy. I bumped the wait/timeout in the test for this case to 60
      seconds. I also added a log statement to make it easier to track how
      long it was taking for the sample-apiserver to come up. 
      
      **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 #63622
      
      **Special notes for your reviewer**:
      Once we have a bit more history I will log a bug for the long start up time.
      We should also determine how far back we want to check compatibility. 
      The current test is checking 1.7.
      
      **Release note**:
      
      ```release-note
      None
      ```
      b15b18f9
    • Krzysztof Siedlecki's avatar
      Adding scale error retries · 8a3c2dcc
      Krzysztof Siedlecki authored
      8a3c2dcc
    • Kubernetes Submit Queue's avatar
      Merge pull request #64969 from mfojtik/volume-01-fix-allocations · 52603a78
      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>.
      
      volume: decrease memory allocations for debugging messages
      
      **What this PR does / why we need it**:
      
      <img width="1769" alt="screen shot 2018-06-11 at 13 15 31" src="https://user-images.githubusercontent.com/44136/41230128-ebf7233c-6d7e-11e8-899d-6251a5fde236.png">
      
      On large clusters, where the glog is not running on V(5) using the format as: `glog.V(5).Infof(fmt.Sprintf(....))` will cause the code inside `Infof()` to be ran and generate a tons of memory allocations even if the output of those messages are not returned to the console...
      
      This patch should reduce those calls and also the string allocations done by message generation.
      
      **Release note**:
      ```release-note
      NONE
      ```
      52603a78
    • Jason DeTiberus's avatar
      kubeadm - local etcd configuration bugfixes · 793a51ce
      Jason DeTiberus authored
      - Set peer urls for default etcd instance to avoid leaving peer port unsecured
      - Update generated etcd peer certificate SANs to include localhost
      - Use a proper CN for etcd server and peer certificates
      - Increase the manifest update timeout
      793a51ce
    • Kubernetes Submit Queue's avatar
      Merge pull request #64987 from dashpole/update_cadvisor_v0.30.1 · 6decdaa7
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue (batch tested with PRs 64503, 64903, 64643, 64987). 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>.
      
      Update cadvisor godeps to v0.30.1 to revert cadvisor#1916
      
      /sig node
      /priority critical-urgent
      /kind bug
      
      **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 #64933
      
      **Release note**:
      
      ```release-note
      Kubernetes depends on v0.30.1 of cAdvisor
      ```
      6decdaa7
    • Kubernetes Submit Queue's avatar
      Merge pull request #64643 from dashpole/memcg_poll · 8e03228c
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue (batch tested with PRs 64503, 64903, 64643, 64987). 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>.
      
      Use unix.EpollWait to determine when memcg events are available to be Read
      
      **What this PR does / why we need it**:
      This fixes a file descriptor leak introduced in https://github.com/kubernetes/kubernetes/pull/60531 when the `--experimental-kernel-memcg-notification` kubelet flag is enabled.  The root of the issue is that `unix.Read` blocks indefinitely when reading from an event file descriptor and there is nothing to read.  Since we refresh the memcg notifications, these reads accumulate until the memcg threshold is crossed, at which time all reads complete.  However, if the node never comes under memory pressure, the node can run out of file descriptors.
      
      This PR changes the eviction manager to use `unix.EpollWait` to wait, with a 10 second timeout, for events to be available on the eventfd.  We only read from the eventfd when there is an event available to be read, preventing an accumulation of `unix.Read` threads, and allowing the event file descriptors to be reclaimed by the kernel.
      
      This PR also breaks the creation, and updating of the memcg threshold into separate portions, and performs creation before starting the periodic synchronize calls.  It also moves the logic of configuring memory thresholds into memory_threshold_notifier into a separate file.
      
      This also reverts https://github.com/kubernetes/kubernetes/pull/64582, as the underlying leak that caused us to disable it for testing is fixed here.
      
      Fixes #62808
      
      **Release note**:
      ```release-note
      NONE
      ```
      
      /sig node
      /kind bug
      /priority critical-urgent
      8e03228c
    • Kubernetes Submit Queue's avatar
      Merge pull request #64903 from WanLinghao/token_projected_fix · d61b681d
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue (batch tested with PRs 64503, 64903, 64643, 64987). 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 a bug of wrong parameters which could cause token projection failure
      
      **What this PR does / why we need it**:
      a parameter wrong order bug
      **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
      ```
      d61b681d
    • Kubernetes Submit Queue's avatar
      Merge pull request #64503 from kgolab/kg-ca-rbac · ec434662
      Kubernetes Submit Queue authored
      Automatic merge from submit-queue (batch tested with PRs 64503, 64903, 64643, 64987). 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>.
      
      Create system:cluster-autoscaler account & role and introduce it to C…
      
      **What this PR does / why we need it**:
      
      This PR adds cluster-autoscaler ClusterRole & binding, to be used by the Cluster Autoscaler (kubernetes/autoscaler repository).
      It also updates GCE scripts to make CA use the cluster-autoscaler user account.
      
      User account instead of Service account is chosen to be more in line with kube-scheduler.
      
      **Which issue(s) this PR fixes**:
      
      Fixes [issue 383](https://github.com/kubernetes/autoscaler/issues/383) from kubernetes/autoscaler.
      
      **Special notes for your reviewer**:
      
      This PR might be treated as a security fix since prior to it CA on GCE was using system:cluster-admin account, assumed due to default handling of unsecured & unauthenticated traffic over plain HTTP.
      
      **Release note**:
      
      ```release-note
      A cluster-autoscaler ClusterRole is added to cover only the functionality required by Cluster Autoscaler and avoid abusing system:cluster-admin role.
      
      action required: Cloud providers other than GCE might want to update their deployments or sample yaml files to reuse the role created via add-on.
      ```
      ec434662
  2. 11 Jun, 2018 14 commits
  3. 09 Jun, 2018 1 commit
  4. 08 Jun, 2018 8 commits
  5. 07 Jun, 2018 1 commit