Commit Graph

5848 Commits

Author SHA1 Message Date
Kubernetes Submit Queue
02f9d607c1 Merge pull request #45117 from chuckbutler/add-cifs
Automatic merge from submit-queue (batch tested with PRs 41583, 45117, 45123)

Adds the cifs-common package

**What this PR does / why we need it**:  Enables mounting of CIFS volumes. Required for Azure.

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes https://github.com/juju-solutions/bundle-canonical-kubernetes/issues/227

**Release note**:

```release-note
Added CIFS PV support for Juju Charms
```
2017-04-28 20:15:05 -07:00
Vishnu kannan
e74d4a0d68 Adding support for Accelerators to GCE clusters.
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2017-04-28 15:57:39 -07:00
Kubernetes Submit Queue
0a0b6889e5 Merge pull request #45032 from everett-toews/rm-rackspace
Automatic merge from submit-queue

Remove the Rackspace provider

**What this PR does / why we need it**:

To aid the effort of moving providers out of the cluster dir, I'm
removing Rackspace and leaving behind a README.md simply as a
placeholder until the entire dir is deleted.

**Which issue this PR fixes**

Fixes #6962

**Release note**:

```release-note
Deployment of Kubernetes clusters on Rackspace using the in-tree bash deployment (i.e. cluster/kube-up.sh or get-kube.sh) is obsolete and support has been removed.```
2017-04-28 14:50:10 -07:00
Davanum Srinivas
49faff32da Support running StatefulSetBasic e2e tests with local-up-cluster
Currently StatefulSet(s) fail when you use local-up-cluster without
setting a cloud provider. In this PR, we use set the
kubernetes.io/host-path provisioner as the default provisioner when
there CLOUD_PROVIDER is not specified. This enables e2e test(s)
(specifically StatefulSetBasic) to work.
2017-04-28 15:10:22 -04:00
Charles Butler
9ee4e99dc6 Adds the cifs-common package
Enable mounting of filesystems over the CIFS protocol. Closes
https://github.com/juju-solutions/bundle-canonical-kubernetes/issues/227
2017-04-28 13:50:05 -05:00
Kubernetes Submit Queue
929bb8b5d0 Merge pull request #43620 from ktsakalozos/bug/juju-master
Automatic merge from submit-queue (batch tested with PRs 41530, 44814, 43620, 41985)

Fixes juju kubernetes master: 1. Get certs from a dead leader. 2. Append tokens.

**What this PR does / why we need it**:
Fixes two issues with the Juju kubernetes master.

1. Grab certificates from a leader that is already removed.
2. Append (not truncate) auth tokens 

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

**Special notes for your reviewer**:

**Release note**:

```
Recover certificates from leadership context in case all masters die in a Juju deployment
```
2017-04-28 10:03:39 -07:00
Kubernetes Submit Queue
94567f64e1 Merge pull request #45096 from crassirostris/fluentd-metrics-exporter
Automatic merge from submit-queue

Add metrics exporter to the fluentd-gcp deployment

Metrics exporter container reads metrics from the `/metrics` endpoint in fluentd and exports them directly to the Stackdriver. It assumes that Stackdriver Monitoring API is enabled.

/cc @fgrzadkowski
2017-04-28 08:42:06 -07:00
Kubernetes Submit Queue
bec2c604ac Merge pull request #44921 from jacekn/registry-fix
Automatic merge from submit-queue (batch tested with PRs 42432, 44628, 45101, 44921)

Use correct option name in the kubernetes-worker layer registry action

**What this PR does / why we need it**: It fixes #44920 

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

**Special notes for your reviewer**:

**Release note**:

```
Ensure kubernetes-worker juju layer registry action uses correct ingress controller option name
```
2017-04-28 08:41:39 -07:00
Konstantinos Tsakalozos
e99d606277 Merge branch 'master' into bug/juju-master 2017-04-28 18:19:55 +03:00
Konstantinos Tsakalozos
7c6547a145 Retry of pods availablity 6 times over a minute 2017-04-28 18:06:39 +03:00
Mik Vyatskov
fb3e30729e Add metrics exporter to the fluentd-gcp deployment 2017-04-28 13:27:19 +02:00
Kubernetes Submit Queue
5097971d1d Merge pull request #45055 from nicksardo/glbc-v0.9.3-bump
Automatic merge from submit-queue

Bump GLBC version to 0.9.3

**What this PR does / why we need it**:
Bumps version of GLBC shipped with K8s
https://github.com/kubernetes/ingress/releases/tag/0.9.3
```
Major Changelog:

Bug fix: adding backends to existing backend-services #652
Bug fix: handling of secret-based SSL Certs #639
Add second LB healthcheck/proxy traffic source CIDR #574 #479
Support backside re-encryption (HTTPS) #519
```
The two noted bugs are common occurrences for GKE users

**Release note**:
```release-note
Bump GLBC version to 0.9.3
```
2017-04-27 18:03:33 -07:00
Everett Toews
d90b01f8dd Remove the Rackspace provider
Fixes #6962

To aid the effort of moving providers out of the cluster dir, I'm
removing Rackspace and leaving behind a README.md simply as a
placeholder until the entire dir is deleted.
2017-04-27 18:18:48 -05:00
Nick Sardo
71ca925b05 Bump GLBC version to 0.9.3 2017-04-27 15:49:01 -07:00
Kubernetes Submit Queue
963e056515 Merge pull request #45044 from juju-solutions/gkk/e2e-snap
Automatic merge from submit-queue (batch tested with PRs 42740, 44980, 45039, 41627, 45044)

Update kubernetes-e2e charm to use snaps

**What this PR does / why we need it**:

This updates the kubernetes-e2e charm to use snaps instead of Juju resources for payload delivery.

The main advantage of this is that it decouples the charm from the e2e payload, allowing us to support multiple versions of Kubernetes with a single release of the charm.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
Update kubernetes-e2e charm to use snaps
```
2017-04-27 13:27:09 -07:00
Kubernetes Submit Queue
a2eb8888fb Merge pull request #45031 from crassirostris/fluent-gcp-monitoring-fix
Automatic merge from submit-queue

Remove too verbose label from fluentd metrics

/cc @fabxc
2017-04-27 10:55:20 -07:00
Kubernetes Submit Queue
549bd4b7d5 Merge pull request #44591 from ixdy/bazel-push-build
Automatic merge from submit-queue (batch tested with PRs 44591, 44549)

Update repo-infra bazel dependency and use new gcs_upload rule

This PR provides similar functionality to push-build.sh entirely within Bazel rules (though it relies on gsutil).

It's an alternative to #44306.

Depends on https://github.com/kubernetes/repo-infra/pull/13.

**Release note**:

```release-note
NONE
```
2017-04-27 10:54:56 -07:00
Mik Vyatskov
0625697dd5 Remove too verbose label from fluentd metrics 2017-04-27 17:16:25 +02:00
Maciej Pytel
b6574bd7b9 Update cluster-autoscaler logging config
Previously it would duplicate all logs,
writing to master /var/log and /tmp inside pod.
2017-04-27 13:32:32 +02:00
zhangxiaoyu-zidif
030c53f585 README.md: Update outdated links 2017-04-27 09:11:18 +08:00
Charles Butler
690be0fb82 Fixes #43461
The master-components started state triggers a daemon recycle. The guard
was to prevent the daemons from being cycled too often and interrupting
normal workflow. This additional state check is guarded against the etcd
connection string from changing, allowing the current behavior but
triggers a re-configure and recycle of the api-control plane when etcd
units are scaling up and down.
2017-04-26 14:39:03 -05:00
Kubernetes Submit Queue
6d17ab3201 Merge pull request #44744 from yguo0905/ubuntu-gce-cluster-tests
Automatic merge from submit-queue

Support running Ubuntu image on GCE

**What this PR does / why we need it**:

This PR (on top of #44629) contains the script changes for running Ubuntu image on GCE.

**Special notes for your reviewer**:

We made change in `gci/node.yaml` and `gci/master.yaml` to ensure that Kubernetes jobs can start automatically after reboot. This is not needed for GCI but required by Ubuntu. See https://github.com/kubernetes/kubernetes/pull/44744#discussion_r113105970 for details. With this change, Ubuntu could use the same provisioning scripts as GCI's.

Ran e2e tests using the following command and all tests passed.

```
KUBE_GCE_NODE_IMAGE=ubuntu-gke-1604-xenial-v20170420-1 KUBE_GCE_NODE_PROJECT=ubuntu-os-gke-cloud KUBE_NODE_OS_DISTRIBUTION=ubuntu GINKGO_PARALLEL=y GINKGO_PARALLEL_NODES=30 go run hack/e2e.go -- -v --build --up --test --test_args="--ginkgo.skip=\[Slow\]|\[Serial\]|\[Disruptive\]|\[Flaky\]|\[Feature:.+\]" --down
```

Also tested manually for both GCI and Ubuntu images.

**Release note**:
`Support Ubuntu 16.04 image on GCE`
2017-04-26 11:12:56 -07:00
Kubernetes Submit Queue
b5caa6beb3 Merge pull request #44945 from ktsakalozos/bug/dns-fix
Automatic merge from submit-queue

Send dns details only after cdk-addons are configured

**What this PR does / why we need it**: This is a bugfix on the deployment of Kubernetes via Juju. See issue below.

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes #40386 and
https://github.com/juju-solutions/bundle-canonical-kubernetes/issues/262

**Special notes for your reviewer**:

**Release note**:

```
Fix KubeDNS issue in Juju deployments. 
```
2017-04-26 10:10:17 -07:00
Konstantinos Tsakalozos
6d32bb001f Retry methods and set states so we immediately report config changes. 2017-04-26 19:04:18 +03:00
George Kraft
8d9abda68a Update kubernetes-e2e charm to use snaps 2017-04-26 10:02:01 -05:00
Kubernetes Submit Queue
e917f4ed39 Merge pull request #44866 from shyamjvs/prepare-for-logexporter
Automatic merge from submit-queue

Allow disabling log dump for nodes (in preparation for using logexporter)

This is, in part, a change required for allowing usage of [logexporter](https://github.com/kubernetes/test-infra/tree/master/logexporter) for dumping node logs to GCS directly, instead of doing it through log-dump.sh.

cc @kubernetes/test-infra-maintainers @wojtek-t @gmarek @fejta
2017-04-26 06:32:31 -07:00
Kubernetes Submit Queue
4fdee60b36 Merge pull request #44931 from chuckbutler/worker-pause-action
Automatic merge from submit-queue (batch tested with PRs 44931, 44808)

Closes #44392

**What this PR does / why we need it**:

Fix the pause action with regard to the new behavior where
--delete-local-data=false by default. Historically --force was all that
was required, this flag has changed to be more descriptive of the
actions it's taking.

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


**Release note**:

```release-note
Added support to the pause action in the kubernetes-worker charm for new flag --delete-local-data
```
2017-04-26 05:48:38 -07:00
Konstantinos Tsakalozos
d228609dca Send dns details only after cdk-addons are configured 2017-04-26 10:35:27 +03:00
Yang Guo
0d66fc97cd Makes cluster/gce/ubuntu to be a symlink to cluster/gce/gci and changes the gci's [master|node].yaml to enable kubernetes.target.
This enables Ubuntu to use the same provisioning scripts as GCI's. The
change for enabling kubernetes.target is needed for Ubuntu but a no-op
for GCI.
2017-04-25 16:19:00 -07:00
Charles Butler
fe1422569b Closes #44392
Fix the pause action with regard to the new behavior where
--delete-local-data=false by default. Historically --force was all that
was required, this flag has changed to be more descriptive of the
actions it's taking.
2017-04-25 16:26:13 -05:00
Lucas Käldström
6b5d5371d9
Bump to go1.8.1 and remove the edge GOROOT 2017-04-25 23:45:47 +03:00
Jeff Grafton
a9bfae8ec3 Update repo-infra bazel dependency and use new gcs_upload rule 2017-04-25 13:45:28 -07:00
Jacek Nykis
e02db69826 Use correct option name in the kubernetes-worker registry action. Fixes #44920 2017-04-25 16:38:21 +01:00
Kubernetes Submit Queue
40d51462b2 Merge pull request #44277 from jacekn/juju-namespaces
Automatic merge from submit-queue

Add namespace-{list, create, delete} actions to the kubernetes-master layer

**What this PR does / why we need it**:

This PR adds namespace-{list,create,delete} actions to the juju kubernetes-master layer.

**Which issue this PR fixes**: fixes #43712

**Special notes for your reviewer**:

Original PR https://github.com/juju-solutions/kubernetes/pull/109

**Release note**:

```
Add  namespace-{list,create,delete} actions to the juju kubernetes-master layer
```
2017-04-25 06:10:14 -07:00
Shyam Jeedigunta
02249de49b Allow disabling log dump for nodes (in preparation for using logexporter) 2017-04-25 10:48:33 +02:00
Kubernetes Submit Queue
cb8a2bc5f7 Merge pull request #44860 from mwielgus/ca-0.5.2
Automatic merge from submit-queue (batch tested with PRs 40060, 44860, 44865, 44825, 44162)

Bump Cluster Autoscaler to 0.5.2

Fixes PVC issue in Cluster Autoscaler (kubernetes/contrib#2507).

cc: @MaciekPytel @fgrzadkowski
2017-04-24 23:07:40 -07:00
Charles Butler
6c2fa2f05e Document the NodePort workflow for kubernetes-worker
closes
https://github.com/juju-solutions/bundle-canonical-kubernetes/issues/259

NodePort networking model has no daemon listening to lend a hand so any
NodePort services will need to be manually declared and exposed.
2017-04-24 10:58:38 -05:00
Marcin Wielgus
1f561d16ff Bump Cluster Autoscaler to 0.5.2 2017-04-24 17:36:34 +02:00
Kubernetes Submit Queue
12adc0e8d3 Merge pull request #44780 from chuckbutler/vsphere-hostname-patch
Automatic merge from submit-queue (batch tested with PRs 42486, 44780)

Hostname patch for vsphere provider limitations with juju

**What this PR does / why we need it**:
The Juju VSphere provider doesn't set a unique hostname which causes issues when scaling worker-pools and they all have the hostname `ubuntuguest`. Instead we assign the JUJU_UNIT_NAME to that hostname to prevent the collision which allows the master to sort out that there are multiple units and not one attempting re-registration.

**Which issue this PR fixes** *(optional, in `fixes #<issue number>(, fixes #<issue_number>, ...)` format, will close that issue when PR gets merged)*: fixes https://github.com/juju-solutions/bundle-canonical-kubernetes/issues/237

**Special notes for your reviewer**:
The charm-pre-exec runs before it installs the charm software so the validation can happen quickly. Check hostname output, as well as kubectl get no post deployment.


```release-note
Resolves juju vsphere hostname bug showing only a single node in a scaled node-pool.
```
2017-04-21 17:13:57 -07:00
Isaac Hollander McCreery
1769af78fa Comment extension 2017-04-21 15:58:39 -07:00
Charles Butler
32acffc7c6 Hostname patch for vsphere provider limitations with juju
This patch sets the hostname to a unique identifier (the juju unit name)
during pre-deployment of the charm. This may not be a FQDN resolveable
hostname but will prevent hostname collision.
2017-04-21 16:25:23 -05:00
Isaac Hollander McCreery
596b9ebca7 Add comments and change function name 2017-04-21 11:25:12 -07:00
Isaac Hollander McCreery
7f599dc52f Make comments in config-default scripts more explicit 2017-04-21 10:27:34 -07:00
nikhiljindal
74b511345f Fixing build break for federation 2017-04-20 22:29:53 -07:00
Chris Glass
cf23d4c939 Add Ubuntu as a platform for e2e tests on GCE
Using Ubuntu on GCE to run cluster e2e tests requires slightly different
node.yaml and master.yaml files than GCI, because Ubuntu uses systemd as
PID 1, wheras GCI uses upstart with a systemd delegate. Therefore the
e2e tests fail using those files since the kubernetes services are not
brought back up after a node/master reboot.
2017-04-20 17:40:51 -07:00
Kubernetes Submit Queue
5cbe7b69fb Merge pull request #44681 from wwwtyro/rye/disable-upstream-docker
Automatic merge from submit-queue (batch tested with PRs 44722, 44704, 44681, 44494, 39732)

prevent installation of docker from upstream

**What this PR does / why we need it**: Disallows installation of upstream docker from PPA in the Juju kubernetes-worker charm.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
Disallows installation of upstream docker from PPA in the Juju kubernetes-worker charm.
```
2017-04-20 16:01:00 -07:00
Rye Terrell
20c36e9c93 prevent installation of docker from upstream 2017-04-20 15:03:36 -05:00
Kubernetes Submit Queue
6bf9f2f0bb Merge pull request #44721 from piosz/remove-fluentd-manifest
Automatic merge from submit-queue (batch tested with PRs 42177, 42176, 44721)

Removed fluentd-gcp manifest pod

```release-note
Fluentd manifest pod is no longer created on non-registered master when creating clusters using kube-up.sh.
```
2017-04-20 12:57:08 -07:00
Kubernetes Submit Queue
1413f2e862 Merge pull request #44555 from luxas/remove_hyperkube_docker_multinode
Automatic merge from submit-queue

Remove the old docker-multinode files that were built into the hyperkube image

**What this PR does / why we need it**:

ref: https://goo.gl/VxSaKx

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

**Special notes for your reviewer**:

**Release note**:

```release-note
The hyperkube image has been slimmed down and no longer includes addon manifests and other various scripts. These were introduced for the now removed docker-multinode setup system.
```

cc @jbeda @brendandburns @bgrant0607 @justinsb @mikedanese
2017-04-20 10:27:04 -07:00
Piotr Szczesniak
113f120e29 Removed fluentd-gcp manifest pod 2017-04-20 15:53:24 +02:00
Marcin Maciaszczyk
4802dff7d9 Update dashboard-controller.yaml 2017-04-20 11:36:12 +02:00
Kubernetes Submit Queue
6d67cdd4d9 Merge pull request #44689 from rmmh/avoid-get-kube-dl-flake
Automatic merge from submit-queue (batch tested with PRs 44687, 44689, 44661)

Retry in get-kube.sh to avoid download flakes.

GCS has up to 2% 5xx rates, so retrying is critical.

This is currently failing about 8 times per day [according to the dashboard](https://storage.googleapis.com/k8s-gubernator/triage/index.html?test=Extract#be2f33fb1e6dd2389d12). It could be backported to reduce the flake rate.

Relase note:
```release-note
NONE
```
2017-04-19 18:52:58 -07:00
Kubernetes Submit Queue
d1f4664f5b Merge pull request #44677 from wwwtyro/rye/kube-proxy-master-flag
Automatic merge from submit-queue

select one api endpoint at random when deploying kubernetes-core charm

**What this PR does / why we need it**: Fixes a bug in the kubernetes-worker Juju charm code that attempted to give kube-proxy more than one api endpoint.

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

**Special notes for your reviewer**: https://github.com/juju-solutions/bundle-canonical-kubernetes/issues/255

**Release note**:

```release-note
Fixes a bug in the kubernetes-worker Juju charm code that attempted to give kube-proxy more than one api endpoint.
```
2017-04-19 15:45:35 -07:00
Ryan Hitchman
65cd30dbbe Retry in get-kube.sh to avoid download flakes. 2017-04-19 15:30:28 -07:00
Kubernetes Submit Queue
3bede2fb4c Merge pull request #44679 from ixdy/porter-cert
Automatic merge from submit-queue

Update gcr.io/google_containers/porter image to 4524579c0e

**What this PR does / why we need it**: updates the porter image to one built at 4524579c0e using go1.8.1.

This incorporates #44638, which has a new dummy certificate that is compliant with go1.8+.

Image has already been pushed.

**Release note**:

```release-note
NONE
```

/assign @liggitt
/cc @luxas @lavalamp
2017-04-19 14:07:27 -07:00
Jeff Grafton
df4e205460 Update gcr.io/google_containers/porter image to 4524579c0e 2017-04-19 11:50:41 -07:00
Rye Terrell
39818e16d4 fix missing comma in list of strings 2017-04-19 13:33:08 -05:00
Rye Terrell
6002481524 select one api endpoint at random instead of erroneously using all of them 2017-04-19 13:19:35 -05:00
Kubernetes Submit Queue
daeac53d51 Merge pull request #44635 from Cynerva/gkk/ceph-secret-type
Automatic merge from submit-queue

Fix ceph-secret type to kubernetes.io/rbd in kubernetes-master charm

**What this PR does / why we need it**:

This fixes the type of the ceph-secret secret that's created by the kubernetes-master charm.

Without the `kubernetes.io/rbd` type, automatic provisioning of PVCs doesn't work.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
Fix ceph-secret type to kubernetes.io/rbd in kubernetes-master charm
```
2017-04-19 07:15:57 -07:00
Kubernetes Submit Queue
605294108f Merge pull request #44040 from cruwe/docu_cluster_addons_registry_fix_selector
Automatic merge from submit-queue

issue_43986: fix docu with non-functional proxy

The documentation defines a couple of replication-controller and service
to provision a docker-registry somewhere on the cluster and have it
available by the name viz. A record of
kube-registry.default.svc.<clustername>.

On each node, http-proxies are placed as daemon-set with the
kube-registry DNS name set as upstream, so that the registry is
available on each host under endpoint localhost:5000

Because in the documentation, selector-identifiers are the same for
"upstream" registry and proxies, the proxies themselves register under
the service intended for the upstream and now have themselves as
upstream under a different port, where connection attempts result in
"connection refused".

Adapting selectors to be unique as in this patch fixes the problem.



**What this PR does / why we need it**:

Patch fixes (cf. above) erroneous documentation.

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

**Special notes for your reviewer**:

Thank you for your consideration.

**Release note**:

```release-note
```
2017-04-19 01:49:20 -07:00
George Kraft
96f944d99b Fix ceph-secret type to kubernetes.io/rbd 2017-04-18 15:37:40 -05:00
nikhiljindal
fa323b0ef3 Removing myself from Juju Owners 2017-04-18 13:25:09 -07:00
Kubernetes Submit Queue
09e3fdbafe Merge pull request #44500 from Cynerva/gkk/cdk-1.6-support
Automatic merge from submit-queue (batch tested with PRs 43000, 44500, 44457, 44553, 44267)

Add Kubernetes 1.6 support to Juju charms

**What this PR does / why we need it**:

This adds Kubernetes 1.6 support to Juju charms.

This includes some large architectural changes in order to support multiple versions of Kubernetes with a single release of the charms. There are a few bug fixes in here as well, for issues that we discovered during testing.

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

**Special notes for your reviewer**:

Thanks to @marcoceppi, @ktsakalozos, @jacekn, @mbruzek, @tvansteenburgh for their work in this feature branch as well!

**Release note**:

```release-note
Add Kubernetes 1.6 support to Juju charms
Add metric collection to charms for autoscaling
Update kubernetes-e2e charm to fail when test suite fails
Update Juju charms to use snaps
Add registry action to the kubernetes-worker charm
Add support for kube-proxy cluster-cidr option to kubernetes-worker charm
Fix kubernetes-master charm starting services before TLS certs are saved
Fix kubernetes-worker charm failures in LXD
Fix stop hook failure on kubernetes-worker charm
Fix handling of juju kubernetes-worker.restart-needed state
Fix nagios checks in charms
```
2017-04-18 13:19:06 -07:00
Christopher J. Ruwe
d2c66d5909 issue_43986: fix docu with non-functional proxy
The documentation defines a couple of replication-controller and service
to provision a docker-registry somewhere on the cluster and have it
available by the name viz. A record of
kube-registry.default.svc.<clustername>.

On each node, http-proxies are placed as daemon-set with the
kube-registry DNS name set as upstream, so that the registry is
available on each host under endpoint localhost:5000

Because in the documentation, selector-identifiers are the same for
"upstream" registry and proxies, the proxies themselves register under
the service intended for the upstream and now have themselves as
upstream under a different port, where connection attempts result in
"connection refused".

Adapting selectors to be unique as in this patch fixes the problem.
	modified:   cluster/addons/registry/README.md
	modified:   cluster/addons/registry/registry-rc.yaml
	modified:   cluster/addons/registry/registry-svc.yaml
2017-04-18 07:26:34 +02:00
Isaac Hollander McCreery
2acf60e44d When changing basic auth creds, just delete the whole file, in order to be able to rotate username in addition to password 2017-04-17 17:05:33 -07:00
Kubernetes Submit Queue
4c8c2aaa85 Merge pull request #44509 from bowei/cluster-ip
Automatic merge from submit-queue (batch tested with PRs 40055, 42085, 44509, 44568, 43956)

Change the default CLUSTER_IP_RANGE used by e2e

The existing choice intersects with the range reserved for auto
subnets and cannot be used with some GCP features.

```release-note
NONE
```
2017-04-17 15:39:09 -07:00
Lucas Käldström
b814b62447
Remove the old docker-multinode files that were built into the hyperkube image 2017-04-17 00:54:08 +03:00
Kubernetes Submit Queue
b22a298009 Merge pull request #44344 from mikedanese/ubuntu-delete
Automatic merge from submit-queue (batch tested with PRs 44343, 44344)

delete ubuntu kube-up

```release-note
Remove deprecated ubuntu kube-up deployment.
```
2017-04-14 23:03:57 -07:00
Kubernetes Submit Queue
92ae06b5db Merge pull request #44343 from mikedanese/ovirt-delete
Automatic merge from submit-queue

delete ovirt kube-up

untouched since 2014. I'm not sure what this file is.
2017-04-14 22:56:44 -07:00
Bowei Du
0e6af317a8 Change the default CLUSTER_IP_RANGE used by e2e
The existing choice intersects with the range reserved for auto
subnets and cannot be used with some GCP features.
2017-04-14 13:49:54 -07:00
Tim Van Steenburgh
7b841fe77e Fix nagios checks. 2017-04-14 10:45:37 -05:00
George Kraft
86415961d5 Fix handling of kubernetes-worker.restart-needed state
Credit to @tvansteenburgh, thanks!
2017-04-14 10:45:35 -05:00
Rye Terrell
6e831d6fe9 don't try to remove the node if kubeconfig doesn't exist 2017-04-14 10:45:34 -05:00
Matt Bruzek
258ee22858 Putting the nvidia-smi command in a try catch to avoid errors. 2017-04-14 10:45:33 -05:00
George Kraft
d50cf1e499 Fix juju kubernetes-master starting services before TLS certs are saved
master: Fix start_master args
2017-04-14 10:45:31 -05:00
Rye Terrell
33fee22032 add support for kube-proxy cluster-cidr option 2017-04-14 10:45:23 -05:00
Jacek N
ebd2f88f6b Add registry action to the kubernetes-worker layer 2017-04-14 10:43:09 -05:00
Rye Terrell
ca4afd8773 Update CDK charms to use snaps 2017-04-14 10:43:00 -05:00
Kubernetes Submit Queue
eda8e12723 Merge pull request #44465 from bowei/fix-cluster-up
Automatic merge from submit-queue

Missing --project in the cluster up scripts for gce

```release-note
NONE
```
2017-04-14 00:36:58 -07:00
Kubernetes Submit Queue
08bd9c773f Merge pull request #44071 from liggitt/service-account-lookup
Automatic merge from submit-queue (batch tested with PRs 44406, 41543, 44071, 44374, 44299)

Enable service account token lookup by default

Fixes #24167

```release-note
kube-apiserver: --service-account-lookup now defaults to true, requiring the Secret API object containing the token to exist in order for a service account token to be valid. This enables service account tokens to be revoked by deleting the Secret object containing the token.
```
2017-04-13 19:52:06 -07:00
Konstantinos Tsakalozos
5d9905f4e5 Fail test action when test suite fails. Minor README update. 2017-04-13 16:02:14 -05:00
Marco Ceppi
d3428ef3a4 Add metric collection to charms for autoscalling 2017-04-13 16:02:13 -05:00
Bowei Du
c4a8ea2eb5 Missing --project in the cluster up scripts for gce
```release-note
NONE
```
2017-04-13 12:10:59 -07:00
Matt Bruzek
7f3f05e101 Fixing the README to use the containers namespace. 2017-04-13 12:05:39 -05:00
Kubernetes Submit Queue
3ef2cf8adb Merge pull request #44064 from ixdy/get-kube-ci
Automatic merge from submit-queue

Make get-kube.sh work properly the "ci/latest" pointer

**What this PR does / why we need it**: this is a (late) followup from #36419, fixing a bug discovered in https://github.com/kubernetes/kubernetes/pull/36419#issuecomment-265679578.

Basically, `get-kube-binaries.sh` looks at `$KUBERNETES_RELEASE_URL`, but we weren't properly overriding it in `get-kube.sh` when downloading binaries from the CI release bucket. With this change, we set the variable correctly, and everything works:

```console
$ KUBERNETES_RELEASE=ci/latest ~/code/kubernetes/src/k8s.io/kubernetes/cluster/get-kube.sh
Downloading kubernetes release v1.7.0-alpha.0.2068+3a3dc827e45426
  from https://dl.k8s.io/ci/v1.7.0-alpha.0.2068+3a3dc827e45426/kubernetes.tar.gz
  to /tmp/foo/kubernetes.tar.gz
Is this ok? [Y]/n

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   161  100   161    0     0   1004      0 --:--:-- --:--:-- --:--:--  1006
100 6023k  100 6023k    0     0  10.9M      0 --:--:-- --:--:-- --:--:-- 10.9M
Unpacking kubernetes release v1.7.0-alpha.0.2068+3a3dc827e45426
Kubernetes release: v1.7.0-alpha.0.2068+3a3dc827e45426
Server: linux/amd64  (to override, set KUBERNETES_SERVER_ARCH)
Client: linux/amd64  (autodetected)

Will download kubernetes-server-linux-amd64.tar.gz from https://dl.k8s.io/ci/v1.7.0-alpha.0.2068+3a3dc827e45426
Will download and extract kubernetes-client-linux-amd64.tar.gz from https://dl.k8s.io/ci/v1.7.0-alpha.0.2068+3a3dc827e45426
Is this ok? [Y]/n

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   161  100   161    0     0    991      0 --:--:-- --:--:-- --:--:--   987
100  348M  100  348M    0     0  39.1M      0  0:00:08  0:00:08 --:--:-- 34.2M
               
md5sum(kubernetes-server-linux-amd64.tar.gz)=e71c9b48f6551797a74de2b83b501c44
sha1sum(kubernetes-server-linux-amd64.tar.gz)=688dcf567b60e27e3d9bf97436154543432768cf
               
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   161  100   161    0     0   1019      0 --:--:-- --:--:-- --:--:--  1025
100 29.0M  100 29.0M    0     0  32.2M      0 --:--:-- --:--:-- --:--:-- 95.4M
               
md5sum(kubernetes-client-linux-amd64.tar.gz)=8e6a90298411ae5a0e943b1c0e182b1d
sha1sum(kubernetes-client-linux-amd64.tar.gz)=187a2d2c1c6ae1ead32ec4c1fa51f695223edaae
               
Extracting /tmp/foo/kubernetes/client/kubernetes-client-linux-amd64.tar.gz into /tmp/foo/kubernetes/platforms/linux/amd64
Add '/tmp/foo/kubernetes/client/bin' to your PATH to use newly-installed binaries.
Creating a kubernetes on gce...
...

```
**Release note**:

```release-note
NONE
```
2017-04-12 13:39:00 -07:00
Kubernetes Submit Queue
750d5c3bc5 Merge pull request #41561 from jamiehannaford/fix-multiple-swift-urls
Automatic merge from submit-queue

Ensure only 1 Swift URL is used in cluster operations

**What this PR does / why we need it**:

Extracts only 1 Swift URL if multiple are returned from Keystone.

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

https://github.com/kubernetes/kubernetes/issues/34930

**Special notes for your reviewer**:

**Release note**:
```release-note
Heat cluster operations now support environments that have multiple Swift URLs
```
2017-04-12 02:16:28 -07:00
Kubernetes Submit Queue
640c67792f Merge pull request #44363 from bowei/use-auto-net
Automatic merge from submit-queue

Use auto mode networks instead of legacy networks in GCP

Use of the --range flag creates legacy networks in GCP.

Legacy networks will not support new GCP features.

```release-note
NONE
```
2017-04-11 22:57:20 -07:00
Kubernetes Submit Queue
ceccd305ce Merge pull request #42147 from bowei/ip-alias-2
Automatic merge from submit-queue

Add support for IP aliases for pod IPs (GCP alpha feature)

```release-note
Adds support for allocation of pod IPs via IP aliases.

# Adds KUBE_GCE_ENABLE_IP_ALIASES flag to the cluster up scripts (`kube-{up,down}.sh`).

KUBE_GCE_ENABLE_IP_ALIASES=true will enable allocation of PodCIDR ips
using the ip alias mechanism rather than using routes. This feature is currently
only available on GCE.

## Usage
$ CLUSTER_IP_RANGE=10.100.0.0/16 KUBE_GCE_ENABLE_IP_ALIASES=true bash -x cluster/kube-up.sh

# Adds CloudAllocator to the node CIDR allocator (kubernetes-controller manager).

If CIDRAllocatorType is set to `CloudCIDRAllocator`, then allocation
of CIDR allocation instead is done by the external cloud provider and
the node controller is only responsible for reflecting the allocation
into the node spec.

- Splits off the rangeAllocator from the cidr_allocator.go file.
- Adds cloudCIDRAllocator, which is used when the cloud provider allocates
  the CIDR ranges externally. (GCE support only)
- Updates RBAC permission for node controller to include PATCH
```
2017-04-11 22:09:24 -07:00
Bowei Du
079505023f Use auto mode networks instead of legacy networks in GCP
Use of the --range flag creates legacy networks in GCP.
2017-04-11 14:36:17 -07:00
Bowei Du
345c65847f Add KUBE_GCE_ENABLE_IP_ALIASES flag to the cluster turn up scripts.
KUBE_GCE_ENABLE_IP_ALIASES=true will enable allocation of PodCIDR ips
using the ip alias mechanism rather than using routes.

NODE_IP_RANGE will control the node instance IP cidr
KUBE_GCE_IP_ALIAS_SIZE controls the size of each podCIDR
IP_ALIAS_SUBNETWORK controls the name of the subnet created for the cluster
2017-04-11 14:07:50 -07:00
Mike Danese
e8a3e2d87c delete ubuntu kube-up 2017-04-11 09:29:55 -07:00
Mike Danese
857b12cee0 delete ovirt kube-up
untouched since 2014.
2017-04-11 09:26:52 -07:00
Kubernetes Submit Queue
b9a5a5c9b3 Merge pull request #42748 from dcbw/cfssl-localup
Automatic merge from submit-queue (batch tested with PRs 43866, 42748)

hack/cluster: download cfssl if not present

hack/local-up-cluster.sh uses cfssl to generate certificates and
will exit it cfssl is not already installed.  But other cluster-up
mechanisms (GCE) that generate certs just download cfssl if not
present.  Make local-up-cluster.sh do that too so users don't have
to bother installing it from somewhere.
2017-04-10 14:27:11 -07:00
Jacek N
84985327da Add namespace-{list, create, delete} actions to the kubernetes-master layer 2017-04-10 15:22:01 +01:00
Kubernetes Submit Queue
8d173c96ad Merge pull request #44178 from opsnull/master
Automatic merge from submit-queue

fix kubedns-sa.yaml missing "namespace: kube-system" value

The file kubedns-sa.yaml  missing `namespace: kube-system`,  so it will create ServiceAccount kube-dns in default namespace, this will cause kube-dns deployment's pods be blocked forever;

Some logs as following:

>     - lastTransitionTime: 2017-04-06T19:02:12Z
>       lastUpdateTime: 2017-04-06T19:02:12Z
>       message: 'unable to create pods: pods "kube-dns-699984412-" is forbidden: service
>         account kube-system/kube-dns was not found, retry after the service account

**Release note**:

```release-note
NONE
```
2017-04-07 00:18:43 -07:00
Kubernetes Submit Queue
0653751fb4 Merge pull request #44169 from mikedanese/fix
Automatic merge from submit-queue (batch tested with PRs 42025, 44169, 43940)

if we have a dedicated serviceaccount keypair, use it to verify serviceaccounts
2017-04-06 17:00:20 -07:00
Mike Danese
e2d7e2c866 make salt return non-zero exit code on failure 2017-04-06 13:57:33 -07:00
opsnull
7978ad17a9 fix kubedns-sa.yaml missing "namespace: kube-system" value 2017-04-07 03:52:51 +08:00
Mike Danese
ffcbe213c1 if we have a dedicated serviceaccount keypair, use it to verify serviceaccounts 2017-04-06 11:06:25 -07:00
Kubernetes Submit Queue
b41e415ebd Merge pull request #43137 from shashidharatd/federation-domain
Automatic merge from submit-queue

[Federation] Remove FEDERATIONS_DOMAIN_MAP references

Remove all references to FEDERATIONS_DOMAIN_MAP as this method is no longer is used and is replaced by adding federation domain map to kube-dns configmap.

cc @madhusudancs @kubernetes/sig-federation-pr-reviews 

**Release note**:
```
[Federation] Mechanism of adding `federation domain maps` to kube-dns deployment via `--federations` flag is superseded by adding/updating `federations` key in `kube-system/kube-dns` configmap. If user is using kubefed tool to join cluster federation, adding federation domain maps to kube-dns is already taken care by `kubefed join` and does not need further action.
```
2017-04-06 02:05:42 -07:00
Jeff Grafton
b0ae0d074e Make get-kube.sh work properly the "ci/latest" pointer 2017-04-05 15:02:10 -07:00
Kubernetes Submit Queue
0f10d6ccf2 Merge pull request #43996 from ncdc/proxy-shared-informers
Automatic merge from submit-queue

Use shared informers for proxy endpoints and service configs

Use shared informers instead of creating local controllers/reflectors
for the proxy's endpoints and service configs. This allows downstream
integrators to pass in preexisting shared informers to save on memory &
cpu usage.

This also enables the cache mutation detector for kube-proxy for those
presubmit jobs that already turn it on.

Follow-up to #43295 cc @wojtek-t 

Will race with #43937 for conflicting changes 😄 cc @thockin 

cc @smarterclayton @sttts @liggitt @deads2k @derekwaynecarr @eparis @kubernetes/rh-cluster-infra
2017-04-05 06:52:25 -07:00
Kubernetes Submit Queue
3b8e327924 Merge pull request #44049 from crassirostris/fluentd-es-remove-toleration
Automatic merge from submit-queue

Remove toleration from fluentd-elasticsearch

Fix https://github.com/kubernetes/kubernetes/issues/43795
Address comments from https://github.com/kubernetes/kubernetes/issues/42983

Fluentd-es doesn't work on master anyway, because it has no access to k8s services
2017-04-05 06:03:47 -07:00
Mik Vyatskov
30f22ad683 Remove toleration from fluentd-elasticsearch 2017-04-05 11:27:14 +02:00
Jordan Liggitt
0d2e5a0dd8
Enable service account token lookup by default
```release-note
kube-apiserver: --service-account-lookup now defaults to true. This enables service account tokens to be revoked by deleting the Secret object containing the token.
```
2017-04-04 22:00:11 -04:00
Jeff Grafton
37b07dfe62 Support arbitrary alphanumeric strings as prerelease identifiers 2017-04-04 16:30:54 -07:00
Kubernetes Submit Queue
3a3dc827e4 Merge pull request #43467 from tvansteenburgh/gpu-support
Automatic merge from submit-queue (batch tested with PRs 44047, 43514, 44037, 43467)

Juju: Enable GPU mode if GPU hardware detected

**What this PR does / why we need it**:

Automatically configures kubernetes-worker node to utilize GPU hardware when such hardware is detected.

layer-nvidia-cuda does the hardware detection, installs CUDA and Nvidia
drivers, and sets a state that the k8s-worker can react to.

When gpu is available, worker updates config and restarts kubelet to
enable gpu mode. Worker then notifies master that it's in gpu mode via
the kube-control relation.

When master sees that a worker is in gpu mode, it updates to privileged
mode and restarts kube-apiserver.

The kube-control interface has subsumed the kube-dns interface
functionality.

An 'allow-privileged' config option has been added to both worker and
master charms. The gpu enablement respects the value of this option;
i.e., we can't enable gpu mode if the operator has set
allow-privileged="false".

**Special notes for your reviewer**:

Quickest test setup is as follows:
```bash
# Bootstrap. If your aws account doesn't have a default vpc, you'll need to
# specify one at bootstrap time so that juju can provision a p2.xlarge.
# Otherwise you can leave out the --config "vpc-id=vpc-xxxxxxxx" bit.
juju bootstrap --config "vpc-id=vpc-xxxxxxxx" --constraints "cores=4 mem=16G root-disk=64G" aws/us-east-1 k8s

# Deploy the bundle containing master and worker charms built from
# https://github.com/tvansteenburgh/kubernetes/tree/gpu-support/cluster/juju/layers
juju deploy cs:~tvansteenburgh/bundle/kubernetes-gpu-support-3

# Setup kubectl locally
mkdir -p ~/.kube
juju scp kubernetes-master/0:config ~/.kube/config
juju scp kubernetes-master/0:kubectl ./kubectl

# Download a gpu-dependent job spec
wget -O /tmp/nvidia-smi.yaml https://raw.githubusercontent.com/madeden/blogposts/master/k8s-gpu-cloud/src/nvidia-smi.yaml

# Create the job
kubectl create -f /tmp/nvidia-smi.yaml

# You should see a new nvidia-smi-xxxxx pod created
kubectl get pods

# Wait a bit for the job to run, then view logs; you should see the
# nvidia-smi table output
kubectl logs $(kubectl get pods -l name=nvidia-smi -o=name -a)
```

kube-control interface: https://github.com/juju-solutions/interface-kube-control
nvidia-cuda layer: https://github.com/juju-solutions/layer-nvidia-cuda
(Both are registered on http://interfaces.juju.solutions/)

**Release note**:
```release-note
Juju: Enable GPU mode if GPU hardware detected
```
2017-04-04 14:33:26 -07:00
Kubernetes Submit Queue
95289ff239 Merge pull request #42518 from mtanino/issue/42517
Automatic merge from submit-queue

get-kube-local.sh checks pods with option "--namespace=kube-system"

**What this PR does / why we need it**:

Local cluster creation using get-kube-local.sh is never finished.
The get-kube-local.sh monitors running_count of pods such as etcd,
master and kube-proxy, but these pods are created under the namespace
kube-system. Therefore kubectl can't find these pods then cluster
creation isn't completed.

The get-kube-local.sh should monitor created pods with option
"--namespace=kube-system".

**Which issue this PR fixes** : fixes #42517




**Release note**: 

```
`NONE`
```
2017-04-04 13:22:45 -07:00
Kubernetes Submit Queue
ae57772988 Merge pull request #44017 from justinsb/permissions_log_dump
Automatic merge from submit-queue

cluster/log-dump - chmod files before dumping

We make the files world-readable, so that installation techniques that
lock down the logfiles can still be dumped.

Issue https://github.com/kubernetes/test-infra/issues/2397

```release-note
NONE
```
2017-04-04 09:52:25 -07:00
Andy Goldstein
d2bc4d0b2e Use shared informers for proxy endpoints and service configs
Use shared informers instead of creating local controllers/reflectors
for the proxy's endpoints and service configs. This allows downstream
integrators to pass in preexisting shared informers to save on memory &
cpu usage.

This also enables the cache mutation detector for kube-proxy for those
presubmit jobs that already turn it on.
2017-04-04 12:51:41 -04:00
Kubernetes Submit Queue
12fbc9083e Merge pull request #43625 from mbruzek/cdk-load-balancer-update
Automatic merge from submit-queue

Adding more proxy options and header to nginx load-balancer.

**What this PR does / why we need it**: The kubeapi-load-balancer uses nginx to proxy commands to the kube-apiserver. It currently does not support SPDY and therefore the `kubectl exec` command is broken.

**Which issue this PR fixes** : 
fixes https://github.com/juju-solutions/bundle-canonical-kubernetes/issues/226
fixes https://github.com/juju-solutions/bundle-canonical-kubernetes/issues/201

**Special notes for your reviewer**: This only changes the nginx configuration no code change was required.

**Release note**:
```release-note
Using http2 in kubeapi-load-balancer to fix kubectl exec uses
```
2017-04-04 08:03:44 -07:00
Dan Williams
f20437a822 hack/cluster: download cfssl if not present
hack/local-up-cluster.sh uses cfssl to generate certificates and
will exit it cfssl is not already installed.  But other cluster-up
mechanisms (GCE) that generate certs just download cfssl if not
present.  Make local-up-cluster.sh do that too.
2017-04-03 23:31:16 -05:00
Justin Santa Barbara
f506dfe1ea cluster/log-dump - chmod files before dumping
We make the files world-readable, so that installation techniques that
lock down the logfiles can still be dumped.

Issue https://github.com/kubernetes/test-infra/issues/2397
2017-04-03 21:41:24 -04:00
Kubernetes Submit Queue
d1dd73e9f6 Merge pull request #42668 from ixdy/build-silence-docker-rmi
Automatic merge from submit-queue (batch tested with PRs 42379, 42668, 42876, 41473, 43260)

Silence error messages from the docker rmi call we expect to fail

**What this PR does / why we need it**: when we removed `docker tag -f` in #34361 we added a bunch of `docker rmi` calls to preserve behavior for older docker versions. That step is usually a no-op, however, and results in confusing messages like
```
Tagging docker image gcr.io/google_containers/kube-proxy:c8d0b2e7a06b451117a8ac58fc3bb3d3 as gcr.io/kubernetes-release-test/kube-proxy-amd64:v1.5.4
Error response from daemon: No such image: gcr.io/kubernetes-release-test/kube-proxy-amd64:v1.5.4
```

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

**Special notes for your reviewer**: I could probably remove the `docker rmi` calls entirely, though I don't know if folks are still using docker < 1.10. (I think Jenkins still has 1.9.1.)

**Release note**:

```release-note
NONE
```

cc @jessfraz
2017-03-30 23:36:24 -07:00
Dan Williams
b3705b6e35 hack/cluster: consolidate cluster/ utils to hack/lib/util.sh
Per Clayton's suggestion, move stuff from cluster/lib/util.sh to
hack/lib/util.sh.  Also consolidate ensure-temp-dir and use the
hack/lib/util.sh implementation rather than cluster/common.sh.
2017-03-30 22:34:46 -05:00
Kubernetes Submit Queue
7ff948ce32 Merge pull request #43643 from rmmh/redis
Automatic merge from submit-queue (batch tested with PRs 43726, 43643)

Make a smaller redis image for testing, based on Alpine.

**What this PR does / why we need it**:
This shrinks gcr.io/google_containers/redis from 400MB to 5MB, which should reduce flakes.

**Which issue this PR fixes**:
fixes #43631

**Release note**:
```release-note
NONE
```
2017-03-29 17:23:19 -07:00
Kubernetes Submit Queue
b020fb1fda Merge pull request #43726 from vishh/local-ssd-gce
Automatic merge from submit-queue

Add support for local ssds in GCE

For #43640
2017-03-29 16:56:27 -07:00
Kubernetes Submit Queue
060ea9ca7b Merge pull request #42617 from MrHohn/dns-autoscaler-rbac
Automatic merge from submit-queue

Moves dns-horizontal-autoscaler to a separate service account

Similar to #38816.

As one of the cluster add-ons, dns-horizontal-autoscaler is now using the default service account in kube-system namespace, which is introduced by https://github.com/kubernetes/kubernetes/blob/master/cluster/addons/e2e-rbac-bindings/random-addon-grabbag.yaml for the ease of transition. This default service account will be removed in the future.

This PR subdivides dns-horizontal-autoscaler to a separate service account and setup the necessary permissions.

@bowei 

**Release note**:

```release-note
NONE
```
2017-03-29 15:43:10 -07:00
Vishnu kannan
937bac940a add support for local ssds in GCE
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2017-03-29 15:06:58 -07:00
Ryan Hitchman
4816ba9898 Make a smaller redis image for testing, based on Alpine.
This shrinks redis from 400MB to 5MB, which should reduce flakes.
2017-03-28 16:18:00 -07:00
Kubernetes Submit Queue
23104b714c Merge pull request #42467 from chentao1596/change-etcd-version
Automatic merge from submit-queue (batch tested with PRs 43518, 42467)

install/kube-up: fix some errors while install k8s through kube-up/down.sh

What this PR does / why we need it:

     etcd2.3.1 will be installed follow this scripts, but k8s use etcd3 as default storage backend, so the next error will always be apprear: 
     API server: rpc error: code = 13 desc = transport is closing
     so i think we should change the version of etcd

    thank you!
2017-03-28 14:09:22 -07:00
Kubernetes Submit Queue
be4452cfce Merge pull request #42994 from Shawyeok/features/full-tls-etcd-cluster
Automatic merge from submit-queue

Centos provider: generate SSL certificates for etcd cluster.

**What this PR does / why we need it**:
Support secure etcd cluster for centos provider, generate SSL certificates for etcd in default. Running it w/o SSL is exposing cluster data to everyone and is not recommended. [#39462](https://github.com/kubernetes/kubernetes/pull/39462#issuecomment-271601547)

/cc @jszczepkowski @zmerlynn 

**Release note**:
```release-note
Support secure etcd cluster for centos provider.
```
2017-03-28 09:02:26 -07:00
Marcin Wielgus
b08e6f6297 Bump cluster autoscaler to 0.5.1 2017-03-28 13:17:47 +02:00
Kubernetes Submit Queue
b30fe32a66 Merge pull request #43381 from aleksandra-malinowska/stackdriver-config
Automatic merge from submit-queue (batch tested with PRs 43681, 40423, 43562, 43008, 43381)

Add stackdriver monitoring option
2017-03-27 12:49:29 -07:00
Kubernetes Submit Queue
8dfc939345 Merge pull request #43681 from ethernetdan/proto-upgrade-prompt
Automatic merge from submit-queue

added prompt warning if etcd3 media type isn't set during upgrade

**What this PR does / why we need it**:
This adds a prompt confirming the upgrade when `STORAGE_MEDIA_TYPE` is not explicitly set. This is to prevent users from accidentally upgrading to protobuf.

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

**Special notes for your reviewer**:
Should be cherrypicked onto `release-1.6`

**Release note**:
```release-note
NONE
```
2017-03-27 12:10:31 -07:00
Dan Gillespie
d7a552c188 in storage media upgrade prompt, provide config for using protobuf 2017-03-27 16:46:38 +01:00
Dan Gillespie
031dd569ac etcd upgrade warning: add docs link, fixed etcd2 behavior, print non-interactive 2017-03-27 16:13:11 +01:00
Konstantinos Tsakalozos
12a5c3a2f3 Fixing bug: non-leaders should retry fetching auth keys 2017-03-27 16:59:43 +03:00
Dan Gillespie
d0bbb941fd added prompt warning if etcd3 media type isn't set during upgrade 2017-03-27 13:47:09 +01:00
Jerzy Szczepkowski
27b8e1f518 Added failing upgrade if there are many master replicas.
Added failing upgrade (GCE) if there are many master replicas. Releated
to #43688.
2017-03-27 14:29:06 +02:00
Aleksandra Malinowska
a737fec50b Add stackdriver monitoring option 2017-03-27 12:10:04 +02:00
Kubernetes Submit Queue
e6453c7880 Merge pull request #42638 from jamiehannaford/minion-fip
Automatic merge from submit-queue (batch tested with PRs 41297, 42638, 42666, 43039, 42567)

Allow minion floating IPs to be optional

**What this PR does / why we need it**:

Makes the generation of floating IPs for worker nodes optional, based on an env var. To quote the original issue:

> Currently, the OpenStack installation method assigns a floating IP to every single worker node. While this is fine for smaller clusters with a good sized IP pool, it can cause issues in environments with high node counts or less IPs available.

**Which issue this PR fixes**:

https://github.com/kubernetes/kubernetes/issues/40737

**Special notes for your reviewer**:

I used the conditions section of the Heat spec: https://docs.openstack.org/developer/heat/template_guide/hot_spec.html#conditions-section

**Release note**:
```release-note
OpenStack clusters can now specify whether worker nodes are assigned a floating IP
```
2017-03-25 18:15:21 -07:00
Kubernetes Submit Queue
1251280236 Merge pull request #43624 from liggitt/legacy-abac-test
Automatic merge from submit-queue (batch tested with PRs 43048, 43624, 43649)

Remove E2E_UPGRADE_TEST check in config-test.sh

Once https://github.com/kubernetes/test-infra/pull/2330 merges, the upgrade tests will drive the exact behavior they want, and we can remove the check for envvars leaked from the job env
2017-03-25 13:29:23 -07:00
Jeff Grafton
e39978e6bf Update a few regex patterns to support release candidates 2017-03-24 14:38:04 -07:00
Kubernetes Submit Queue
53d14e9a4c Merge pull request #43609 from Random-Liu/update-npd-rbac
Automatic merge from submit-queue

Update NPD rbac.

I recently enabled NPD in gke.

However, I found that in gke e2e test (https://k8s-testgrid.appspot.com/google-gke#gci-gke), npd on the node could not talk with apiserver, and reported full of following errors:
```
E0324 05:08:26.745545    1328 manager.go:160] failed to update node conditions: the server does not allow access to the requested resource (patch nodes gke-bootstrap-e2e-default-pool-fd91d792-mqh4)
E0324 05:08:37.719423    1328 manager.go:160] failed to update node conditions: the server does not allow access to the requested resource (patch nodes gke-bootstrap-e2e-default-pool-fd91d792-mqh4)
E0324 05:08:47.719694    1328 manager.go:160] failed to update node conditions: the server does not allow access to the requested resource (patch nodes gke-bootstrap-e2e-default-pool-fd91d792-mqh4)
```

I created a GKE cluster (v1.7.0-alpha.0.1483+1e879c69ecf09e) myself, and found that addon manager could not create npd binding with the following error:
```
error: error validating "/etc/kubernetes/addons/node-problem-detector/standalone/npd-binding.yaml": error validating data: couldn't find type: v1alpha1.ClusterRoleBinding; if you choose to ignore these errors, turn validation off with --validate=false
```

I found that rbac was updated to beta, but npd was missed because it was merged after 9e6a3496b4 (diff-b05c70853d9a772b310db71a61297841).

I updated rbac to beta in the master manifest and npd on the node could talk with apiserver immediately.
We must get this in 1.6 to make NPD working. @dchen1107 

@dchen1107 @fabioy @liggitt
2017-03-24 11:27:42 -07:00
Kubernetes Submit Queue
ba63cb4538 Merge pull request #42903 from krousey/owners
Automatic merge from submit-queue

Remove krousey from some OWNERS files
2017-03-24 10:26:40 -07:00
Kubernetes Submit Queue
f5d3126fca Merge pull request #42035 from timchenxiaoyu/enableerror
Automatic merge from submit-queue

enable error

enable word error
2017-03-24 10:25:13 -07:00
Kubernetes Submit Queue
ff353231ec Merge pull request #42102 from timchenxiaoyu/kubltworderror
Automatic merge from submit-queue

kubelet word mistake
2017-03-24 10:25:06 -07:00
Jordan Liggitt
eb45dc9eb9
Remove E2E_UPGRADE_TEST check in config-test.sh 2017-03-24 10:14:20 -04:00
Konstantinos Tsakalozos
533d4bfd54 Fixes: 1. Get certs for a dead leader. 2. Append tokens. 2017-03-24 12:46:55 +02:00
Random-Liu
1e51b907bb Update NPD rbac. 2017-03-23 23:07:55 -07:00
shawyeok
c692b55b57 Centos provider: generate SSL certificates for etcd cluster.
Making download-cfssl reusable.

Extract generate-etcd-cert method up to common.sh.
2017-03-24 09:15:57 +08:00
Matt Bruzek
71f583ebe4 Adding more proxy options and header to nginx load-balancer. 2017-03-23 16:14:02 -05:00
Kubernetes Submit Queue
1e879c69ec Merge pull request #43544 from liggitt/legacy-abac-kube-up
Automatic merge from submit-queue (batch tested with PRs 43546, 43544)

Default to enabling legacy ABAC policy in non-test kube-up.sh environments

Fixes https://github.com/kubernetes/kubernetes/issues/43541

In 1.5, we unconditionally stomped the abac policy file if KUBE_USER was set, and unconditionally used ABAC mode pointing to that file.

In 1.6, unless the user opts out (via `ENABLE_LEGACY_ABAC=false`), we want the same legacy policy included as a fallback to RBAC.

This PR:
* defaults legacy ABAC **on** in normal deployments
* defaults legacy ABAC **on** in upgrade E2Es (ensures combination of ABAC and RBAC works properly for upgraded clusters)
* defaults legacy ABAC **off** in non-upgrade E2Es (ensures e2e tests 1.6+ run with tightened permissions, and that default RBAC roles cover the required core components)

GKE changes to drive the `ENABLE_LEGACY_ABAC` envvar were made by @cjcullen out of band

```release-note
`kube-up.sh` using the `gce` provider enables both RBAC authorization and the permissive legacy ABAC policy that makes all service accounts superusers. To opt out of the permissive ABAC policy, export the environment variable `ENABLE_LEGACY_ABAC=false` before running `cluster/kube-up.sh`.
```
2017-03-23 14:13:18 -07:00
Kubernetes Submit Queue
6ed3bce7f4 Merge pull request #43546 from calebamiles/wip-bump-cni-ref
Automatic merge from submit-queue

Bump CNI consumers to v0.5.1

**What this PR does / why we need it**:
- vendored CNI plugins properly handle `DEL` on missing resources
- update CNI version refs

**Which issue this PR fixes**

fixes #43488

**Release note**:

`bumps CNI to version v0.5.1 where plugins properly handle DEL on non existent resources`
2017-03-23 14:13:05 -07:00
Tim Van Steenburgh
c87ac5ef2e Enable gpu mode if gpu hardware detected.
layer-nvidia-cuda does the hardware detection and sets a state that the
worker can react to.

When gpu is available, worker updates config and restarts kubelet to
enable gpu mode. Worker then notifies master that it's in gpu mode via
the kube-control relation.

When master sees that a worker is in gpu mode, it updates to privileged
mode and restarts kube-apiserver.

The kube-control interface has subsumed the kube-dns interface
functionality.

An 'allow-privileged' config option has been added to both worker and
master charms. The gpu enablement respects the value of this option;
i.e., we can't enable gpu mode if the operator has set
allow-privileged="false".
2017-03-23 12:01:23 -04:00
Kubernetes Submit Queue
13e2f5d9d7 Merge pull request #43379 from crassirostris/fluentd-gcp-docs
Automatic merge from submit-queue

Add readme for fluentd addons

/cc @steveperry-53
2017-03-23 02:08:56 -07:00
Jordan Liggitt
b95f5286c1
Default to enabling legacy ABAC policy in non-test GCE kube-up.sh environments 2017-03-22 22:20:09 -04:00
Kubernetes Submit Queue
c415325ced Merge pull request #43537 from Random-Liu/disable-master-taint-by-default
Automatic merge from submit-queue

Add an env KUBE_ENABLE_MASTER_NOSCHEDULE_TAINT and disable it by default

This PR changed master `NoSchedule` taint to opt-in.

As is discussed with @bgrant0607 @janetkuo, `NoSchedule` master taint breaks existing user workload, we should not enable it by default.

Previously, NPD required the taint because it can only support one OS distro with a specific configuration. If master and node are using different OS distros, NPD will not work either on master or node. However, we've already fixed this in https://github.com/kubernetes/kubernetes/pull/40206, so for NPD it's fine to disable the taint.

This should work, but I'll still try it in my cluster to confirm.

@kubernetes/sig-scheduling-misc @dchen1107 @mikedanese
2017-03-22 17:03:33 -07:00
caleb miles
f4d9bbc7d8
Bump CNI consumers to latest version
- vendored CNI plugins properly handle `DEL` on missing resources
- [based on v0.5.1](https://github.com/kubernetes/kubernetes/issues/43488#issuecomment-288525151)
2017-03-22 16:03:13 -07:00
Random-Liu
965c262aab Remove the master NoSchedule taint. 2017-03-22 15:35:13 -07:00
Kubernetes Submit Queue
cc3eb3916e Merge pull request #43529 from mikedanese/fix-down
Automatic merge from submit-queue (batch tested with PRs 43465, 43529, 43474, 43521)

link the server.key to the key not the crt
2017-03-22 12:35:08 -07:00
Mike Danese
3b83eb538c link the server.key to the key not the crt 2017-03-22 10:29:42 -07:00
Mik Vyatskov
7ae8eee1cd Add readme for fluentd-elasticsearch addon 2017-03-22 11:27:48 +01:00
Piotr Szczesniak
8968ac5c36 Renamed fluentd-ds-ready annotation 2017-03-21 20:48:13 +01:00
Kubernetes Submit Queue
63d8e244b6 Merge pull request #43458 from mwielgus/ca-0.5.0
Automatic merge from submit-queue (batch tested with PRs 43422, 43458)

Bump Cluster Autoscaler version to 0.5.0

**What this PR does / why we need it**:

This PR bumps Cluster Autoscaler version to 0.5.0. The version is the same as 0.5.0-beta2 (from the code perspective). We are just removing the -beta2 tag from the image. 

**Release note**:
None.

cc: @MaciekPytel @fgrzadkowski @wojtek-t
2017-03-21 12:24:17 -07:00
Kubernetes Submit Queue
edbc9f9c43 Merge pull request #43427 from liggitt/default-toleration
Automatic merge from submit-queue

Keep ResourceQuota admission at the end of the chain

Fixes #43426 

Moves DefaultTolerationSeconds admission prior to ResourceQuota to keep it at the end of the chain
2017-03-21 11:01:25 -07:00
Kubernetes Submit Queue
3d3062c17f Merge pull request #43441 from crassirostris/bump-fluentd-gcp-memory-limit
Automatic merge from submit-queue

Increase memory limit for fluentd-gcp

This PR increases fluentd memory limit in fluentd-gcp addon to avoid OOMs. Request is left intact
2017-03-21 10:14:29 -07:00
Marcin Wielgus
a3b268d659 Bump cluster autoscaler version to 0.5.0 2017-03-21 16:16:34 +01:00
Wojciech Tyczynski
41b3db0fcc Fix restore-from-backup.sh script 2017-03-21 11:58:13 +01:00
Mik Vyatskov
48e750f5a0 Increate memory limit for fluentd-gcp 2017-03-21 10:44:01 +01:00
Jordan Liggitt
bc539151f3
Keep ResourceQuota admission at the end of the chain 2017-03-21 01:53:11 -04:00
Mik Vyatskov
0fb9e03869 Add readme for fluentd-gcp addon 2017-03-20 13:55:16 +01:00
Kubernetes Submit Queue
f348bd3b25 Merge pull request #43342 from fejta/release
Automatic merge from submit-queue

Export KUBE_VERSION for consumption by get-kube-binaries.sh

/assign @ixdy 

https://github.com/kubernetes/kubernetes/pull/43331 will not have any effect until we update get-kube.sh to export KUBE_VERSION
2017-03-18 08:38:05 -07:00
Erick Fejta
cb9452f84c Export KUBE_VERSION for consumption by get-kube-binaries.sh 2017-03-17 21:16:31 -07:00
Kubernetes Submit Queue
a32757a162 Merge pull request #43331 from fejta/release
Automatic merge from submit-queue (batch tested with PRs 43331, 43336)

Do not override KUBERNETES_RELEASE if already set

/assign @ixdy 

If the user calls `get-kube.sh` with `KUBERNETES_RELEASE` and `KUBERNETES_RELEASE_URL` already set, continue to use these values.
2017-03-17 19:07:28 -07:00
Erick Fejta
106a8ce469 Do not override KUBERNETES_RELEASE if already set 2017-03-17 15:29:21 -07:00
Jordan Liggitt
87a8c21995
Give apiserver full access to kubelet API 2017-03-17 18:05:19 -04:00
Piotr Szczesniak
69fd7aafd0 Bumped Heapster to v1.3.0 2017-03-17 15:45:52 +01:00
Kubernetes Submit Queue
223c721d6e Merge pull request #43210 from floreks/patch-1
Automatic merge from submit-queue

Update Dashboard version to v1.6.0

**What this PR does / why we need it**:
Updates dashboard addon to latest version. Changelog can be found [here](https://github.com/kubernetes/dashboard/releases/tag/v1.6.0).

**Release note**:

```release-note
Update dashboard version to v1.6.0
```
2017-03-17 01:39:59 -07:00
Kubernetes Submit Queue
14888854bc Merge pull request #43184 from mtaufen/fix-cos-name-change-issues
Automatic merge from submit-queue (batch tested with PRs 43254, 43255, 43184, 42509)

Symlink cluster/gce/cos to cluster/gce/gci

Fixes: #43139

As I just unfortunately found out after spending an hour getting to the point where I could test this, upgrade.sh does not support upgrading nodes to local binaries. So someone will have to cut a release to test whether this change actually works.
2017-03-16 19:02:26 -07:00
Kubernetes Submit Queue
fe323ae003 Merge pull request #43255 from cjcullen/kube-proxy
Automatic merge from submit-queue (batch tested with PRs 43254, 43255, 43184, 42509)

Re-add kube_proxy to the abac file (Match what we had in 1.5).

**What this PR does / why we need it**:
Make the ABAC file match what it was in 1.5. GKE rewrites the ABAC file every time, so we were clobbering the kube_proxy entry that used to exist. This would have gone unnoticed, but a separate bug in GKE is causing the token file rewrites to fail on GKE (meaning group used in RBAC aren't there).

**Which issue this PR fixes**
fixes #42746

@liggitt @krousey
2017-03-16 19:02:21 -07:00
CJ Cullen
ecc86841da Re-add kube_proxy to the abac file (Match what we had in 1.5). 2017-03-16 16:24:35 -07:00
Kubernetes Submit Queue
a10c8f49ff Merge pull request #42931 from piosz/annotation-fix
Automatic merge from submit-queue

Setup fluentd-ds-ready label in startup script not in kubelet

fix #42840

``` release-note
TBD
```
2017-03-16 16:10:12 -07:00
Kubernetes Submit Queue
b2525d43ed Merge pull request #43164 from cjcullen/abac
Automatic merge from submit-queue

Allow ABAC to be disabled easily on upgrades

**What this PR does / why we need it**:
Adds a local variable to the configure-helper script so that ABAC_AUTHZ_FILE can be set to a nonexistent file in kube-env to disable ABAC on a cluster that previously was using ABAC.

@liggitt @Q-Lee
2017-03-16 12:09:40 -07:00
Kubernetes Submit Queue
6656ffc300 Merge pull request #43165 from Random-Liu/update-npd
Automatic merge from submit-queue

Update npd to the official v0.3.0 release.

Update npd to the official release v0.3.0.

This also fixes a npd bug https://github.com/kubernetes/node-problem-detector/pull/98.

@dchen1107 @kubernetes/node-problem-detector-reviewers
2017-03-16 11:23:43 -07:00
Sebastian Florek
eba780dbdd
Update dashboard to version 1.6 2017-03-16 16:15:48 +01:00
Kubernetes Submit Queue
40ef612781 Merge pull request #43202 from jsafrane/rename-storageclass
Automatic merge from submit-queue (batch tested with PRs 43177, 43202)

Rename default storageclasses

From UX perspective, 'default' is a bad name for the default storage class:

```
$ kubectl get storageclass
NAME                TYPE
default (default)   kubernetes.io/aws-ebs
```

This is sort of OK, it gets more confusing when user is not happy with the
preinstalled default storage class and creates its own and makes it default:

```
NAME             TYPE
default          kubernetes.io/aws-ebs
iops (default)   kubernetes.io/aws-ebs
```

This PR uses name of the underlying storage as name of the default storage class:

```
NAME            TYPE
gp2 (default)   kubernetes.io/aws-ebs
```

On GCE (and many others):
```
NAME                 TYPE
standard (default)   kubernetes.io/gce-pd
```

Detailed list of names of new default storage classes:

* AWS: `gp2`
* GCE: `standard` (from pd-standard)
* vSphere: `thin`

* Cinder does not have a default - it's up to OpenStack admin to set some default and it can change at any time, using `standard` as the class name.
* I was not able to find details about Azure, using `standard` too.

@justinsb @jingxu97 @kerneltime @colemickens, PTAL quickly so we can catch 1.6.

```release-note
NONE
```

For 1.6 release manager, this PR just renames objects in addon manager.
2017-03-16 07:36:19 -07:00
Kubernetes Submit Queue
47bea96b04 Merge pull request #43177 from mml/file-exists!
Automatic merge from submit-queue

Force create symlinks.

Followup from #43070.  Fixes #42660 in a way that does not break etcd upgrades.
2017-03-16 06:58:49 -07:00
Piotr Szczesniak
9bd05bdee4 Setup fluentd-ds-ready label in startup script not in kubelet 2017-03-16 13:18:31 +01:00
Jan Safranek
5046514797 Rename default storageclasses
From UX perspective, 'default' is a bad name for the default storage class:

$ kubectl get storageclass
NAME            TYPE
default (default)   kubernetes.io/aws-ebs

This is sort of OK, it gets more confusing when user is not happy with the
preinstalled default storage class and creates its own and makes it default:

NAME             TYPE
default          kubernetes.io/aws-ebs
iops (default)   kubernetes.io/aws-ebs
2017-03-16 09:14:12 +01:00
chentao1596
e60994c2c0 change the verion of etcd to 3.0.17 2017-03-16 15:34:35 +08:00
Marcin Wielgus
39d5a321f7 Bump cluster autoscaler to 0.5.0-beta2 2017-03-16 01:59:38 +01:00
Michael Taufen
bdcfbe84e4 Symlink cluster/gce/cos to cluster/gce/gci
So scripts that use /etc/os-release.ID as a dir name don't get confused.
2017-03-15 15:31:51 -07:00
Random-Liu
c4b3fd4e63 Update npd to the official v0.3.0 release. 2017-03-15 14:26:12 -07:00
Matt Liggett
c79d74f382 Force create symlinks. 2017-03-15 14:03:46 -07:00
CJ Cullen
1534cbf1fa Add abac_authorization_file local var to allow ABAC_AUTHZ_FILE to be set outside the script. 2017-03-15 13:28:18 -07:00
shashidharatd
b09b20b598 Remove FEDERATIONS_DOMAIN_MAP references 2017-03-15 23:06:16 +05:30
Kubernetes Submit Queue
4c5d50e98a Merge pull request #43134 from shyamjvs/fix-configure-script
Automatic merge from submit-queue (batch tested with PRs 40404, 43134, 43117)

Add -p to mkdirs in gci-mounter function of gce configure.sh script

Ref https://github.com/kubernetes/kubernetes/issues/40139#issuecomment-286068409

cc @wojtek-t
2017-03-15 08:27:22 -07:00
Kubernetes Submit Queue
40d56695f7 Merge pull request #43106 from piosz/bump-rescheduler
Automatic merge from submit-queue (batch tested with PRs 43106, 43110)

Bumped rescheduler version to 0.3.0

fix #32531

https://github.com/kubernetes/contrib/pull/2474 needs to be merged first

cc @ethernetdan @marun @k82cn @aveshagarwal
2017-03-15 06:14:19 -07:00
Shyam Jeedigunta
63e1c78bc7 Add -p to mkdirs in gci-mounter function of gce configure.sh script 2017-03-15 14:04:06 +01:00
Kubernetes Submit Queue
6e05e1c50a Merge pull request #43070 from mikedanese/downfix
Automatic merge from submit-queue

add a compatibility shim for certs to support a cluster downgrade

Fixes https://github.com/kubernetes/kubernetes/issues/42660
2017-03-15 05:16:27 -07:00
Piotr Szczesniak
b7ddd18037 Bumped rescheduler version to 0.3.0 2017-03-15 12:15:13 +01:00
Kubernetes Submit Queue
a91869a0c5 Merge pull request #42819 from MrHohn/dns-cm-scripts
Automatic merge from submit-queue (batch tested with PRs 43018, 42713, 42819)

Update startup scripts for kube-dns ConfigMap and ServiceAccount

Follow up PR of #42757. This PR changes all existing startup scripts to support default kube-dns ConfigMap and ServiceAccount.

@bowei 

cc @liggitt 

**Release note**:

```release-note
NONE
```
2017-03-14 16:43:19 -07:00
Mike Danese
361c40cc66 add a compatibility shim for certs to support a cluster downgrade 2017-03-14 09:25:50 -07:00
Kubernetes Submit Queue
ffb071bee0 Merge pull request #42988 from MaciekPytel/update_ca_manifest
Automatic merge from submit-queue (batch tested with PRs 42802, 42927, 42669, 42988, 43012)

Update Cluster Autoscaler entrypoint

**What this PR does / why we need it**:
Update Cluster Autoscaler manifest file to use new shell wrapper instead of directly calling CA binary (the wrapper is already included in current CA image). 
Add params to improve logging.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
```
2017-03-14 07:31:35 -07:00
Kubernetes Submit Queue
bebfdbb2cd Merge pull request #42802 from lukaszo/typo
Automatic merge from submit-queue (batch tested with PRs 42802, 42927, 42669, 42988, 43012)

Fix typo in kubedns-controller.yaml.sed

cc @MrHohn
2017-03-14 07:31:29 -07:00
Kubernetes Submit Queue
e6dc000df0 Merge pull request #42848 from timstclair/fluentd
Automatic merge from submit-queue (batch tested with PRs 42940, 42906, 42970, 42848)

Enable RollingUpdates for the fluentd daemonset addon

In anticipation of needing to rev fluentd-gcp image versions in patch releases, we should enable rolling update so the new versions get rolled out in a timely manner.

/cc @ixdy
2017-03-13 13:22:16 -07:00
Tim St. Clair
b707032198
Enable RollingUpdates for the fluentd daemonset addon 2017-03-13 10:51:45 -07:00
Maciej Pytel
d4d2f55809 Update Cluster Autoscaler entrypoint 2017-03-13 11:25:03 +01:00
Kubernetes Submit Queue
b0ce93f9be Merge pull request #42933 from timstclair/bump
Automatic merge from submit-queue (batch tested with PRs 41794, 42349, 42755, 42901, 42933)

Bump cluster-proportional-autoscaler to 1.1.1-r2

```release-note
Patch CVE-2016-8859 in gcr.io/google-containers/cluster-proportional-autoscaler-amd64
```

/cc @ixdy
2017-03-10 22:02:22 -08:00
Kubernetes Submit Queue
328e555f72 Merge pull request #41794 from shashidharatd/federation-upgrade-tests-1
Automatic merge from submit-queue (batch tested with PRs 41794, 42349, 42755, 42901, 42933)

[Federation][e2e] Add framework for upgrade test in federation

Adding framework for federation upgrade tests. please refer to #41791

cc @madhusudancs @nikhiljindal @kubernetes/sig-federation-pr-reviews
2017-03-10 22:02:15 -08:00
Tim St. Clair
5cda5966f3
Bump cluster-proportional-autoscaler to 1.1.1-r2 2017-03-10 16:37:35 -08:00
Kubernetes Submit Queue
17793bccb9 Merge pull request #42630 from anguslees/elasticsearch
Automatic merge from submit-queue (batch tested with PRs 41830, 42630)

Arrange for elasticsearch to shutdown cleanly

Kubernetes initiates "graceful shutdown" by sending SIGTERM to pid 1, which
is exactly what elasticsearch is expecting (good!)

The way the existing startup scripts worked however, this signal arrived at
the shell wrapper, not elasticsearch, and the shell wrapper exited,
killing the container immediately (bad!)

Before this change:
```
    1 ?        Ss     0:00 /bin/sh -c /run.sh
    6 ?        S      0:00 /bin/bash /run.sh
   13 ?        S      0:00  \_ /bin/su -c /elasticsearch/bin/elasticsearch elasticsearch
   14 ?        Ss     0:00      \_ sh -c /elasticsearch/bin/elasticsearch
   15 ?        Sl    19:18          \_ /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java ... org.elasticsearch.bootstrap.Elasticsearch start
```
After this change:
```
    1 ?        Ssl    0:29 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java ... org.elasticsearch.bootstrap.Elasticsearch start
```
2017-03-10 16:21:20 -08:00
shashidharatd
f2fa2f6dd6 New packages added to hack/.linted_packages 2017-03-11 01:39:56 +05:30
Kris
ee4227f4bf Remove krousey from some OWNERS files 2017-03-10 11:12:29 -08:00
Kubernetes Submit Queue
60dd611da5 Merge pull request #42853 from mikedanese/fix-bug
Automatic merge from submit-queue (batch tested with PRs 42877, 42853)

discriminate more when parsing kube-env :(

Exactly match the key. Right now CA_KEY matches ETCD_CA_KEY and we just pick the first because fml.

I HATE BASH

more fixes for kubelet rbac enablement upgrades.
2017-03-10 09:54:23 -08:00
Kubernetes Submit Queue
dcdf11a914 Merge pull request #42780 from Random-Liu/handle-npd-in-cluster-upgrade
Automatic merge from submit-queue (batch tested with PRs 42024, 42780, 42808, 42640)

Handle NPD during cluster upgrade.

Generate NPD token during upgrade.

I could not fully verify this change because of https://github.com/kubernetes/kubernetes/issues/42199. However, at least I tried upgrade master, and the corresponding environment variables are correctly generated.
```
...
ENABLE_NODE_PROBLEM_DETECTOR: 'standalone'
...
KUBELET_TOKEN: 'PKNgAaVXeL3VojND2s0KMleELjzGK0oW'
```

@maisem @dchen1107
2017-03-09 16:41:50 -08:00
Angus Lees
3390deac31 Fix metav1 typo in previous commit
Fix typo in 469df12038 by using `metav1`
consistently rather than an error-producing mix of `metav1` and
`meta_v1`.
2017-03-10 11:24:22 +11:00
Mike Danese
1b8084fc2f descriminate more when parsing kube-env :(
I HATE BASH
2017-03-09 15:33:43 -08:00
Kubernetes Submit Queue
2718dcd3ca Merge pull request #42745 from timstclair/glbc
Automatic merge from submit-queue (batch tested with PRs 42734, 42745, 42758, 42814, 42694)

Bump glbc version to 0.9.2

Follow up to https://github.com/kubernetes/ingress/pull/384
2017-03-09 15:06:55 -08:00
Random-Liu
cf41dcaeec Handle NPD during cluster upgrade. 2017-03-09 13:45:46 -08:00
Zihong Zheng
3acff7d3ef Update startup scripts for kube-dns ConfigMap and ServiceAccount 2017-03-09 11:10:23 -08:00
Łukasz Oleś
dd408d273a Fix typo in kubedns-controller.yaml.sed 2017-03-09 14:01:07 +01:00
Kubernetes Submit Queue
cc28936bd1 Merge pull request #42771 from timstclair/fluentd
Automatic merge from submit-queue (batch tested with PRs 42768, 42760, 42771, 42767)

Bump fluentd-gcp to 2.0.2

See https://github.com/kubernetes/contrib/pull/2457
2017-03-09 00:07:59 -08:00
Kubernetes Submit Queue
6a5ae47e2e Merge pull request #42760 from MrHohn/addon-reverse-order
Automatic merge from submit-queue (batch tested with PRs 42768, 42760, 42771, 42767)

Create EnsureExists class addons before Reconcile class addons

From #42757.

The addon-manager creates "Reconcile" class addons before creates "EnsureExists" class addons, which is not the best order. The "EnsureExists" class addons tend to be some default configurations like `default-storage-class` and `default kube-dns ConfigMap` (being added in #42757), and we would like to have these default configurations created before other addons are created.

@mikedanese @bowei 

```release-note
NONE
```
2017-03-09 00:07:57 -08:00
Kubernetes Submit Queue
d6575b9a73 Merge pull request #42757 from MrHohn/kubedns-cm-fix
Automatic merge from submit-queue (batch tested with PRs 42211, 38691, 42737, 42757, 42754)

Adds default kube-dns configmap

From #42746.

Using 1.4 kubelet with 1.6 master is causing upgrade test failures. Because kubelet doesn't understand optional configmaps and there is no kube-dns configmap exist, kubelet will crash.

This PR adds an empty kube-dns configmap as an "EnsureExists" class addon for fixing that.

Note: The addon-manager creates "Reconcile" class addons before creates "EnsureExists" class addons, which is not the order we want. I will soon have another PR to reverse this order.

@bowei @krousey @skriss 

```release-note
none
```
2017-03-08 18:52:30 -08:00
Kubernetes Submit Queue
6b36b3aa20 Merge pull request #42737 from fabianofranz/issues_42697
Automatic merge from submit-queue (batch tested with PRs 42211, 38691, 42737, 42757, 42754)

Fix failing kubectl skew tests

Fixes https://github.com/kubernetes/kubernetes/issues/42697

Skew kubectl tests [are broken](https://k8s-testgrid.appspot.com/release-1.6-upgrade-skew#gce-1.6-master-cvm-kubectl-skew&width=80) in "Simple pod should handle in-cluster config" for trying to copy the `kubectl.sh` script instead of the actual `kubectl` binary.


**Release note**:

```release-note
NONE
```
2017-03-08 18:52:28 -08:00
Tim St. Clair
f2ee6f1c96
Bump fluentd-gcp to 2.0.2 2017-03-08 17:20:32 -08:00
Zihong Zheng
e613570f28 Bump addon-manager to v6.4-beta.1 2017-03-08 16:08:39 -08:00
Zihong Zheng
6ddf801554 Adds default kube-dns configmap 2017-03-08 15:47:32 -08:00
Zihong Zheng
ea019ebb23 addon-manager: Create EnsureExists class addons before Reconcile class addons 2017-03-08 14:38:10 -08:00
Tim St. Clair
715b97d894
Bump glbc version to 0.9.2 2017-03-08 11:36:11 -08:00
Fabiano Franz
335217dddd Fix failing kubectl skew tests 2017-03-08 16:08:47 -03:00
Marcin
be0370ae16 Bump version of Cluster Autoscaler to 0.5.0-beta1 2017-03-08 14:14:50 +01:00
Mik Vyatskov
d40f9b7a0c Merge pull request #42693 from Crassirostris/fix-owners-files
Fix username case in OWNERS files
2017-03-08 00:55:18 -08:00
Kubernetes Submit Queue
16f75695ae Merge pull request #42675 from mikedanese/upfix
Automatic merge from submit-queue

generate kubelet auth cert on upgrades

cc @cjcullen @liggitt 

fixes #42199
2017-03-07 22:51:48 -08:00
Mike Danese
19a68ef51c generate kubelet auth cert on upgrades 2017-03-07 18:51:34 -08:00
Mikhail Vyatskov
0d363f2892 Fix username case in OWNERS files 2017-03-07 16:45:40 -08:00
Tim St. Clair
56a7080e56 Bump fluentd-gcp to version 2.0.1 2017-03-07 16:37:04 -08:00
Angus Lees
85378ad34f Arrange for elasticsearch to shutdown cleanly
Kubernetes initiates "graceful shutdown" by sending SIGTERM to pid 1.
The way the existing startup scripts worked, this signal arrived at
the shell wrapper, not elasticsearch, and the shell wrapper exited,
killing the container immediately.

Before this change:
    1 ?        Ss     0:00 /bin/sh -c /run.sh
    6 ?        S      0:00 /bin/bash /run.sh
   13 ?        S      0:00  \_ /bin/su -c /elasticsearch/bin/elasticsearch elasticsearch
   14 ?        Ss     0:00      \_ sh -c /elasticsearch/bin/elasticsearch
   15 ?        Sl    19:18          \_ /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java ... org.elasticsearch.bootstrap.Elasticsearch start

After this change:
    1 ?        Ssl    0:29 /usr/lib/jvm/java-8-openjdk-amd64/jre/bin/java ... org.elasticsearch.bootstrap.Elasticsearch start
2017-03-08 10:16:28 +11:00
Jeff Grafton
836b59962a Silence error messages from docker rmi calls we expect to fail 2017-03-07 12:49:57 -08:00
Jamie Hannaford
4eef540876 Allow minion floating IPs to be optional 2017-03-07 12:50:42 +01:00
Zihong Zheng
a81445572a Moves dns-horizontal-autoscaler to a separate service account 2017-03-06 18:43:30 -08:00
Kubernetes Submit Queue
d731dc7546 Merge pull request #41826 from bowei/stub-2
Automatic merge from submit-queue (batch tested with PRs 41826, 42405)

Add stubDomains and upstreamNameservers configuration to kube-dns

```release-note
Updates the dnsmasq cache/mux layer to be managed by dnsmasq-nanny.
dnsmasq-nanny manages dnsmasq based on values from the
kube-system:kube-dns configmap:

"stubDomains": {
	"acme.local": ["1.2.3.4"]
},

is a map of domain to list of nameservers for the domain. This is used
to inject private DNS domains into the kube-dns namespace. In the above
example, any DNS requests for *.acme.local will be served by the
nameserver 1.2.3.4.

"upstreamNameservers": ["8.8.8.8", "8.8.4.4"]

is a list of upstreamNameservers to use, overriding the configuration
specified in /etc/resolv.conf.
```
2017-03-06 15:06:04 -08:00
Kubernetes Submit Queue
9a571d9bde Merge pull request #42450 from Q-Lee/fix-unbound
Automatic merge from submit-queue

Fixing unbound bash variable.

**What this PR does / why we need it**: this fixes a bug introduced in 1.6 for ABAC.

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

**Special notes for your reviewer**: without this, we hit an unbound variable and fail to bring up the kube-apiserver with ABAC enabled.

**Release note**:

```release-note
```
2017-03-06 04:18:10 -08:00
Kubernetes Submit Queue
4092da38a6 Merge pull request #42127 from crassirostris/remove-fluentd-gcp-image
Automatic merge from submit-queue (batch tested with PRs 42070, 42127)

Remove fluentd-gcp image sources

This PR removes fluentd-gcp image sources from the main kubernetes repo to move it the `contrib`: https://github.com/kubernetes/contrib/pull/2426

Once image is moved, it will be maintained by Stackdriver team (@igorpeshansky, @qingling128 and @dhrupadb)

CC @ixdy @timstclair
2017-03-04 12:58:40 -08:00
Kubernetes Submit Queue
79883dc48d Merge pull request #42070 from luxas/remove_kube_discovery
Automatic merge from submit-queue

Remove the kube-discovery binary from the tree

**What this PR does / why we need it**:

kube-discovery was a temporary solution to implementing proposal: https://github.com/kubernetes/community/blob/master/contributors/design-proposals/bootstrap-discovery.md

However, this functionality is now gonna be implemented in the core for v1.6 and will fully replace kube-discovery:
 - https://github.com/kubernetes/kubernetes/pull/36101 
 - https://github.com/kubernetes/kubernetes/pull/41281
 - https://github.com/kubernetes/kubernetes/pull/41417

So due to that `kube-discovery` isn't used in any v1.6 code, it should be removed.
The image `gcr.io/google_containers/kube-discovery-${ARCH}:1.0` should and will continue to exist so kubeadm <= v1.5 continues to work.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
Remove cmd/kube-discovery from the tree since it's not necessary anymore
```
@jbeda @dgoodwin @mikedanese @dmmcquay @lukemarsden @errordeveloper @pires
2017-03-04 12:58:23 -08:00
mtanino
fe5f7a761b get-kube-local.sh checks pods with option "--namespace=kube-system"
Local cluster creation using get-kube-local.sh is never finished.
The get-kube-local.sh monitors running_count of pods such as etcd,
master and kube-proxy, but these pods are created under the namespace
kube-system. Therefore kubectl can't find these pods then cluster
creation isn't completed.

The get-kube-local.sh should monitor created pods with option
"--namespace=kube-system".

Fix #42517
2017-03-04 00:18:42 -05:00
Kubernetes Submit Queue
5b8d600d72 Merge pull request #41919 from Cynerva/gkk/kubelet-auth
Automatic merge from submit-queue (batch tested with PRs 41919, 41149, 42350, 42351, 42285)

Juju: Disable anonymous auth on kubelet

**What this PR does / why we need it**:

This disables anonymous authentication on kubelet when deployed via Juju.

I've also adjusted a few other TLS options for kubelet and kube-apiserver. The end result is that:
1. kube-apiserver can now authenticate with kubelet
2. kube-apiserver now verifies the integrity of kubelet

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

https://github.com/juju-solutions/bundle-canonical-kubernetes/issues/219

**Special notes for your reviewer**:

This is dependent on PR #41251, where the tactics changes are being merged in separately.

Some useful pages from the documentation:
* [apiserver -> kubelet](https://kubernetes.io/docs/admin/master-node-communication/#apiserver---kubelet)
* [Kubelet authentication/authorization](https://kubernetes.io/docs/admin/kubelet-authentication-authorization/)

**Release note**:

```release-note
Juju: Disable anonymous auth on kubelet
```
2017-03-03 16:44:37 -08:00
Kubernetes Submit Queue
097755fbd9 Merge pull request #41666 from mikedanese/cvm-master
Automatic merge from submit-queue (batch tested with PRs 41306, 42187, 41666, 42275, 42266)

remove support for debian masters in GCE

Asked about this on the mailing list and no one objects.

@zmerlynn @roberthbailey 

```release-note
Remove support for debian masters in GCE kube-up.
```
2017-03-03 10:54:42 -08:00
Quintin Lee
4628abfd9c Fixing unbound bash variable. 2017-03-02 15:42:56 -08:00
Kubernetes Submit Queue
7c3398c9b5 Merge pull request #41672 from mikedanese/delete-azure
Automatic merge from submit-queue (batch tested with PRs 41672, 42084, 42233, 42165, 42273)

remove azure getting kube-ups.

Haven't been touched in > 7 months. 

@colemickens , i"m going to send out an email about this.

```release-note
Remove Azure kube-up as the Azure community has focused efforts elsewhere.
```
2017-03-02 03:20:21 -08:00
Kubernetes Submit Queue
c432e7af37 Merge pull request #42130 from Crassirostris/update-fluentd-gcp-master-config
Automatic merge from submit-queue (batch tested with PRs 42126, 42130, 42232, 42245, 41932)

Update fluentd-gcp configuration for hosted masters

This PR makes use of the new fluentd-gcp image, which is not configured per se, for the hosted masters, which cannot use configmaps.

Mirroring https://github.com/kubernetes/kubernetes/pull/42126
2017-03-02 02:07:22 -08:00
Kubernetes Submit Queue
113cd7da0a Merge pull request #42126 from Crassirostris/move-fluentd-config-to-configmap
Automatic merge from submit-queue

Move fluentd DS config to configmap

This is the logical continuation of https://github.com/kubernetes/kubernetes/pull/41998. This PR makes fluentd-gcp DaemonSet use the new image configured using ConfigMap.

This PR doesn't change the way fluentd-gcp works in case master is not registered, that'll be fixed in a separate PR

CC @ixdy @timstclair @igorpeshansky @qingling128 @dhrupadb

**Release note:**

```release-note
Fluentd-gcp containers spawned by DaemonSet are now configured using ConfigMap
```
2017-03-02 01:43:57 -08:00
Kubernetes Submit Queue
1864e0516d Merge pull request #42192 from mikedanese/mds-block
Automatic merge from submit-queue (batch tested with PRs 41980, 42192, 42223, 41822, 42048)

add kube-env variable to block traffic to metadataserver

@Q-Lee @thockin
2017-03-02 00:59:16 -08:00
Kubernetes Submit Queue
e22eca743f Merge pull request #42197 from jcbsmpsn/legacy-abac-16
Automatic merge from submit-queue (batch tested with PRs 41931, 39821, 41841, 42197, 42195)

Adding legacy ABAC for 1.6

This is a fork of a previous [pull request](https://github.com/kubernetes/kubernetes/pull/42014) to include feedback as the original author is unavailable.

Adds a mechanism to optionally enable legacy abac for 1.6 to provide a migration path for existing users.
2017-03-01 20:08:05 -08:00
Kubernetes Submit Queue
47f63acf23 Merge pull request #41931 from jessfraz/pip
Automatic merge from submit-queue (batch tested with PRs 41931, 39821, 41841, 42197, 42195)

Admission Controller: Add Pod Preset

Based off the proposal in https://github.com/kubernetes/community/pull/254

cc @pmorie @pwittrock 

TODO:
- [ ] tests



**What this PR does / why we need it**: Implements the Pod Injection Policy admission controller

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

**Special notes for your reviewer**:

**Release note**:

```release-note
Added new Api `PodPreset` to enable defining cross-cutting injection of Volumes and Environment into Pods.
```
2017-03-01 20:07:54 -08:00
Kubernetes Submit Queue
298db3a0c3 Merge pull request #42212 from timstclair/defaultbackend
Automatic merge from submit-queue (batch tested with PRs 41644, 42020, 41753, 42206, 42212)

Update defaultbackend image to 1.3

Update `gcr.io/google-containers/defaultbackend` to the latest version.

See https://github.com/kubernetes/contrib/pull/2386

/cc @ixdy
2017-03-01 15:30:40 -08:00
Kubernetes Submit Queue
bce0718c2d Merge pull request #42181 from vishh/cluster-owners
Automatic merge from submit-queue

Adding vishh to cluster/gce owners
2017-03-01 14:19:16 -08:00
Jess Frazelle
fe84363ce2
Add settings API and admission controller
export functions from pkg/api/validation

add settings API

add settings to pkg/registry

add settings api to pkg/master/master.go

add admission control plugin for pod preset

add new admission control plugin to kube-apiserver

add settings to import_known_versions.go

add settings to codegen

add validation tests

add settings to client generation

add protobufs generation for settings api

update linted packages

add settings to testapi

add settings install to clientset

add start of e2e

add pod preset plugin to config-test.sh

Signed-off-by: Jess Frazelle <acidburn@google.com>
2017-03-01 13:04:28 -08:00
Kubernetes Submit Queue
77ddbb8e73 Merge pull request #41949 from Random-Liu/collect-npd-log
Automatic merge from submit-queue (batch tested with PRs 41921, 41695, 42139, 42090, 41949)

Collect npd log in cluster e2e test.

Collect node problem detector log in cluster e2e.

@dchen1107 @kubernetes/node-problem-detector-reviewers
2017-03-01 04:10:08 -08:00
Kubernetes Submit Queue
bd3ac1c2e8 Merge pull request #41765 from aveshagarwal/master-update-addons-tolerations
Automatic merge from submit-queue (batch tested with PRs 38676, 41765, 42103, 41833, 41702)

Update addons yaml files for converting tolerations to api fields.
2017-03-01 01:44:05 -08:00
Kubernetes Submit Queue
336203a69b Merge pull request #41923 from Cynerva/gkk/juju-nrpe-relation-squash
Automatic merge from submit-queue (batch tested with PRs 42162, 41973, 42015, 42115, 41923)

add nrpe-external-master relation to kubernetes-master and kubernetes-worker

**What this PR does / why we need it**:

This PR adds an an nrpe-external-master relation to the kubernetes-worker, kubernetes-master and kubeapi-load-balancer charms. This is needed to monitor the state of the workers, the masters and the load-balancers via Nagios.

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

https://github.com/juju-solutions/bundle-canonical-kubernetes/issues/165

**Special notes for your reviewer**:

Original work by @axinojolais in PR #40897. All I've done is squash commits on his behalf.

**Release note**:

```release-note
The kubernetes-master, kubernetes-worker and kubeapi-load-balancer charms have gained an nrpe-external-master relation, allowing the integration of their monitoring in an external Nagios server.
```
2017-02-28 22:06:05 -08:00
Kubernetes Submit Queue
1a35155025 Merge pull request #41973 from wojtek-t/build_non_alpha_3_0_17_etcd_image
Automatic merge from submit-queue (batch tested with PRs 42162, 41973, 42015, 42115, 41923)

Release 3.0.17 etcd image
2017-02-28 22:05:59 -08:00
Kubernetes Submit Queue
35c2e70dd1 Merge pull request #42200 from mikedanese/fix-upgrade
Automatic merge from submit-queue

fix upgrades
2017-02-28 18:33:04 -08:00
Kubernetes Submit Queue
2035d1e24b Merge pull request #41670 from mikedanese/delete-trusty
Automatic merge from submit-queue

remove trusty GCE kube-up.sh

Asked on the mailing list. No one objected. Lot's of people were in favor.

cc @roberthbailey 


```release-note
Remove support for trusty in GCE kube-up.
```
2017-02-28 17:45:07 -08:00
Mik Vyatskov
2e7eea594c Remove fluentd-gcp image sources 2017-03-01 01:47:01 +01:00
Kubernetes Submit Queue
70797f51e1 Merge pull request #42269 from gmarek/cidr
Automatic merge from submit-queue

Correct CIDR range for kubemark
2017-02-28 16:06:52 -08:00
Mike Danese
90b26465d7 fix upgrades 2017-02-28 14:52:37 -08:00
gmarek
670632115c Correct CIDR range for kubemark 2017-02-28 19:26:32 +01:00
Mike Danese
33ea2d11fc remove trusty GCE kube-up.sh 2017-02-28 10:08:17 -08:00
Mike Danese
4708714dd1 remove azure getting kube-ups. 2017-02-28 10:06:39 -08:00
Mike Danese
cb9bdb8813 remove support for debian masters in GCE 2017-02-28 09:54:07 -08:00
Kubernetes Submit Queue
81d01a84e0 Merge pull request #41944 from jingxu97/Feb/mounter
Automatic merge from submit-queue (batch tested with PRs 35094, 42095, 42059, 42143, 41944)

Use chroot for containerized mounts

This PR is to modify the containerized mounter script to use chroot
instead of rkt fly. This will avoid the problem of possible large number
of mounts caused by rkt containers if they are not cleaned up.
2017-02-28 09:20:21 -08:00
Kubernetes Submit Queue
dac0296f0b Merge pull request #42093 from liggitt/avoid-fake-node-names
Automatic merge from submit-queue (batch tested with PRs 40746, 41699, 42108, 42174, 42093)

Avoid fake node names in user info

Node usernames should follow the format `system:node:<node-name>`,
but if we don't know the node name, it's worse to put a fake one in.

In the future, we plan to have a dedicated node authorizer, which would
start rejecting requests from a user with a bogus node name like this.

The right approach is to either mint correct credentials per node, or use node bootstrapping so it requests a correct client certificate itself.
2017-02-28 07:51:33 -08:00
Kubernetes Submit Queue
5981ce304a Merge pull request #41937 from cheftako/changePassword
Automatic merge from submit-queue (batch tested with PRs 41937, 41151, 42092, 40269, 42135)

GCE will properly regenerate basic_auth.csv on kube-apiserver start.

**What this PR does / why we need it**:

If basic_auth.csv does not exist we will generate it as normal.
If basic_auth.csv exists we will remove the old admin password before adding the "new" one. (Turns in to a no-op if the password exists).
This did not work properly before because we were replacing by key, where the key was the password. New password would not match and so not replace the old password.

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

**Special notes for your reviewer**:

**Release note**:

```release-note
```
2017-02-28 01:24:03 -08:00
Tim St. Clair
3d2d6d84cd
Update defaultbackend image to 1.3 2017-02-27 17:57:35 -08:00
Mike Danese
34e02c9989 add kube-env variable to block traffic to metadataserver 2017-02-27 16:54:44 -08:00
Zach Loafman
f07aee2f2f AWS: Kill bash deployment
c.f. #38772, #42194 and https://k8s-testgrid.appspot.com/google-aws#aws

cluster/kube-up.sh with KUBERNETES_PROVIDER=aws has been broken on 1.6
for a couple of months now. No one is supporting it. Nuke.
2017-02-27 14:39:25 -08:00
Quintin Lee
3adac0dace Adding legacy ABAC for 1.6 2017-02-27 14:38:54 -08:00
Bowei Du
4fe2e82d88 Configure DNS based on the kube-system:kube-dns ConfigMap
Updates the dnsmasq cache/mux layer to be managed by dnsmasq-nanny.
dnsmasq-nanny manages dnsmasq based on values from the
kube-system:kube-dns configmap:

"stubDomains": {
	"acme.local": ["1.2.3.4"]
},

is a map of domain to list of nameservers for the domain. This is used
to inject private DNS domains into the kube-dns namespace. In the above
example, any DNS requests for *.acme.local will be served by the
nameserver 1.2.3.4.

"upstreamNameservers": ["8.8.8.8", "8.8.4.4"]

is a list of upstreamNameservers to use, overriding the configuration
specified in /etc/resolv.conf.
2017-02-27 11:31:59 -08:00
Vishnu kannan
cdb557ecd8 adding vishh to gce cluster owners
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2017-02-27 10:58:43 -08:00
Wojciech Tyczynski
74266e0dc0 Release 3.0.17 etcd image 2017-02-27 16:23:44 +01:00
George Kraft
27504d8aca Juju: Disable anonymous auth on kubelet
Adds TLS verification between kube-apiserver and kubelet in both directions
2017-02-27 09:02:24 -06:00
Avesh Agarwal
99bba40682 Update addons yaml files. 2017-02-27 09:21:59 -05:00
Kubernetes Submit Queue
8e8a162606 Merge pull request #42065 from MrHohn/dns-autoscaler-1.1.0
Automatic merge from submit-queue (batch tested with PRs 42058, 41160, 42065, 42076, 39338)

Bump up dns-horizontal-autoscaler to 1.1.1

cluster-proportional-autoscaler 1.1.1 is releasing by kubernetes-incubator/cluster-proportional-autoscaler#26, also bump it up for dns-horizontal-autoscaler to introduce below features:
- Add PreventSinglePointFailure option in linear mode.
- Use protobufs for communication with apiserver.
- Support switching control mode on-the-fly.

Note:
The new entry `"preventSinglePointFailure":true` ensures kube-dns to have at least 2 replicas when there is more than one node. Mitigate the issue mentioned in #40063.

@bowei @thockin 

**Release note**:

```release-note
NONE
```
2017-02-27 01:30:02 -08:00
Kubernetes Submit Queue
4f277b480d Merge pull request #42058 from Cynerva/gkk/fix-action-shebangs
Automatic merge from submit-queue (batch tested with PRs 42058, 41160, 42065, 42076, 39338)

Juju: Fix shebangs in charm actions to use python3

**What this PR does / why we need it**:

This fixes the microbot and create-rbd-pv actions by reverting them back to python3. We accidentally switched them to python2 to match the boilerplate checker's expectations for python files.

It looks like hack/verify-boilerplate.sh does not check these since they don't have the .py extension, so we should be good with no changes there.

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

https://github.com/juju-solutions/bundle-canonical-kubernetes/issues/212

**Special notes for your reviewer**:

**Release note**:

```release-note
Juju: Fix shebangs in charm actions to use python3
```
2017-02-27 01:29:58 -08:00
Kubernetes Submit Queue
2a6414bc91 Merge pull request #42044 from timchenxiaoyu/daemonnotdeamon
Automatic merge from submit-queue

daemon not deamon
2017-02-26 22:45:32 -08:00
Kubernetes Submit Queue
b18bad156d Merge pull request #40634 from Crassirostris/use-docker-log-rotation
Automatic merge from submit-queue

Use docker log rotation mechanism instead of logrotate

This is a solution for https://github.com/kubernetes/kubernetes/issues/38495.

Instead of rotating logs using logrotate tool, which is configured quite rigidly, this PR makes docker responsible for the rotation and makes it possible to configure docker logging parameters. It solves the following problems:

* Logging agent will stop loosing lines upon rotation
* Container's logs size will be more strictly constrained. Instead of checking the size hourly, size will be checked upon write, preventing https://github.com/kubernetes/kubernetes/issues/27754

It's still far from ideal, for example setting logging options per pod, as suggested in https://github.com/kubernetes/kubernetes/issues/15478 would be much more flexible, but latter approach requires deep changes, including changes in API, which may be in vain because of CRI and long-term vision for logging.

Changes include:

* Change in salt. It's possible to configure docker log parameters, using variables in pillar. They're exported from env variables on `gce`, but for different cloud provider they have to be exported first.
* Change in `configure-helper.sh` scripts for those os on `gce` that don't use salt + default values exposed via env variables

This change may be problematic for kubelet logs functionality with CRI enabled, that will be tackled in the follow-up PR, if confirmed.

CC @piosz @Random-Liu @yujuhong @dashpole @dchen1107 @vishh @kubernetes/sig-node-pr-reviews

```release-note
On GCI by default logrotate is disabled for application containers in favor of rotation mechanism provided by docker logging driver.
```
2017-02-26 20:39:34 -08:00
Kubernetes Submit Queue
7265908e7f Merge pull request #41998 from timstclair/fluentd-debian-base
Automatic merge from submit-queue

Cleanup fluentd-gcp image, rebase on debian-base

**Why we need this PR**:

There are several problems with our current fluentd-gcp image:

- It pulls in lots of unused packages, which expose unnecessary risk and create noise in CVE scans (and scare customers). The most notable example is the fluent-ui, which pulls in rails.
- `curl | sh ` is not a good practice for a Dockerfile. First, the script is not checked in the same source control branch, so builds are not reproducible. Second, the actions it is taking are opaque. Third, in this case, using non-standard packages means they're harder to manage with CVE scans & upstream fixes.

**What is changed by this PR?**

- Rather than relying on td-agent (which includes fluent-ui), use standard upstream packages. This is largely based off the [official fluentd debian-based image](https://github.com/fluent/fluentd-docker-image/blob/master/v0.12/debian/Dockerfile).
- Rebases the image on debian-base (depends on https://github.com/kubernetes/kubernetes/pull/41915). We would like to move towards a single full-distro base image we can maintain. This change should be relatively minor.

As a result of these changes, the image size is reduced from 360.6 MB to 185.8 MB (nearly half). Many packages were removed, and the full diff (focus on the unversioned files) is listed here: 3fb704f977

**Which issue this PR fixes** https://github.com/kubernetes/kubernetes/issues/40248

**Special notes for your reviewer**:

This change both addresses security concerns, and is expected to greatly reduce the maintenance burden of the fluentd-gcp image. I'd *really* like to get this into 1.6, so please prioritize this review if possible.

I tested this by running the default e2e suite on a private e2e cluster using the new image. If there are other tests you'd like me to run, please let me know ASAP.

**Release note**:
```release-note
Cleanup fluentd-gcp image: rebase on debian-base, switch to upstream packages, remove fluent-ui & rails
```
2017-02-26 19:15:11 -08:00
Kubernetes Submit Queue
df129690ef Merge pull request #41925 from KarolKraskiewicz/dev
Automatic merge from submit-queue (batch tested with PRs 35408, 41915, 41992, 41964, 41925)

bump version numbers for heapster/influxdb/grafana images

**What this PR does / why we need it**:
It updates version of monitoring components (heapster/influxdb/grafana) to the latest one used by heapster

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

**Special notes for your reviewer**:
[e2e/monitoring.go](https://github.com/kubernetes/kubernetes/blob/master/test/e2e/monitoring.go) test seems to be passing without modifications

**Release note**:

```release-note
```
2017-02-26 18:08:00 -08:00
Mik Vyatskov
42e064fc90 Move fluentd DS config to configmap 2017-02-27 00:05:48 +01:00
Mik Vyatskov
bd89af6863 Update fluentd-gcp configuration for hosted masters 2017-02-27 00:00:41 +01:00
axino
83766d2894 add nrpe-external-master relation to kubernetes-master and kubernetes-worker
For now, the checks are very basic and only check if the systemd
services are running properly.
2017-02-26 10:37:34 -06:00
Kubernetes Submit Queue
77ba346f55 Merge pull request #41815 from kevin-wangzefeng/enable-defaulttolerationseconds-admission-controller
Automatic merge from submit-queue (batch tested with PRs 40932, 41896, 41815, 41309, 41628)

enable DefaultTolerationSeconds admission controller by default

**What this PR does / why we need it**:
Continuation of PR #41414, enable DefaultTolerationSeconds admission controller by default.


**Which issue this PR fixes**: 
fixes: #41860
related Issue: #1574, #25320
related PRs: #34825, #41133, #41414 

**Special notes for your reviewer**:

**Release note**:

```release-note
enable DefaultTolerationSeconds admission controller by default
```
2017-02-26 08:09:58 -08:00
Walter Fender
d7f43a6bca GCE will properly regenerate basic_auth.csv on kube-apiserver start.
If the file does not exist we will generate it as normal.
If the file exists we will remove the old admin password before adding
the "new" one. (Turns in to a no-op if the password exists).
This did not work properly before because we were replacing by key,
where the key was the password. New password would not match and so
not replace the old password.
Added a METADATA_CLOBBERS_CONFIG flag
METADATA_CLOBBERS_CONFIG controls if we consider the values on disk or in
metadata to be the canonical source of truth. Currently defaulting to
false for GCE and forcing to true for GKE.
Added handling for older forms of the basic_auth.csv file.
Fixed comment to reflect new METADATA_CLOBBERS_CONFIG var.
2017-02-25 11:31:59 -08:00
Kubernetes Submit Queue
197bd532a2 Merge pull request #41700 from vishh/kube-proxy-oom-score
Automatic merge from submit-queue

Protect kubeproxy deployed via kube-up from system OOMs

This change is necessary until it can be moved to Guaranteed QoS Class.

For #40573
2017-02-25 07:07:01 -08:00
Karol Kraśkiewicz
b9be428bf3 bump version numbers for heapster/influxdb/grafana images 2017-02-25 15:33:04 +01:00
timchenxiaoyu
34bf0bf1cd kubelet word mistake 2017-02-25 22:15:53 +08:00
Kubernetes Submit Queue
dbf5a40965 Merge pull request #41911 from ixdy/bump-rescheduler
Automatic merge from submit-queue (batch tested with PRs 41854, 41801, 40088, 41590, 41911)

Bump gcr.io/google-containers/rescheduler to v0.2.2

**What this PR does / why we need it**: updates the rescheduler image to one based on busybox instead of ubuntu-slim. Changes for the image were in https://github.com/kubernetes/contrib/pull/2390.

Do you think this merits a release note? I'm leaning towards no.

**Release note**:

```release-note
Update gcr.io/google-containers/rescheduler to v0.2.2, which uses busybox as a base image instead of ubuntu.
```

cc @timstclair
2017-02-25 05:02:58 -08:00
Kubernetes Submit Queue
db2ba2900b Merge pull request #41854 from vmware/default-storage-class.kerneltime
Automatic merge from submit-queue (batch tested with PRs 41854, 41801, 40088, 41590, 41911)

Default storage class for vSphere Fixes #40070

**What this PR does / why we need it**:

Create default storage class for vSphere. This is part of the storage class GA effort https://github.com/kubernetes/features/issues/36

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

fixes #40070

**Special notes for your reviewer**:

**Release note**:

```release-note
```
2017-02-25 05:02:52 -08:00
Kubernetes Submit Queue
3701e54eb1 Merge pull request #41351 from chuckbutler/multi-master-patch
Automatic merge from submit-queue (batch tested with PRs 40665, 41094, 41351, 41721, 41843)

Multi master patch

**What this PR does / why we need it**: Corrects a sync files issue present when running in a HA Master configuration. This PR adds logic to syncronize on first deployment for `/etc/kubernetes/serviceaccount.key` which will cause cypto verification failure if not 1:1 on each master unit. Additionally syncs basic_auth and additional files in /srv/kubernetes. 

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

**Special notes for your reviewer**: This requires PR #41251 as a dependency before merging. 

**Release note**:

```release-note
Juju - K8s master charm now properly keeps distributed master files in sync for an HA control plane.
```
2017-02-25 03:56:55 -08:00
Kubernetes Submit Queue
b6b3ff59be Merge pull request #40108 from MrHohn/addon-ensure-exist
Automatic merge from submit-queue

Supports 'ensure exist' class addon in Addon-manager

Fixes #39561, fixes #37047 and fixes #36411. Depends on #40057.

This PR splits cluster addons into two categories:
- Reconcile: Addons that need to be reconciled (`kube-dns` for instance).
- EnsureExists: Addons that need to be exist but changeable (`default-storage-class`).

The behavior for the 'EnsureExists' class addon would be:
- Create it if not exist.
- Users could do any modification they want, addon-manager will not reconcile it.
- If it is deleted, addon-manager will recreate it with the given template.
- It will not be updated/clobbered during upgrade.

As Brian pointed out in [#37048/comment](https://github.com/kubernetes/kubernetes/issues/37048#issuecomment-272510835), this may not be the best solution for addon-manager. Though #39561 needs to be fixed in 1.6 and we might not have enough bandwidth to do a big surgery.

@mikedanese @thockin 

cc @kubernetes/sig-cluster-lifecycle-misc 

---

Tasks for this PR:
- [x] Supports 'ensure exist' class addon and switch to use new labels in addon-manager.
- [x] Updates READMEs regarding the new behavior of addon-manager.
- [x] Updated `test/e2e/addon_update.go` to match the new behavior.
- [x] Go through all current addons and apply the new labels on them regarding what they need.
- [x] Bump addon-manager and update its template files.
2017-02-25 03:02:50 -08:00
Jordan Liggitt
34ac0dc302
Avoid fake node names in user info 2017-02-25 02:09:55 -05:00
Zihong Zheng
d4fa046d56 Adds the new addon-manager labels on cluster addon templates 2017-02-24 16:53:12 -08:00
Zihong Zheng
64ba52ae71 Bumps addon-manager to v6.4-alpha.3 and updates template files 2017-02-24 16:52:31 -08:00
Zihong Zheng
72b35ce7d7 Updates READMEs regarding the new behavior of addon-manager 2017-02-24 16:42:41 -08:00
Zihong Zheng
c7189fd555 Supports 'ensure exist' class addon in addon-manager 2017-02-24 16:42:16 -08:00
Madhusudan.C.S
edef3af34f Split federation-{up,down} from e2e-{up,down}. 2017-02-24 14:27:31 -08:00