Commit Graph

1817 Commits (75543311852b06167a62213fc74bf72ab407e66a)

Author SHA1 Message Date
Tim St. Clair 52ece0c34e Refactor readiness probing
Each container with a readiness has an individual go-routine which
handles periodic probing for that container. The results are cached, and
written to the status.Manager in the pod sync path.
2015-10-02 15:37:10 -07:00
k8s-merge-robot 13382b30c4 Merge pull request #14950 from yujuhong/sync_type
Auto commit by PR queue bot
2015-10-02 12:39:00 -07:00
k8s-merge-robot 1d73382b83 Merge pull request #14958 from madhusudancs/fix-kubelet-messages
Auto commit by PR queue bot
2015-10-02 11:55:42 -07:00
k8s-merge-robot 6ca515c312 Merge pull request #14820 from gmarek/playground
Auto commit by PR queue bot
2015-10-02 07:37:45 -07:00
k8s-merge-robot 1bcdd56cf3 Merge pull request #12283 from ncdc/gh8766-port-forward-not-closing-correctly
Auto commit by PR queue bot
2015-10-02 04:48:12 -07:00
k8s-merge-robot 1b158fc466 Merge pull request #14706 from yifan-gu/rkt_get_status
Auto commit by PR queue bot
2015-10-02 02:25:44 -07:00
Madhusudan.C.S 7a709b09c3 Messages should be appended to "messages" slice.
Network configuration error message while setting Kubelet status was
being written to "reasons" slice. Write this message to "messages" slice
instead.

Also remove "reasons" slice entirely since it is not used anywhere.
2015-10-01 17:55:45 -07:00
Yu-Ju Hong 889e798ddb kubelet: pipe SyncPodType to pod workers
Now that kubelet has switched to incremental updates, it has complete
information of the pod update type (create, update, sync). This change pipes
this information to pod workers so that they don't have to derive the type
again.
2015-10-01 16:29:46 -07:00
Brendan Burns 2afddde027 Deflake an exec test by removing global paths and making conflicts impossible 2015-10-01 16:16:06 -07:00
k8s-merge-robot b19837f4e2 Merge pull request #14767 from nikhiljindal/podConditionTransitionTime
Auto commit by PR queue bot
2015-10-01 13:01:45 -07:00
gmarek fc79ce347e Allow usining FakeOOMAdjuster in Kubelet 2015-10-01 10:55:08 +02:00
Andy Goldstein ed021fed4c Port forwarding fixes
Correct port-forward data copying logic so that the server closes its
half of the data stream when socat exits, and the client closes its half
of the data stream when it finishes writing.

Modify the client to wait for both copies (client->server,
server->client) to finish before it unblocks.

Fix race condition in the Kubelet's handling of incoming port forward
streams. Have the client generate a connectionID header to be used to
associate the error and data streams for a single connection, instead of
assuming that streams n and n+1 go together. Attempt to generate a
pseudo connectionID in the server in the event the connectionID header
isn't present (older clients); this is a best-effort approach that only
really works with 1 connection at a time, whereas multiple concurrent
connections will only work reliably with a newer client that is
generating connectionID.
2015-09-30 20:03:49 -04:00
Tim Hockin 5fbcb72241 Merge pull request #14525 from dcbw/cni
CNI network plugin
2015-09-29 21:13:26 -07:00
Brendan Burns 5711f6d6e5 Merge pull request #14564 from erictune/fix-mac-test-2
Fix "make test" on mac (pkg/kubelet)
2015-09-29 19:29:35 -07:00
k8s-merge-robot b661cfd21e Merge pull request #14643 from liguangbo/change_Oom_to_OOM
Auto commit by PR queue bot
2015-09-29 18:54:22 -07:00
nikhiljindal b99d225d19 Setting PodReadyCondition.LastTransitionTime 2015-09-29 17:23:32 -07:00
Dawn Chen ca3ae476fc Merge pull request #14599 from feiskyer/kubelet/client-server/image-refator
Refactor image manager for client/server container runtime
2015-09-29 09:33:59 -07:00
Yifan Gu 4309cafff1 rkt: return non error if the pod doesn't exist in GetPodStatus().
Previously, GetPodStatus() will return error if the pod is never
created. However we've never seen the sync loop fail because in the
beginning of the loop, if the pod is not found, it will be created.

This works fine except the pod that keeps crashing. Because the above
logic will keep restarting the pod as if it's never created.

This PR fixes the bug.
2015-09-28 19:30:57 -07:00
liguangbo 12299087da Change Oom to OOM 2015-09-28 18:18:04 +08:00
Rajat Chopra 01dd813ce3 CNI network plugin
Add an experimental network plugin implementation named "cni" that
uses the Container Networking Interface (CNI) specification for
configuring networking for pods.

https://github.com/appc/cni/blob/master/SPEC.md
2015-09-25 22:30:37 -05:00
feisky d25ae52d9b Refactor image manager for client/server implementation of the container runtime 2015-09-26 08:29:08 +08:00
Yu-Ju Hong d6aea667ba Remove ContainerList from fakeRuntime
Container runtime interface currently doesn't support GetContainers and no
test should be using fakeRuntime.ContainerList. Remove it to prevent accidental
use.
2015-09-25 16:36:51 -07:00
Brian Grant efd19143f7 Revert "Refactor image manager for client/server implementation of the container runtime" 2015-09-25 15:24:18 -07:00
Brian Grant 2c92672827 Merge pull request #14227 from gmarek/fake_docker
Fix 'ContainersMap' feature in fake-docker-client.
2015-09-25 13:20:33 -07:00
Brian Grant bbc90cd9ff Merge pull request #14035 from feiskyer/kubelet/client/server
Refactor image manager for client/server implementation of the container runtime
2015-09-25 13:18:53 -07:00
Eric Tune f44e390ec2 Fix "make test" on mac (pkg/kubelet) 2015-09-25 09:26:08 -07:00
Salvatore Dario Minonne 32f56619a7 Partial fix for issue #14263 2015-09-25 15:29:00 +02:00
Brian Grant bd3a3f1443 Revert "cni network plugin" 2015-09-24 23:24:21 -07:00
Brian Grant 7e42781d40 Merge pull request #14395 from vishh/kubelet-init
Require cpu and memory cgroups to be mounted
2015-09-24 22:43:25 -07:00
Brian Grant 17ecefe9f7 Merge pull request #13766 from rajatchopra/cni
cni network plugin
2015-09-24 22:42:31 -07:00
Vishnu kannan 77be271ed0 Linux container manager initialization will now fail if cpu and memory cgroups are not mounted. 2015-09-24 15:34:42 -07:00
Eric Tune 1ffa7cbc4f Merge pull request #14290 from sdodson/container-inspect-ll4
Bump Container Inspect to loglevel 4
2015-09-23 16:42:07 -07:00
Eric Tune c9c5937050 Merge pull request #14435 from yujuhong/runonce_test
Replace testDocker with container.fakeRuntime in runonce_test
2015-09-23 16:22:34 -07:00
Eric Tune de38de0c1a Merge pull request #14064 from brendandburns/flakes
Increase a bunch of timeouts to reduce flakes
2015-09-23 12:56:27 -07:00
Brendan Burns 77fd388485 Increase a bunch of timeouts to reduce flakes 2015-09-23 11:09:03 -07:00
Yu-Ju Hong 8319a5c822 Replace testDocker with container.fakeRuntime in runonce_test
runonce_test should not be testing docker-specific logic.
2015-09-23 09:24:51 -07:00
Rajat Chopra fef621a254 TODO added to optimize Status call to plugin 2015-09-23 09:19:31 -07:00
gmarek 66ca7fcc92 Functionally revert #12894 2015-09-23 12:15:38 +02:00
gmarek 0a3f7787e7 Fix 'ContainersMap' feature in fake-docker-client. 2015-09-23 09:08:18 +02:00
Eric Tune f92da0c714 Merge pull request #14323 from brendandburns/flakes2
Fix a flake in the kubelet test.
2015-09-22 13:36:22 -07:00
Rajat Chopra 4dc7485d94 cni network plugin 2015-09-22 11:16:41 -07:00
k8s-merge-robot e535e27e82 Merge pull request #14279 from pweil-/ipc-followup
Auto commit by PR queue bot
2015-09-22 07:28:07 -07:00
Dawn Chen a010e91913 Merge pull request #14292 from yujuhong/revert_node
Revert node status manager
2015-09-21 23:13:18 -07:00
k8s-merge-robot c96c76b729 Merge pull request #13780 from smarterclayton/pod_logs
Auto commit by PR queue bot
2015-09-21 17:02:47 -07:00
Brendan Burns e845c6a4e6 Fix a flake in the kubelet test. 2015-09-21 16:45:21 -07:00
Clayton Coleman c2e90cd154 Support extended pod logging options
Increase the supported controls on pod logging. Add validaiton to pod
log options. Ensure the Kubelet is using a consistent, structured way to
process pod log arguments.

Add ?sinceSeconds=<durationInSeconds>, &sinceTime=<RFC3339>, ?timestamps=<bool>,
?tailLines=<number>, and ?limitBytes=<number>
2015-09-21 15:39:32 -04:00
Yu-Ju Hong 077158ef86 Rebase to use unversioned api 2015-09-21 11:14:14 -07:00
Yu-Ju Hong cadc279505 Revert "kubelet: move all node status related methods to a separate file"
This reverts commit e7d1e47f31.
2015-09-21 11:06:38 -07:00
Yu-Ju Hong d7b9f8905f Revert "Move node information retreival to nodeManager"
This reverts commit 2369cd6401.
2015-09-21 11:00:04 -07:00
Yu-Ju Hong 7bdf9bfdfa Revert "Move and fix nodeManager related unit tests"
This reverts commit 865dc19957.
2015-09-21 10:58:54 -07:00
Scott Dodson 5de183cce7 Bump Container Inspect to loglevel 4 2015-09-21 13:28:43 -04:00
Paul Weil 20361e33f2 use infra container ns for ipc 2015-09-21 12:47:19 -04:00
k8s-merge-robot 843134885e Merge pull request #12470 from simon3z/add-host-ipc
Auto commit by PR queue bot
2015-09-21 09:15:01 -07:00
Quinton Hoole 851e3c1c24 Merge pull request #14218 from kubernetes/revert-13417-kubelet_tolerates_dead_cloud_api
Revert "Update node status even if cloudprovider API dies"
2015-09-18 19:01:41 -07:00
k8s-merge-robot 5d67c2ce1f Merge pull request #12894 from nikhiljindal/PodCondition
Auto commit by PR queue bot
2015-09-18 18:59:51 -07:00
Tim Hockin 6df2139d5a Revert "Update node status even if cloudprovider API dies" 2015-09-18 17:44:24 -07:00
k8s-merge-robot 8d7038eef0 Merge pull request #13825 from rootfs/path_len
Auto commit by PR queue bot
2015-09-18 14:44:33 -07:00
Tim Hockin 9698e957a6 Merge pull request #12717 from tamnd/fixdockercfg
Fix new docker config format for private registries
2015-09-18 14:43:38 -07:00
Federico Simoncelli f21d9ac9e4 Support pods with containers using host ipc
Add a HostIPC field to the Pod Spec to create containers sharing
the same ipc of the host.

This feature must be explicitly enabled in apiserver using the
option host-ipc-sources.

Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-09-18 21:13:39 +02:00
Huamin Chen 29bd6e738d review feedback
Signed-off-by: Huamin Chen <hchen@redhat.com>
2015-09-18 10:50:30 -04:00
Jonathan Wills ad085f78fe If an isolator's request is nil, populate it with the limit and vice versa.
The appc spec isn't currently clear about if both fields are required, and before rkt v0.8.1 if either field
was nil it would result in a crash.  Currently rkt will ignore isolators that don't have both fields set, so
I think this is a reasonable approach to making sure isolators are actually used.
2015-09-18 09:51:32 -04:00
nikhiljindal 6523ec142b Adding more fields to PodCondition 2015-09-18 05:26:13 -07:00
k8s-merge-robot 1a88be1aef Merge pull request #13417 from jfoy/kubelet_tolerates_dead_cloud_api
Auto commit by PR queue bot
2015-09-18 00:56:38 -07:00
k8s-merge-robot 73d71d6a67 Merge pull request #14096 from mvdan/util-duration
Auto commit by PR queue bot
2015-09-18 00:20:43 -07:00
Nikhil Jindal 9e5ed1dc69 Merge pull request #13880 from yujuhong/fix_annotations
Fix source annotation in kubelet
2015-09-17 23:28:41 -07:00
Daniel Martí 586cb9126a Move pkg/util.Time to pkg/api/unversioned.Time
Along with our time.Duration wrapper, as suggested by @lavalamp.
2015-09-17 17:51:27 -07:00
Tim St. Clair 1d0577286f Move the prober test from the docker manager_test.go to prober_test.go 2015-09-17 17:04:20 -07:00
Alex Mohr bdfd469a85 Merge pull request #14137 from caesarxuchao/13823
rebase 13823
2015-09-17 15:25:52 -07:00
Jack Foy ab9b53bdab Update node status even if cloudprovider API dies
kubelet will log errors when the cloudprovider API is unavailable, but
will continue to persist node updates using last-known addresses.

Without this change, all nodes are marked as NotReady, and eventually
controller-manager evicts all pods.
2015-09-17 15:16:18 -07:00
k8s-merge-robot c1eb1a1b2f Merge pull request #13791 from fgrzadkowski/fix_secrets_in_docker
Auto commit by PR queue bot
2015-09-17 15:13:29 -07:00
k8s-merge-robot 0749339357 Merge pull request #14045 from jiangyaoguo/add-message-for-reason-cache
Auto commit by PR queue bot
2015-09-17 14:54:47 -07:00
Kris f4ad00d9ae Moving Status object to a common package 2015-09-17 14:09:53 -07:00
k8s-merge-robot 7cee028497 Merge pull request #13778 from smarterclayton/unready_endpoints
Auto commit by PR queue bot
2015-09-17 11:36:17 -07:00
k8s-merge-robot 7f68b9bc80 Merge pull request #14090 from yujuhong/node_status
Auto commit by PR queue bot
2015-09-17 11:14:11 -07:00
jiangyaoguo 0d1ca62530 Add message to reason cache in kubelet 2015-09-18 01:19:04 +08:00
feisky f1124eb0b1 Refactor image manager to operate on Runtime 2015-09-17 23:02:00 +08:00
Filip Grzadkowski 7fe34f2050 Introduce nsenter writer for volume plugins 2015-09-17 16:40:29 +02:00
Huamin Chen ad308cdf45 review feedback: remove RemoveAllSkipMountPoints since ReadDirNoExit already filters bad mountpoints
Signed-off-by: Huamin Chen <hchen@redhat.com>
2015-09-17 10:04:06 -04:00
Clayton Coleman bf2decce81 Add NotReadyAddresses to Endpoints
In many cases clients may wish to view not ready addresses for endpoints
in order to do set membership prior to a pod being ready. For instance,
a pod that uses the service endpoints to connect to other pods under
the same service, but does not want to signal ready before it has
contacted at least a minimal number of other pods.

This is backwards compatible with old servers and clients. There is
an additional cost in size of endpoints before services ramp up, which
will add minor CPU and memory use for services that have a significant
number of pods which have not become ready.
2015-09-17 09:41:56 -04:00
feihujiang 51f59f3c78 Fix the wrong path of document 2015-09-17 20:38:08 +08:00
k8s-merge-robot 445fde3dc5 Merge pull request #13447 from pweil-/pid-mode
Auto commit by PR queue bot
2015-09-16 23:34:35 -07:00
k8s-merge-robot d680ea2444 Merge pull request #13542 from yujuhong/backoff_restarts
Auto commit by PR queue bot
2015-09-16 23:11:42 -07:00
k8s-merge-robot d5a6466349 Merge pull request #14056 from yifan-gu/rkt_image
Auto commit by PR queue bot
2015-09-16 20:52:20 -07:00
k8s-merge-robot 2da93a48b1 Merge pull request #13864 from feiskyer/logs-follow
Auto commit by PR queue bot
2015-09-16 19:27:44 -07:00
Yu-Ju Hong 865dc19957 Move and fix nodeManager related unit tests 2015-09-16 17:41:40 -07:00
Yu-Ju Hong 2369cd6401 Move node information retreival to nodeManager
nodeManager should handle most node object interaction with apiserver. This
moves exsiting node-watching and GetNodes() methods to nodeManager.
2015-09-16 17:17:42 -07:00
Yu-Ju Hong e7d1e47f31 kubelet: move all node status related methods to a separate file
The methods for registering a node and syncing node status to the apiserver
have grown large enough that it makes sense for them to live in a separate
place. This change adds a nodeManager to handle such interaction with the
apiserver.
2015-09-16 17:17:42 -07:00
k8s-merge-robot 4c46bc3243 Merge pull request #13989 from yujuhong/sync_first
Auto commit by PR queue bot
2015-09-16 17:16:23 -07:00
Yifan Gu ad33db1a84 kubelet/rkt: bump rkt version for rkt image list fix. 2015-09-16 11:31:59 -07:00
k8s-merge-robot 22f698f5b0 Merge pull request #13953 from liguangbo/change_iff_to_if_and_only_if
Auto commit by PR queue bot
2015-09-16 08:35:20 -07:00
feisky 800e8fb54c Fix kubelet logs --follow bug 2015-09-16 22:06:50 +08:00
liguangbo 4df68f03a3 change iff to if and only if to improve annotation readability 2015-09-16 08:29:36 +00:00
k8s-merge-robot f6fb0a58b6 Merge pull request #13874 from timstclair/status-manager
Auto commit by PR queue bot
2015-09-16 00:46:01 -07:00
Jeff Lowdermilk a92c8b6886 Merge pull request #13384 from ZJU-SEL/portsbindings
Allow multiple host ports map to the same container port
2015-09-15 17:57:57 -07:00
Yu-Ju Hong 8f8541b4cd kubelet: make sure sync loop is run before performing housekeeping
Otherwise, kubelet may kill the existing pods before having a chance to update
the desired pods.
2015-09-15 13:11:55 -07:00
gmarek 4b8ddf3d7e Add information about ports opened by Kubelet to API 2015-09-15 14:24:55 -04:00
Paul Weil ed80c2b940 pid mode 2015-09-15 13:51:44 -04:00
k8s-merge-robot 27e8a11378 Merge pull request #13916 from tmrts/refactor/iota
Auto commit by PR queue bot
2015-09-14 21:11:58 -07:00
k8s-merge-robot 8189460809 Merge pull request #13844 from tummychow/label-deps-2
Auto commit by PR queue bot
2015-09-14 12:56:24 -07:00
Huamin Chen 45d4f7d6c2 Opening Pod volume dir could fail if for instance the directory has stale handle or directory is busy.
In such case, don't exit if the directory cannot be opened.

Signed-off-by: Huamin Chen <hchen@redhat.com>
2015-09-14 14:43:44 -04:00