Commit Graph

3497 Commits

Author SHA1 Message Date
k8s-merge-robot
16e2e87a89 Merge pull request #23605 from mikedanese/pause-kube
Automatic merge from submit-queue

don't ship kube-registry-proxy and pause images in tars.

pause is built into containervm. if it's not on the machine we should just pull
it. nobody that I'm aware of uses kube-registry-proxy and it makes build/deployment
more complicated and slower.
2016-04-15 00:26:20 -07:00
Daniel Smith
7e666e0865 Merge pull request #24213 from mikedanese/max-time
add a timeout for a single retry in download-or-bust
2016-04-14 16:53:51 -07:00
Daniel Smith
4389aa1364 Merge pull request #23931 from luxas/build_for_arm64
Build Kubernetes, etcd and flannel for arm64 and ppc64le
2016-04-14 15:10:37 -07:00
k8s-merge-robot
1186f4bf85 Merge pull request #24177 from a-robinson/gke
Automatic merge from submit-queue

Fix GKE kube-up to correctly find an IGM from a multi-zone cluster

I've confirmed that this successfully brings up a cluster, fixing the immediate issue with the new e2e test. Sorry about not properly vetting it in the original PR (#24075).

This does cause a warning message to be printed based on the handling of the NUM_NODES variable though, which I could fix if you guys think it's worth it:
```
Detected 6 ready nodes, found 6 nodes out of expected 3. Found more nodes than expected, your cluster may not behave correctly.
```

@quinton-hoole
2016-04-14 06:34:12 -07:00
k8s-merge-robot
7daa26e51d Merge pull request #24162 from jlowdermilk/fix-log-dump
Automatic merge from submit-queue

Fix log dump for new gcloud

`gcloud compute instance-groups managed list-instances` at CI has self-link for instance instead of just name. Fixes #24120
2016-04-14 03:47:27 -07:00
Lucas Käldström
4559a84d3b Build Kubernetes, etcd and flannel for arm64 and ppc64le 2016-04-14 07:29:10 +03:00
k8s-merge-robot
a12cec52e5 Merge pull request #24172 from andyzheng0831/fix
Automatic merge from submit-queue

Trusty: Fixes for running GKE master

This PR includes two fixes for running GKE master on our image: 
(1) The kubelet command line assembly had a missing part for cbr0. We did not catch it because the code path is not covered by OSS k8s tests;

(2) Remove the "" from the variables in the cert files. It causes a parsing issue in GKE. Again, this code path is not covered by k8s tests.

This PR also refactors the code for assembling kubelet flag. I move all logic into a single function assemble_kubelet_flags in configure-helper.sh for better readability and also simplify node.yaml and master.yaml. 

@roberthbailey @dchen1107 please review it, and mark it as cherrypick-candidate. This PR is verified by @maisem. Together with his CL for GKE, we can run GKE cluster with master on our image and nodes on ContainerVM.

cc/ @maisem @fabioy @wonderfly FYI
2016-04-13 20:04:15 -07:00
Daniel Smith
4983a8fd55 Merge pull request #24144 from andyzheng0831/enhance
Trusty: Avoid unnecessary in-memory temp files
2016-04-13 14:18:38 -07:00
Mike Danese
8e8c55a323 add a timeout for a single retry in download-or-bust
This only applies to gce kube-up. 60 seconds of open connection should
be sufficient for anything that we should be downloading. The release
tar is currently 255M.
2016-04-13 12:24:11 -07:00
k8s-merge-robot
af1e1c3ce6 Merge pull request #23992 from mml/docker-checker
Automatic merge from submit-queue

Rewrite docker-checker.sh to make it less kill-happy.
2016-04-13 10:10:25 -07:00
Alex Robinson
b30c4d4975 Fix GKE kube-up to correctly find an IGM from a multi-zone cluster. 2016-04-12 20:21:13 -07:00
Andy Zheng
b5a1595c98 Trusty: Fix master kubelet command assembly 2016-04-12 15:53:16 -07:00
Jeff Lowdermilk
f8c135dc1f Fix log dump for new gcloud 2016-04-12 14:40:13 -07:00
k8s-merge-robot
6ff05bb9e1 Merge pull request #23827 from derekwaynecarr/remove_sc_deny_vagrant
Automatic merge from submit-queue

Remove SecurityContextDeny from vagrant setup

This should not be needed in the vagrant setup.
2016-04-12 10:23:35 -07:00
Alex Robinson
80a75ff76c Merge pull request #24075 from a-robinson/multizone
Add an e2e test suite for multi-zone GKE clusters.
2016-04-12 09:31:24 -07:00
Matt Liggett
e6af5ee296 Rewrite docker-checker.sh to make it less kill-happy.
Also a little more organized and easier to re-use.
Should minimize the incidence of #23461.
2016-04-11 16:57:29 -07:00
Andy Zheng
988f16a1e2 Trusty: Avoid unnecessary in-memory temp files 2016-04-11 15:55:01 -07:00
k8s-merge-robot
78dc9c7716 Merge pull request #19376 from luxas/dns_cross_platform
Automatic merge from submit-queue

Make kube2sky and skydns docker images cross-platform

ARM tracking issue: #17981
Continues on: #19216

Make it possible to create `kube2sky` and `skydns` docker images for ARM and other architectures too
Build in a container, so `golang` isn't a dependency
I've preserved the original default behaviour:
 - `skydns`: It just compiles with go on host
 - `kube2sky`: Build an image

@brendandburns @dchen1107 @ArtfulCoder @thockin @fgrzadkowski
2016-04-11 05:47:10 -07:00
Lucas Käldström
1c8140c2ac Make kube2sky and skydns docker images cross-platform: amd64, arm, arm64 and ppc64le 2016-04-11 07:31:59 +03:00
Jeff Lowdermilk
347158e520 Merge pull request #23680 from rosskukulinski/master
Add KUBERNETES_RELEASE option to get-kube.sh
2016-04-08 20:53:47 -07:00
Alex Robinson
e686ba978f Add an e2e test suite for multi-zone GKE clusters. 2016-04-09 00:14:44 +00:00
Jeff Lowdermilk
e17213a2a8 Merge pull request #23491 from onorua/master
set KillMode for kubelet to process, fix for #13511
2016-04-08 16:39:32 -07:00
Jeff Lowdermilk
7720a16bcf Merge pull request #23893 from mbhinder/kubernetes
Fixed typo: kuberntes -> kubernetes
2016-04-08 12:47:36 -07:00
Jeff Lowdermilk
d8f42f848d Merge pull request #23996 from andyzheng0831/fix
Trusty: Do not create the docker-daemon cgroup
2016-04-08 12:45:16 -07:00
Jeff Lowdermilk
601262af0d Merge pull request #24058 from jlowdermilk/fix-list-resources
Fix list-resources grep
2016-04-08 12:41:40 -07:00
Jeff Lowdermilk
650d99fbd9 Fix list-resources grep 2016-04-08 12:19:24 -07:00
Jeff Lowdermilk
ca5b764210 Merge pull request #23876 from mikedanese/stop-to-delete
use kubectl delete in kube-addon-manager instead of stop
2016-04-08 09:30:56 -07:00
Andy Zheng
b1e18f3ca0 Trusty: Do not create the docker-daemon cgroup 2016-04-07 13:43:26 -07:00
Minhan Xia
f690220b5c Merge pull request #23704 from freehan/kubenet
Update cni binary

#23712 is depending on this. Not sure why this one gets in first. Hand merging this
2016-04-06 15:47:42 -07:00
Preet Bhinder
d178d78013 Fixed typo: kuberntes -> kubernetes
"Kubernetes" was misspelled in a couple of places.
2016-04-05 16:20:08 -07:00
k8s-merge-robot
4f329516ae Merge pull request #22149 from luxas/onedotsix
Automatic merge from submit-queue

Up to golang 1.6

A second attempt to upgrade go version above `go1.4`
Merge ASAP after you've cut the `release-1.2` branch and feel ready.
`go1.6` should perform slightly better than `go1.5`, so this time it might work
@gmarek @wojtek-t @zmerlynn @mikedanese @brendandburns @ixdy @thockin
2016-04-05 13:26:18 -07:00
Mike Danese
7b8dbf4876 use kubectl delete in kube-addon-manager instead of stop
stop has been deprecated for about a year
2016-04-05 09:31:45 -07:00
Mike Danese
32426d6e97 don't ship kube-registry-proxy and pause in tars.
pause is built into containervm. if it's not on the machine we should just pull
it. nobody that I'm aware of uses kube-registry-proxy and it makes build/deployment
more complicated and slower.
2016-04-05 07:32:07 -07:00
k8s-merge-robot
b8d000853e Merge pull request #21617 from luxas/hyperkube_for_arm
Automatic merge from submit-queue

Cross-build hyperkube and debian-iptables for ARM. Also add a flannel image

We have to be able to build complex docker images too on `amd64` hosts.
Right now we can't build Dockerfiles with `RUN` commands when building for other architectures e.g. ARM.

Resin has a tutorial about this here: https://resin.io/blog/building-arm-containers-on-any-x86-machine-even-dockerhub/
But it's a bit clumsy syntax.

The other alternative would be running this command in a Makefile:
```
# This registers in the kernel that ARM binaries should be run by /usr/bin/qemu-{ARCH}-static
docker run --rm --privileged multiarch/qemu-user-static:register --reset
```
and 
```
ADD https://github.com/multiarch/qemu-user-static/releases/download/v2.5.0/x86_64_qemu-arm-static.tar.xz /usr/bin
```
Then the kernel will be able to differ ARM binaries from amd64. When it finds a ARM binary, it will invoke `/usr/bin/qemu-arm-static` first and lets `qemu` translate the ARM syscalls to amd64 ones.
Some code here: https://github.com/multiarch

WDYT is the best approach? If registering `binfmt_misc` in the kernels of the machines is OK, then I think we should go with that.
Otherwise, we'll have to wait for resin's patch to be merged into mainline qemu before we may use the code I have here now.

@fgrzadkowski @david-mcmahon @brendandburns @zmerlynn @ixdy @ihmccreery @thockin
2016-04-04 22:03:32 -07:00
k8s-merge-robot
ce988c8d75 Merge pull request #23817 from matjohn2/pr_cni_vagrant
Automatic merge from submit-queue

support NETWORK_PROVIDER=cni for KUBERNETES_PROVIDER=vagrant

While trying to develop CNI plugins for K8's, I found the docs referenced the support of --network-plugin=cni for kubelet, but this wasn't surfaced up via salt to support env NETWORK_PROVIDER=cni before a kube-up deployment.

This PR is my attempt at adding CNI support to the kube-up happy path, following a lot of similar work for NETWORK_PROVIDER=kubenet which already exists.

Also, I've added the ability to consume CNI plugin's (binaries) and configuration files from the local cluster/network-plugins directory into the necessary locations as referenced here for CNI:
http://kubernetes.io/docs/admin/network-plugins 
This allows a local developer to easily work on CNI plugin development while following the existing kube-up.sh docs and process.

In general, i've struggled to find any authoritative information or answers to my questions in slack regarding CNI progress / correct integration, so comments encouraged here!
2016-04-04 14:30:22 -07:00
k8s-merge-robot
6173c43c80 Merge pull request #23724 from maciaszczykm/dashboard-release-v1.0.1
Automatic merge from submit-queue

Update Dashboard UI addon to v1.0.1

Release details:
https://github.com/kubernetes/dashboard/releases/tag/v1.0.1

CC @bryk
2016-04-04 14:30:20 -07:00
Lucas Käldström
560268e036 Add a flannel image for arm and amd64. Cross-build debian-iptables for arm, arm64 and ppc64le. Build and push hyperkube for arm on every release 2016-04-04 23:33:32 +03:00
derekwaynecarr
9e0ebc2773 Remove SecurityContextDeny from vagrant setup 2016-04-04 14:43:21 -04:00
Matt Johnson
ce220836c3 Allow for local CNI binaries and configuration files with KUBERNETES_PROVIDER=vagrant.
Files are taken from cluster/network-plugins/{bin,conf} to be consumed within a vagrant kube-up.sh environment.
Paths used for configuration files and the 'cni' name of the network provider are all from the kubernetes documentation, but the actual implementation in the salt automation doesn't seem to exist.
2016-04-04 14:38:00 +01:00
Matt Johnson
46e6df655f Support use of NETWORK_PROVIDER=cni with KUBERNETES_PROVIDER=vagrant for a kube-up.
Use of NETWORK_PROVIDER=cni is documented as useable (as well as it's affects on the runtime args of kubelet),
however the actual implimentation in the salt automation doesnt seem to exist.
this change attempts to fix that for the vagrant usecase.
2016-04-04 14:37:48 +01:00
Marcin Maciaszczyk
7250028484 Update Dashboard UI addon to v1.0.1
Release details:
https://github.com/kubernetes/dashboard/releases/tag/v1.0.1
2016-04-04 09:13:31 +02:00
k8s-merge-robot
5be819b607 Merge pull request #23612 from mikedanese/addon-fix
Automatic merge from submit-queue

use apply instead of create to setup namespaces and tokens in addon manager

when the addon manager restarts, it takes ~15 minutes (1000 seconds) to start the sync loop because it retries creation of namespace and tokens 100 times. Create fails if the tokens already exist. Just use apply.
2016-04-03 05:50:12 -07:00
k8s-merge-robot
47bcf37198 Merge pull request #23045 from justinsb/aws_bump_image_20160316
Automatic merge from submit-queue

AWS kube-up: Bump jessie image
2016-04-03 03:47:34 -07:00
k8s-merge-robot
b448825211 Merge pull request #23603 from mikedanese/dont-create-secret-for-dns
Automatic merge from submit-queue

stop creating secrets for dns, it uses the kube-system service account now
2016-04-02 17:20:52 -07:00
k8s-merge-robot
372c1647b8 Merge pull request #23440 from mbruzek/juju-kube-up
Automatic merge from submit-queue

Juju kube up

I found some problems with the kube-up script that this pull request addresses. We didn't have the kubectl binary in the correct location. 

Just changing where we download the package from the master, and fixing the kube-down.sh script to remove those files.
2016-04-02 08:19:26 -07:00
Justin Santa Barbara
f43f398cad AWS kube-up: Allow BLOCK_DEVICE_MAPPINGS_BASE to be empty
We rename it to EPHEMERAL_BLOCK_DEVICE_MAPPINGS, and we also change the value
so that it starts with a `,`, instead of always inserting a comma before it.
In this way the value can be empty.

Also, if the user sets the (currently experimental) KUBE_AWS_STORAGE
environment variable to be "ebs", then we will not mount any instance storage
which will cause the machines to use EBS storage instead.
2016-04-01 22:27:28 -04:00
Justin Santa Barbara
1c3f706383 AWS: Don't error if there are no ephemeral disks
format-disks used to run with non-strict bash semantics, but this changed in
1.2 as we now merge it into the GCE script, so pipefail and errexit are both
set.

However, the way we list the ephemeral disks, by piping to grep, would cause an
exit code of 2 if there were no ephemeral disks.

Tolerate failure here by add `|| true`.  The metadata service call is unlikely
to fail, so we continue to ignore that possibility.
2016-04-01 22:27:20 -04:00
k8s-merge-robot
1521aa8a86 Merge pull request #23550 from luxas/fix_hyperkube_certs
Automatic merge from submit-queue

Fix so setup-files don't recreate/invalidate certificates that already exist

Fixes: #23197 and a lot of other DNS and dashboard issues

This is quite critical for `docker`-based users and should be considered as a **cherrypick-candidate** as it makes a lot of people wonder why Dashboard and/or DNS doesn't work. Example: https://github.com/kubernetes/dashboard/issues/374

Earlier when you shut your `docker.md` cluster down and started it again, all ServiceAccounts became invalidated by `setup-files` that happily ran once again and replaced all files. That made `apiserver` and `controller-manager` pick up the new certs (or there was a race condition, they _could_ have picked up the old certs too, but that's unlikely) and the old certs were put into `/var/run/secrets` because the ServiceAccount's Secrets were stored in etcd, which `setup-files` didn't touch.

@fgrzadkowski @huggsboson @thockin @mikedanese @vishh @pwittrock @eparis @bgrant0607
2016-04-01 14:47:17 -07:00
Lucas Käldström
858b9539d5 Fix so setup-files don't recreate/invalidate certificates that already exist 2016-04-01 21:23:58 +03:00
Matt Bruzek
64d849e4bb Unzipping the kubectl package to platforms so the validation script can find kubectl. 2016-04-01 13:19:17 -05:00