Commit Graph

15668 Commits

Author SHA1 Message Date
Kubernetes Submit Queue
3be5706830 Merge pull request #33836 from feiskyer/portforward
Automatic merge from submit-queue

Kubelet: fix port forward for dockershim

This PR fixes port forward for dockershim and also adds a `kubecontainer.FormatPod`.

Locally cluster has passed `--ginkgo.focus=Port\sforwarding'` tests.

cc/ @Random-Liu @yujuhong
2016-10-04 00:55:12 -07:00
Kubernetes Submit Queue
1dc8277507 Merge pull request #33796 from jingxu97/quickfix-aws-9-28
Automatic merge from submit-queue

Fix issue in updating device path when volume is attached multiple times

When volume is attached, it is possible that the actual state
already has this volume object (e.g., the volume is attached to multiple
nodes, or volume was detached and attached again). We need to update the
device path in such situation, otherwise, the device path would be stale
information and cause kubelet mount to the wrong device.

This PR partially fixes issue #29324
2016-10-03 23:01:08 -07:00
Kubernetes Submit Queue
47b4c0e770 Merge pull request #33899 from MrHohn/fix_config_test
Automatic merge from submit-queue

Fix #33784, IN_CREATE event does not guarantee file content written

Fixed #33784.

The CREATE inotify event [here](https://github.com/kubernetes/kubernetes/blob/master/pkg/kubelet/config/file_linux_test.go#L275) is triggered by os.OpenFile(), however the content would be written by the following f.Write(). It will fail if the program try to process the event in between.

IN_CREAE event is triggered by open(2), mkdir(2), link(2), symlink(2), bind(2), but not all of them will guarantee the content is written ([ref](http://man7.org/linux/man-pages/man7/inotify.7.html)). <s>Hence we should not respond to IN_CREATE event for pod creation. I believe listen on IN_MODIFY and IN_MOVED_TO would be sufficient for pod addition&update.

Would like to see the Jenkins test results for further evaluation.

@Random-Liu
2016-10-03 22:24:48 -07:00
Kubernetes Submit Queue
092f9edb06 Merge pull request #33218 from dashpole/NodeInodePressure_type
Automatic merge from submit-queue

Split NodeDiskPressure into NodeInodePressure and NodeDiskPressure

Added NodeInodePressure as a NodeConditionType.  SignalImageFsInodesFree and SignalNodeFsInodesFree signal this pressure.  Also added simple pieces to the scheduler predicates so that it takes InodePressure into account.
2016-10-03 21:47:28 -07:00
Kubernetes Submit Queue
a241daf3f2 Merge pull request #33500 from Random-Liu/apparmor-seccomp-cri
Automatic merge from submit-queue

Add seccomp and apparmor support.

This PR adds seccomp and apparmor support in new CRI.

This a WIP because I'm still adding unit test for some of the functions. Sent this PR here for design discussion.

This PR is similar with https://github.com/kubernetes/kubernetes/pull/33450.
The differences are:
* This PR passes seccomp and apparmor configuration via annotations;
* This PR keeps the seccomp handling logic in docker shim because current seccomp implementation is very docker specific, and @timstclair told me that even the json seccomp profile file is defined by docker.

Notice that this PR almost passes related annotations in `api.Pod` to the runtime directly instead of introducing new CRI annotation.

@yujuhong @feiskyer @timstclair
2016-10-03 20:34:13 -07:00
Jing Xu
9e8edf6baf Fix issue in updating device path when volume is attached multiple times
When volume is attached, it is possible that the actual state
already has this volume object (e.g., the volume is attached to multiple
nodes, or volume was detached and attached again). We need to update the
device path in such situation, otherwise, the device path would be stale
information and cause kubelet mount to the wrong device.

This PR partially fixes issue #29324
2016-10-03 17:14:23 -07:00
Kubernetes Submit Queue
dab787d80d Merge pull request #31755 from smarterclayton/has_synced
Automatic merge from submit-queue

DeltaFIFO should not report HasSynced until deletes are reported

Deletions identified by knownObjects on the initial sync replace
(immediately after the List from a reflector) should be considered part
of the initial sync since we have the information available at the time
we do the deletion.

An error during Replace() can result in Populated not being set, but it
was incorrect before (population would be wrong) and queueActionLocked
does not error except on "my cache is broken because I gave an incorrect
keyFunc".

@lavalamp @deads2k hit this while trying to use DeltaFIFO to implement an "external" controller (one that uses the knownObjects as provided by a call to a remote system of record).

Not 1.4
2016-10-03 15:41:20 -07:00
MrHohn
dfa4e66b15 Fix #33784, IN_CREATE event does not guarantee file content written 2016-10-03 15:07:08 -07:00
Kubernetes Submit Queue
c72c21b18f Merge pull request #33889 from Random-Liu/fix-dockershim-sandbox-id-bug
Automatic merge from submit-queue

CRI: Fix bug in dockershim to set sandbox id properly.

For https://github.com/kubernetes/kubernetes/issues/33189#issuecomment-249307796.

During debugging `Variable Expansion should allow composing env vars into new env vars`, I found that the root cause is that the sandbox was removed before all containers were deleted, which caused the pod to be started again after succeed.

This happened because the `PodSandboxID` field is not set. This PR fixes the bug.

Some other test flakes are also caused by this
```
Downward API volume should provide node allocatable (cpu) as default cpu limit if the limit is not set
Downward API volume should provide container's memory limit
EmptyDir volumes should support (non-root,0666,tmpfs)
...
```

/cc @yujuhong @feiskyer
2016-10-03 14:08:07 -07:00
David Ashpole
0c8a664e50 addressed comments 2016-10-03 11:42:56 -07:00
David Ashpole
fed3f37eef Split NodeDiskPressure into NodeInodePressure and NodeDiskPressure 2016-10-03 11:42:56 -07:00
deads2k
8c20af79a4 fix loopback authorizer 2016-10-03 12:46:39 -04:00
Kubernetes Submit Queue
3933ddbc9a Merge pull request #33821 from sttts/sttts-sysctl-psp-fixes
Automatic merge from submit-queue

Improve sysctl psp tests

<!--  Thanks for sending a pull request!  Here are some tips for you:
1. If this is your first time, read our contributor guidelines https://github.com/kubernetes/kubernetes/blob/master/CONTRIBUTING.md and developer guide https://github.com/kubernetes/kubernetes/blob/master/docs/devel/development.md
2. If you want *faster* PR reviews, read how: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/faster_reviews.md
3. Follow the instructions for writing a release note: https://github.com/kubernetes/kubernetes/blob/master/docs/devel/pull-requests.md#release-notes
-->

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

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

**Special notes for your reviewer**:

**Release note**:
<!--  Steps to write your release note:
1. Use the release-note-* labels to set the release note state (if you have access) 
2. Enter your extended release note in the below block; leaving it blank means using the PR title as the release note. If no release note is required, just write `NONE`. 
-->
```release-note
```
2016-10-03 07:54:24 -07:00
Ilya Dmitrichenko
abc0a98d25 Replace references to http://releases.k8s.io/HEAD/docs/user-guide/ 2016-10-02 11:44:40 +01:00
Random-Liu
37273693e5 Fix bug in dockershim to set sandbox id properly. 2016-10-01 20:55:06 -07:00
Kubernetes Submit Queue
bd97c4b7c8 Merge pull request #33879 from luxas/remove_refs_to_mesos
Automatic merge from submit-queue

Remove old references to contrib/mesos

@deads2k @k82cn @derekwaynecarr
2016-10-01 18:20:10 -07:00
Kubernetes Submit Queue
347d448180 Merge pull request #33831 from rustyrobot/print-cert-info
Automatic merge from submit-queue

Kubeadm: print information about certificates

Prints basic information about certificates to the user.

Example of `kubeadm init` output:
```
<master/pki> generated Certificate Authority key and certificate:
Issuer: CN=kubernetes | Subject: CN=kubernetes | CA: true
Not before: 2016-09-30 11:19:19 +0000 UTC Not After: 2026-09-28 11:19:19 +0000 UTC
Public: /etc/kubernetes/pki/ca-pub.pem
Private: /etc/kubernetes/pki/ca-key.pem
Cert: /etc/kubernetes/pki/ca.pem
<master/pki> generated API Server key and certificate:
Issuer: CN=kubernetes | Subject: CN=kube-apiserver | CA: false
Not before: 2016-09-30 11:19:19 +0000 UTC Not After: 2017-09-30 11:19:19 +0000 UTC
Alternate Names: [172.18.76.239 10.0.0.1 kubernetes kubernetes.default kubernetes.default.svc kubernetes.default.svc.cluster.local]
Public: /etc/kubernetes/pki/apiserver-pub.pem
Private: /etc/kubernetes/pki/apiserver-key.pem
Cert: /etc/kubernetes/pki/apiserver.pem
<master/pki> generated Service Account Signing keys:
Public: /etc/kubernetes/pki/sa-pub.pem
Private: /etc/kubernetes/pki/sa-key.pem
```

Example of `kubeadm join` command:
```
<node/csr> received signed certificate from the API server:
Issuer: CN=kubernetes | Subject: CN=system:node:minion | CA: false
Not before: 2016-09-30 11:28:00 +0000 UTC Not After: 2017-09-30 11:28:00 +0000 UTC
```

Fixes #33642
cc @kubernetes/sig-cluster-lifecycle
2016-10-01 11:31:25 -07:00
Kubernetes Submit Queue
6a1622a723 Merge pull request #33785 from deads2k/api-16-pass-config-to-hook
Automatic merge from submit-queue

pass loopback config to poststart hooks

Updates post start hooks to take a clientconfig with the new loopback credentials for bootstrapping.

@ericchiang This is a little bit of plumbing, but mainly auth I think.
2016-10-01 10:27:04 -07:00
Kubernetes Submit Queue
ac86249a95 Merge pull request #33476 from jonboulle/master
Automatic merge from submit-queue

CRI: various spelling and typo fixes
2016-10-01 09:34:23 -07:00
Kubernetes Submit Queue
30ca344361 Merge pull request #33565 from liggitt/ecdsa
Automatic merge from submit-queue

Add ECDSA support for service account tokens

Fixes #28180

```release-note
ECDSA keys can now be used for signing and verifying service account tokens.
```
2016-10-01 08:42:53 -07:00
Kubernetes Submit Queue
5e792f3dbd Merge pull request #33534 from yarntime/add-hpa-default-test
Automatic merge from submit-queue

Add test cases to test the default value of HorizontalPodAutoscaler

Add test cases to test the default value of HorizontalPodAutoscaler.
2016-10-01 07:50:49 -07:00
Kubernetes Submit Queue
e8ae960af4 Merge pull request #33868 from wongma7/update-1.4-clientset
Automatic merge from submit-queue

Run hack/update-codegen.sh in release-1.4 for generating an updated 1.4 clientset

@caesarxuchao doing steps 1 and 2 as described here https://github.com/kubernetes/kubernetes/pull/33851#issuecomment-250851272

adds apps, authentication, certificates, rbac, and storage.

The reason there are substantial deletions (aside from the oneliner "this package is generated by client-gen with arguments...") is because PR https://github.com/kubernetes/kubernetes/pull/32407 added a resource to the 1.4 clientset even though the resource is not present in 1.4 and the PR is targeted to 1.5. So this corrects that, as a bonus.
2016-10-01 07:01:15 -07:00
Lucas Käldström
0bba65ca1a Remove old references to contrib/mesos 2016-10-01 16:46:48 +03:00
Kubernetes Submit Queue
901e3e30b6 Merge pull request #33387 from timothysc/resource_lock_abstraction
Automatic merge from submit-queue

Abstraction of endpoints in leaderelection code

**Problem Statement**:
Currently the Leader Election code is hard coded against the endpoints api.  This causes performance issues on large scale clusters due to incessant iptables refreshes, see: https://github.com/kubernetes/kubernetes/issues/26637 

The goal of this PR is to: 

- Abstract Endpoints out of the leader election code
- Fix a known bug in the event recording 

fixes #18386

**Special notes for your reviewer**:
This is a 1st pass at abstracting the details of endpoints out into an interface.  Any suggestions around how we we want to refactor this interface is welcome and could be addressed in either this PR or follow on PR. 

/cc @ncdc @wojtek-t @rrati
2016-10-01 05:19:29 -07:00
Kubernetes Submit Queue
4f32cc073b Merge pull request #33233 from yujuhong/default_image_tag
Automatic merge from submit-queue

Apply default image tags for all runtimes

Move the docker-specific logic up to the ImageManager to allow code sharing
among different implementations.

Part of #31459

/cc @kubernetes/sig-node
2016-10-01 04:29:12 -07:00
Kubernetes Submit Queue
5cfed5ff22 Merge pull request #33374 from deads2k/controller-05-more-informers
Automatic merge from submit-queue

switch node controller to shared informers

Switches the node controller to re-use existing watches and caches.
2016-10-01 03:39:47 -07:00
Kubernetes Submit Queue
906cb1ce70 Merge pull request #33123 from kokhang/node-ip-cloud-provider
Automatic merge from submit-queue

Node-ip is not used when cloud provider is used

Currently --node-ip in kubelet is not being used when kubelet is configured with a cloud provider. With this fix, kubelet will get a list of IPs from the provider and parse it to return the one that matches node-ip.

This fixes #23568
2016-10-01 02:51:19 -07:00
Kubernetes Submit Queue
6f69293240 Merge pull request #32599 from mikedanese/kubectl-selector
Automatic merge from submit-queue

allow kubectl -f to filter by selector

cc @kubernetes/kubectl

Fixes #32544
2016-10-01 01:13:09 -07:00
Kubernetes Submit Queue
5f216ca394 Merge pull request #33587 from bprashanth/esipp-nodeport-2
Automatic merge from submit-queue

OnlyLocal nodeports

90% unittests.
Code changes: 
* Jump to XLB from nodePorts for OnlyLocal nodeports
* Jump to services chain from XLB for clusterCIDR (partially fixes https://github.com/kubernetes/kubernetes/issues/33081)

NodePorts still don't get firewalls: https://github.com/kubernetes/kubernetes/issues/33586
2016-09-30 22:26:49 -07:00
Evgeny L
12f8c979ba kubeadm: user-friendly certificates formatting 2016-10-01 04:57:30 +00:00
Pengfei Ni
8e25f938a7 Kubelet: fix port forward for dockershim
Signed-off-by: Pengfei Ni <feiskyer@gmail.com>
2016-10-01 08:06:23 +08:00
Matthew Wong
014239f06b Run hack/update-codegen.sh in release-1.4 2016-09-30 18:21:55 -04:00
Steve Leon
a9123de9b4 Moving validateNodeIP to kubelet_node_status.go 2016-09-30 14:07:13 -07:00
Kubernetes Submit Queue
918e99e298 Merge pull request #33815 from Random-Liu/add-cri-fake-attach
Automatic merge from submit-queue

CRI: Add fake attach support in CRI.

For #31459.

I've tested in my cluster, it works.

@feiskyer @yujuhong
2016-09-30 10:46:17 -07:00
Dr. Stefan Schimanski
e6acc08d96 Return error for empty sysctl names 2016-09-30 17:56:37 +02:00
Dr. Stefan Schimanski
e258d0bc4b Add psp sysctl provider tests 2016-09-30 17:56:11 +02:00
Dr. Stefan Schimanski
a62a64550c Cosmetical fixes for sysctl psp 2016-09-30 17:56:11 +02:00
deads2k
57039cfdfa make well-known users and groups into constants 2016-09-30 10:34:33 -04:00
deads2k
4c8959df59 pass loopback config to posthooks 2016-09-30 10:34:33 -04:00
Kubernetes Submit Queue
f9dd76564c Merge pull request #33686 from ymqytw/format_json_printer_for_runtime.Unknown
Automatic merge from submit-queue

formatting json printer for runtime.Unknown

Formatting JSONPrinter.
It prints everything in one single line before.
Now it prints in well-formatted way.
2016-09-30 06:13:17 -07:00
Jonathan Boulle
cc7f3906c7 CRI: various spelling and typo fixes
Also clarify whether some properties belong to containers or sandboxes.
2016-09-30 12:09:21 +02:00
yarntime
f65d47659e add test cases to test the default value of HPA 2016-09-30 16:21:48 +08:00
Kubernetes Submit Queue
e05d568b40 Merge pull request #33810 from feiskyer/portforward
Automatic merge from submit-queue

Fake docker portfoward for in-process docker CRI integration

This is necessary to pass e2e tests for in-process docker CRI integration.

This is part of #31459.

cc/ @Random-Liu @kubernetes/sig-node
2016-09-30 00:52:34 -07:00
Mike Danese
5f2569c16d allow kubectl -f to filter by selector 2016-09-30 00:42:35 -07:00
Kubernetes Submit Queue
a2cd107e14 Merge pull request #32373 from nebril/petset-count-test-master
Automatic merge from submit-queue

PetSet replica count status test

**What this PR does / why we need it**: It adds a test for PetSet status replica count. It should fail now, but will pass when https://github.com/kubernetes/kubernetes/pull/32117 is merged.

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

**Special notes for your reviewer**: It will need to be rebased after #32117 is merged in, don't need detailed review before that.

**Release note**:
```release-note
NONE
```

Added fakeKubeClient and other fake types needed to test what is sent to
API when replica count is updated. These fakes can be extended for
other tests.
2016-09-29 23:37:18 -07:00
Kubernetes Submit Queue
a180864173 Merge pull request #33709 from yifan-gu/add_dns_opt
Automatic merge from submit-queue

CRI: Add dns option, rename DNSOption to DNSConfig.

Today, the DNS opt string is hardcoded in multiple places [[1]](https://github.com/kubernetes/kubernetes/blob/v1.5.0-alpha.0/pkg/kubelet/rkt/rkt.go#L117) [[2]](https://github.com/kubernetes/kubernetes/blob/v1.5.0-alpha.0/pkg/kubelet/dockertools/docker_manager.go#L88), we'd probably move the default to kubelet, and pass down to runtimes.

/cc @kubernetes/sig-node @kubernetes/sig-rktnetes @feiskyer @thockin
2016-09-29 22:59:27 -07:00
Kubernetes Submit Queue
8f918d361b Merge pull request #33809 from Random-Liu/fix-mount-issue-in-dockershim
Automatic merge from submit-queue

CRI: Fix mount issue in dockershim.

For https://github.com/kubernetes/kubernetes/issues/33189.

The test `Container Runtime Conformance Test container runtime conformance blackbox test when starting a container that exits should report termination message if TerminationMessagePath is set` flakes a lot. (see https://k8s-testgrid.appspot.com/google-node#kubelet-cri-gce-e2e&width=5)

After some investigation, I found the problem is that we are using pointer of iterator.

This fixes the flake.

@yujuhong @feiskyer
2016-09-29 21:44:07 -07:00
Timothy St. Clair
4a9f72b59f Abstraction of endpoints in leaderelection code 2016-09-29 23:42:00 -05:00
Random-Liu
e2a994a4d1 Add fake attach support in CRI. 2016-09-29 21:29:07 -07:00
Pengfei Ni
dd14f6368a Fake docker portfoward for in-process docker CRI integration 2016-09-30 11:30:45 +08:00