Commit Graph

1839 Commits

Author SHA1 Message Date
Kubernetes Submit Queue
01a4a600ac Merge pull request #52120 from abgworrall/cvm-to-cos-by-default
Automatic merge from submit-queue (batch tested with PRs 52227, 52120)

Use COS for nodes in testing clusters by default, and bump COS.

Addresses part of issue #51487. May assist with #51961 and #50695.

CVM is being deprecated, and falls out of support on 2017/10/01. We shouldn't run test jobs on it. So start using COS for all test jobs.

The default value of `KUBE_NODE_OS_DISTRIBUTION` for clusters created for testing will now be gci. Testjobs that do not specify this value will now run on clusters using COS (aka GCI) as the node OS, instead of CVM, the previous default.

This change only affects testing; non-testing clusters already use COS by default.

In addition, bump the version of COS from `cos-stable-60-9592-84-0` to `cos-stable-60-9592-90-0`.

```release-note
NONE
```
/cc @yujuhong, @mtaufen, @fejta, @krzyzacy
2017-09-12 01:09:17 -07:00
Eric Chiang
cd3c8770c5 Revert "Add cluster up configuration for certificate signing duration."
This reverts commit bd0c16cc8e.
2017-09-11 16:28:17 -07:00
Kubernetes Submit Queue
ed154988c5 Merge pull request #51844 from jcbsmpsn/add-signing-duration-configuration-flag
Automatic merge from submit-queue

Add cluster up configuration for certificate signing duration.

```release-note
Add CLUSTER_SIGNING_DURATION environment variable to cluster configuration scripts
to allow configuration of signing duration of certificates issued via the Certificate
Signing Request API.
```
2017-09-08 13:24:20 -07:00
Jeff Grafton
b310b328d1 Convert deprecated gcloud --regexp flag into --filter 2017-09-07 14:39:38 -07:00
Adam Worrall
d32b9a6925 Use COS for nodes in cluster by default, and bump COS.
Addresses part of issue #51487.

This is a big change for testing; any testjobs that do not
set an explicit KUBE_NODE_OS_DISTRIBUTION will have been running
on CVM, but after this PR will start running COS.

CVM is being deprecated, and falls out of support on 2018/10/01.

In addition, bump the patch version of COS from
cos-stable-60-9592-84-0 to cos-stable-60-9592-90-0.
2017-09-07 14:33:28 -07:00
Nick Sardo
2bea4f7dd1 Fall back to network if subnet is unknown 2017-09-06 11:59:47 -07:00
Kubernetes Submit Queue
fa916c1002 Merge pull request #51986 from yujuhong/docker-pids
Automatic merge from submit-queue (batch tested with PRs 51921, 51829, 51968, 51988, 51986)

COS/GCE: bump the max pids for the docker service

**What this PR does / why we need it**:
TasksMax limits how many threads/processes docker can create. Insufficient limit affects container starts.

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*:
fixes #51977

**Special notes for your reviewer**:

**Release note**:
```release-note
Ensure TasksMax is sufficient for docker
```
2017-09-05 21:03:17 -07:00
Kubernetes Submit Queue
578690448a Merge pull request #51988 from zmerlynn/fix-pod-priority
Automatic merge from submit-queue (batch tested with PRs 51921, 51829, 51968, 51988, 51986)

Fix unbound variable in configure-helper.sh

This isn't plumbed yet on GKE, so results in an unbound variable.

```release-note
NONE
```
2017-09-05 21:03:15 -07:00
Kubernetes Submit Queue
63fde2af16 Merge pull request #51968 from yujuhong/fix-alphas
Automatic merge from submit-queue (batch tested with PRs 51921, 51829, 51968, 51988, 51986)

GCE: pass GCE_ALPHA_FEATURES environment variable

This fixes #51976

This PR fixes the tests in https://k8s-testgrid.appspot.com/sig-network#gce-alpha-api
2017-09-05 21:03:13 -07:00
Kubernetes Submit Queue
e8d99f5839 Merge pull request #51645 from jingxu97/Aug/nameserver
Automatic merge from submit-queue (batch tested with PRs 51186, 50350, 51751, 51645, 51837)

Set up DNS server in containerized mounter path

During NFS/GlusterFS mount, it requires to have DNS server to be able to
resolve service name. This PR gets the DNS server ip from kubelet and
add it to the containerized mounter path. So if containerized mounter is
used, service name could be resolved during mount
**Release note**:

```release-note
Allow DNS resolution of service name for COS using containerized mounter.  It fixed the issue with DNS resolution of NFS and Gluster services.
```
2017-09-05 17:30:09 -07:00
Zach Loafman
bd86be402c Fix unbound variable in configure-helper.sh
This isn't plumbed yet on GKE, so results in an unbound variable.
2017-09-05 16:21:58 -07:00
Yu-Ju Hong
d6de90e8f7 COS/GCE: Ensure TasksMax is sufficient for docker
This affects how many threads/processes docker can create, and should
not be limited.
2017-09-05 16:18:43 -07:00
Jacob Simpson
bd0c16cc8e Add cluster up configuration for certificate signing duration. 2017-09-05 15:56:33 -07:00
Kubernetes Submit Queue
bcf22bcf6a Merge pull request #51951 from shyamjvs/heapster-node-with-ip-alias
Automatic merge from submit-queue

Make heapster VM creation work with IP aliases

Our experiment with 5k-node run today failed due to this :(
2017-09-05 15:46:10 -07:00
Yu-Ju Hong
9c95143365 GCE: pass GCE_ALPHA_FEATURES if it is set 2017-09-05 13:25:48 -07:00
Jing Xu
3d4bc931d3 Set up DNS server in containerized mounter path
During NFS/GlusterFS mount, it requires to have DNS server to be able to
resolve service name. This PR gets the DNS server ip from kubelet and
add it to the containerized mounter path. So if containerized mounter is
used, service name could be resolved during mount
2017-09-05 11:40:23 -07:00
Shyam Jeedigunta
009f62ebad Make heapster VM creation work with IP aliases 2017-09-05 14:45:26 +02:00
Nick Sardo
8ac7bb5fb2 Use different project id for network ops & always set subnet 2017-09-04 09:55:56 -07:00
Kubernetes Submit Queue
ffed1d3408 Merge pull request #51792 from piosz/metrics-server
Automatic merge from submit-queue (batch tested with PRs 49727, 51792)

Introducing metrics-server

ref https://github.com/kubernetes/features/issues/271

There is still some work blocked on problems with repo synchronization:
- migrate to `v1beta1` introduced in #51653 
- bump deps to HEAD
Will do it in a follow up PRs once the issue is resolved.

```release-note
Introduced Metrics Server
```
2017-09-04 03:37:59 -07:00
Kubernetes Submit Queue
53ee4397e7 Merge pull request #51827 from bowei/2ndary-range-name
Automatic merge from submit-queue (batch tested with PRs 51682, 51546, 51369, 50924, 51827)

Add `secondary-range-name` to the gce.conf

```release-note
NONE
```
2017-09-03 15:54:25 -07:00
Kubernetes Submit Queue
47d0db0e87 Merge pull request #51237 from gunjan5/calico-2.5-rbac
Automatic merge from submit-queue

Add RBAC, healthchecks, autoscalers and update Calico to v2.5.1

**What this PR does / why we need it**:
- Updates Calico to `v2.5`
  - Calico/node to `v2.5.1`
  - Calico CNI to `v1.10.0`
  - Typha to `v0.4.1`
- Enable health check endpoints
  - Add Readiness probe for calico-node and Typha
  - Add Liveness probe for calico-node and Typha
- Add RBAC manifest
  - With calico ClusterRole, ServiceAccount and ClusterRoleBinding
- Add Calico CRDs in the Calico manifest (only works for k8s v1.7+)
- Add vertical autoscaler for calico-node and Typha
- Add horizontal autoscaler for Typha 

**Release note**:

```release-note
NONE
```
2017-09-03 14:01:04 -07:00
Piotr Szczesniak
55c21ac801 Introduced Metrics Server 2017-09-03 22:13:59 +02:00
Kubernetes Submit Queue
9637f46122 Merge pull request #51725 from nicksardo/gce-plumb-netvars
Automatic merge from submit-queue (batch tested with PRs 51805, 51725, 50925, 51474, 51638)

GCE: Plumb network & subnetwork to master

**Which issue this PR fixes** *
Fixes #51714

/assign @bowei 

**Release note**:
```release-note
NONE
```
2017-09-03 11:10:00 -07:00
Kubernetes Submit Queue
5632613c5b Merge pull request #51069 from MrHohn/kube-proxy-pod-priority
Automatic merge from submit-queue (batch tested with PRs 51553, 51538, 51663, 51069, 51737)

Allow enable pod priority feature gate for GCE and configure priority for kube-proxy

**What this PR does / why we need it**:
From #23225, this PR adds an option for user to enable pod priority feature gate using GCE startup scripts, and configure pod priority for kube-proxy when enabled.

The setup `priorityClassName: system` derives from: ce1485c626/staging/src/k8s.io/api/core/v1/types.go (L2536-L2542)

The plan is to configure pod priority for kube-proxy daemonset (https://github.com/kubernetes/kubernetes/pull/50705) in the same way.

**Special notes for your reviewer**:
cc @bsalamat @davidopp @thockin 

**Release note**:

```release-note
When using kube-up.sh on GCE, user could set env `ENABLE_POD_PRIORITY=true` to enable pod priority feature gate.
```
2017-09-02 21:58:04 -07:00
Kubernetes Submit Queue
af52d4403c Merge pull request #51690 from bowei/service-as-2ndary
Automatic merge from submit-queue (batch tested with PRs 51583, 51283, 51374, 51690, 51716)

Create a secondary range for the services instead of a subnetwork

GCE now supports >1 secondary ranges / subnetwork.

Fixes #51774 

```release-note
When using IP aliases, use a secondary range rather than subnetwork to reserve cluster IPs.
```
2017-09-02 20:35:26 -07:00
Kubernetes Submit Queue
a4428b3f7b Merge pull request #48627 from verult/FlexOnCOSScript
Automatic merge from submit-queue (batch tested with PRs 51590, 48217, 51209, 51575, 48627)

FlexVolume setup script for COS instance using mounting utility image in GCR.

**What this PR does / why we need it**: This scripts automates FlexVolume installation for a single COS instance. Users need to pre-pack their drivers and mount utilities in a Docker image and upload it to GCR.

For each FlexVolume plugin, the script places a driver wrapper in a writable and executable location. The wrapper calls commands from the actual driver but in a chroot environment, so that mount utilities from the image can be used.

I'm working on a script that automatically executes this on all instances. Will be in a separate PR.

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #48626 

```release-note
NONE
```

/cc @gmarek @chakri-nelluri 
/assign @saad-ali @msau42 
/sig storage
/release-note-none
2017-09-02 11:12:16 -07:00
Kubernetes Submit Queue
2e69d4e625 Merge pull request #51564 from verult/MasterFlexDir
Automatic merge from submit-queue

Adding Flexvolume plugin dir piping for controller manager on COS

**What this PR does / why we need it**: Sets the default Flexvolume plugin directory correctly for controller manager running on COS images.

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #51563

```release-note
NONE
```

/release-note-none
/sig storage
/assign @msau42 
/cc @wongma7
2017-09-02 08:20:13 -07:00
Bowei Du
1aeebcf6d3 Add secondary-range-name to the gce.conf 2017-09-01 14:28:16 -07:00
Gunjan Patel
05661b68eb Add RBAC, healthchecks, autoscaler and update Calico to v2.5.0, Typha to 0.4.0 2017-09-01 12:52:53 -07:00
Kubernetes Submit Queue
9a3a578cd8 Merge pull request #51480 from mml/timeout-flag
Automatic merge from submit-queue (batch tested with PRs 51480, 49616, 50123, 50846, 50404)

Add KUBE_APISERVER_REQUEST_TIMEOUT_SEC env var.

Cluster startup support for the flag added by #51415.  I won't merge until that PR merges.

Bug: #51355

cc @jpbetz
2017-08-31 20:08:35 -07:00
Nick Sardo
506064376b Set NODE_NETWORK and NODE_SUBNETWORK in kube-up 2017-08-31 17:23:30 -07:00
Matt Liggett
ef0503b834 Add KUBE_APISERVER_REQUEST_TIMEOUT_SEC env var.
If set, connect it to kube-apiserver's --request-timeout flag.
2017-08-31 14:33:10 -07:00
Bowei Du
f14cc276b0 Add bowei to the OWNER for cluster/gce 2017-08-31 10:29:19 -07:00
Bowei Du
b145beb3da Create a secondary range for the services instead of a subnetwork
GCE now supports >1 secondary ranges / subnetwork.
2017-08-31 01:33:17 -07:00
Kubernetes Submit Queue
e3210c6ccf Merge pull request #51533 from shyamjvs/master-creation-retry
Automatic merge from submit-queue

Retry master instance creation in case of retriable error (with sleep)

To help with our 5k-node CI tests failing to startup the cluster.
And also towards the greater goal - https://github.com/kubernetes/kubernetes/issues/43140

cc @kubernetes/sig-scalability-misc @kubernetes/sig-cluster-lifecycle-misc
2017-08-30 05:14:49 -07:00
Kubernetes Submit Queue
04bc4ec716 Merge pull request #50398 from pci/gcloud-compute-list
Automatic merge from submit-queue (batch tested with PRs 47054, 50398, 51541, 51535, 51545)

Switch away from gcloud deprecated flags in compute resource listings

**What is fixed**

Remove deprecated `gcloud compute` flags, see linked issue.

**Which issue this PR fixes**:

fixes #49673 

**Special notes for your reviewer**:

The change in `gcloudComputeResourceList` in `test/e2e/framework/ingress_utils.go` isn't strictly needed as currently no affected resources are called on within that file, however the function has the _potential_ to access affected resources so I covered it as well. Happy to change if deemed unnecessary.

**Release note**:

```release-note
NONE
```
2017-08-30 01:51:29 -07:00
Philip Ingrey
697f92a5d2
Switch away from gcloud deprecated flags in compute resource listings 2017-08-30 06:41:09 +01:00
Shyam JVS
36910232ab Merge pull request #51343 from shyamjvs/correct-cluster-ip-range
Correct default cluster-ip-range subnet
2017-08-30 01:31:50 +02:00
Cheng Xing
da2a7a0bcc Adding Flexvolume plugin dir piping for master on COS 2017-08-29 15:09:29 -07:00
Shyam Jeedigunta
2df4698473 Correct default cluster-ip-range subnet 2017-08-29 23:15:23 +02:00
Kubernetes Submit Queue
0d17e9deb7 Merge pull request #48574 from sakshamsharma/kms-transformer
Automatic merge from submit-queue

Add Google cloud KMS service for envelope encryption transformer

This adds the required pieces which will allow addition of KMS based encryption providers (envelope transformer).

For now, we will be implementing it using Google Cloud KMS, but the code should make it easy to add support for any other such provider which can expose Decrypt and Encrypt calls.

Writing tests for Google Cloud KMS Service may cause a significant overhead to the testing framework. It has been tested locally and on GKE though.

Upcoming after this PR:
* Complete implementation of the envelope transformer, which uses LRU cache to maintain decrypted DEKs in memory.
* Track key version to assist in data re-encryption after a KEK rotation.

Development branch containing the changes described above: https://github.com/sakshamsharma/kubernetes/pull/4

Envelope transformer used by this PR was merged in #49350 

Concerns #48522 

Planned configuration:
```
kind: EncryptionConfig
apiVersion: v1
resources:
  - resources:
    - secrets
    providers:
    - kms:
        cachesize: 100
        configfile: gcp-cloudkms.conf
        name: gcp-cloudkms
    - identity: {}
```

gcp-cloudkms.conf:
```
[GoogleCloudKMS]
    kms-location: global
    kms-keyring: google-container-engine
    kms-cryptokey: example-key
```
2017-08-29 11:11:10 -07:00
Zihong Zheng
f2def6575c Configure pod priority for kube-proxy when enabled 2017-08-29 10:06:51 -07:00
Zihong Zheng
09e2e251a8 Set up ENABLE_POD_PRIORITY env for GCE and common.sh 2017-08-29 09:58:20 -07:00
Shyam Jeedigunta
2595f66466 Retry master instance creation in case of retriable error (with sleep) 2017-08-29 18:10:49 +02:00
Kubernetes Submit Queue
83bff8df0b Merge pull request #51471 from ixdy/gcloud-compute-managed-list
Automatic merge from submit-queue (batch tested with PRs 51471, 50561, 50435, 51473, 51436)

Fix `gcloud compute instance-groups managed list` call

**What this PR does / why we need it**: gcloud 168.0.0 makes the `gcloud compute instance-groups managed list --format='value(instanceGroup)'` call return a URL instead of just the name, which is causing `list-instances` to fail. Switching to `--format='value(name)'` seems to restore the old behavior.

x-ref #49673 

**Release note**:

```release-note
NONE
```

/cc @wojtek-t @mwielgus @shyamjvs @jiayingz @mindprince
2017-08-29 02:22:06 -07:00
Kubernetes Submit Queue
04b3ab9aba Merge pull request #50705 from MrHohn/kube-proxy-ds
Automatic merge from submit-queue (batch tested with PRs 50932, 49610, 51312, 51415, 50705)

Allow running kube-proxy as a DaemonSet when using kube-up.sh on GCE

**What this PR does / why we need it**:
From #23225, this PR adds an option for user to run kube-proxy as a DaemonSet instead of static pods using GCE startup scripts. By default, kube-proxy will run as static pods.

This is the first step for moving kube-proxy into a DaemonSet in GCE, remaining tasks will be tracked on #23225.

**Special notes for your reviewer**:
The last commit are purely for testing out kube-proxy as daemonset via CIs.

cc @kubernetes/sig-network-misc @kubernetes/sig-cluster-lifecycle-misc 

**Release note**:

```release-note
When using kube-up.sh on GCE, user could set env `KUBE_PROXY_DAEMONSET=true` to run kube-proxy as a DaemonSet. kube-proxy is run as static pods by default.
```
2017-08-29 01:17:45 -07:00
Saksham Sharma
3e11baf702 Add Google Cloud KMS plugin for encryption 2017-08-29 11:15:27 +05:30
Zihong Zheng
6d35b94fc3 Add kube-proxy daemonset track to GCE startup scripts (GCI, Debian and CoreOS). 2017-08-28 13:31:07 -07:00
Zihong Zheng
1102656c88 Set up KUBE_PROXY_DAEMONSET env for GCE and common.sh. 2017-08-28 13:31:01 -07:00
Jeff Grafton
0d1055213d Fix gcloud compute instance-groups managed list call 2017-08-28 12:24:37 -07:00