Yifan Gu
dda600e45c
kubelet/dockertools: Add puller interfaces in the containerManager.
2015-04-13 15:34:22 -07:00
Yifan Gu
a3675e08f2
kubelet/dockertool: Move Getpods() to DockerManager.
2015-04-13 14:05:22 -07:00
Xiang Li
cef744ecaa
pkg/kubelet: move the capabilities related code to util.go
2015-04-11 12:09:11 -07:00
Tobi Knaup
3932dfd8bb
Log an error when update channel is closed.
2015-04-10 17:30:04 -07:00
Dawn Chen
fff6cebb5f
Merge pull request #6711 from yujuhong/container_status
...
Kubelet: surface the container creation/start failure reason
2015-04-10 17:19:32 -07:00
Yu-Ju Hong
bb417e82d7
Kubelet: surface the container creation/start failure reason
...
Container creation/start failure cannot be reproduced by inspecting the
containers. This change caches such errors so that kubelet can retrieve it
later.
This change also extends FakeDockerClient to support setting error response
for a specific function.
2015-04-10 16:02:27 -07:00
Daniel Smith
e2093798cb
Merge pull request #6675 from wojtek-t/nodes_support_field_selector
...
FieldSelector for node List()
2015-04-10 10:30:55 -07:00
Victor Marmol
1563a7636a
Merge pull request #6652 from dchen1107/podstatus
...
Populate last terminated container information
2015-04-10 09:21:58 -07:00
Wojciech Tyczynski
88eb0b0295
FieldSelector for node List()
2015-04-10 12:53:16 +02:00
Dawn Chen
563f2965ba
Populate last terminated container information
2015-04-09 16:10:13 -07:00
Daniel Smith
629d94657e
Merge pull request #6624 from gmarek/status_to_subresource
...
Update NodeStatus use subresources.
2015-04-09 16:00:15 -07:00
Victor Marmol
40acaef454
Merge pull request #6607 from yujuhong/mirror_update
...
Kubelet: recreate mirror pod if the static pod changes
2015-04-09 10:29:55 -07:00
Yifan Gu
b868f421e0
kubelet: Move pod infra container image setting to dockertools.
2015-04-09 09:53:07 -07:00
gmarek
ccc56d3c3c
Update NodeStatus use subresources.
2015-04-09 14:07:40 +02:00
Yu-Ju Hong
d7cf294c99
Kubelet: recreate mirror pod if the static pod changes
...
If a static pod changes, delete the corresponding mirror pod. When kubelet
could not see mirror pod from the API server update, it'd attemp to create a
new mirror pod with up-to-date specs.
2015-04-08 18:06:21 -07:00
Vish Kannan
43949b41d4
Merge pull request #6586 from dchen1107/podstatus
...
small cleanup by removing useless generatePodStatus
2015-04-08 14:59:23 -07:00
Tobi Knaup
3efff6d4e8
kubelet syncloop should stop if/when updates chan closes
2015-04-08 14:45:16 -07:00
Dawn Chen
914616a195
Merge pull request #6592 from vishh/kubelet_logging
...
Improve kubelet logging around startup.
2015-04-08 14:35:53 -07:00
David Oppenheimer
4ffc2aad21
Merge pull request #6146 from kazegusuri/node_client_label
...
List in NodesInterface takes label selector
2015-04-08 14:22:53 -07:00
Vishnu Kannan
2b5cad6acf
Improve kubelet logging around startup. This might help detect any lockup issues during startup.
2015-04-08 21:02:15 +00:00
Dawn Chen
b6d846aea5
small cleanup by removing useless generatePodStatus
2015-04-08 13:38:06 -07:00
Yifan Gu
4b945e7218
kubelet: Remove GetRecentDockerContainersWithNameAndUUID().
...
Add unit tests to test the restart behaviour under different
restart policy.
2015-04-08 09:44:23 -07:00
Yifan Gu
ddf323ee00
kubelet: Remove GetRecentDockerContainersWithNameAndUUID().
...
Always call GetPodStatus().
2015-04-08 09:44:23 -07:00
Yifan Gu
6103b144e0
kubelet: Remove GetRecentDockerContainersWithNameAndUUID().
...
Use the pod status to get the recent stopped containers in
shouldContainerBeRestarted().
2015-04-08 09:44:23 -07:00
Masahiro Sano
d04cc5ced4
List in NodesInterface takes label selector
2015-04-08 23:41:27 +09:00
gmarek
72182735b9
Remove Node Controllers ability to pull status from Kubelet
2015-04-08 09:44:42 +02:00
Daniel Smith
c1390a0836
version field selector field names in the client
2015-04-07 16:59:57 -07:00
Quinton Hoole
c670071e87
Revert "kubelet: Remove GetRecentDockerContainersWithNameAndUUID."
2015-04-07 14:25:10 -07:00
David Oppenheimer
402bf60366
Merge pull request #6214 from gmarek/move_consts_to_flags
...
Move NodeController constants to flags
2015-04-07 11:31:11 -07:00
gmarek
321a81047c
Move NodeController constants to flags
2015-04-07 12:33:03 +02:00
Yifan Gu
ba1ad9fad2
kubelet: Refactor RunInContainer/ExecInContainer/PortForward.
...
Replace GetKubeletDockerContainers() with findContainer().
2015-04-06 17:14:46 -07:00
Victor Marmol
7716804a0d
Merge pull request #6470 from yifan-gu/get_recent
...
kubelet: Remove GetRecentDockerContainersWithNameAndUUID.
2015-04-06 14:25:59 -07:00
Yifan Gu
a8c02412b2
kubelet: Remove GetRecentDockerContainersWithNameAndUUID().
...
Use the pod status to get the recent stopped containers in
shouldContainerBeRestarted().
2015-04-06 12:43:49 -07:00
James DeFelice
d194af6b4f
allow for more easily customized kubelet creation and initialization
2015-04-06 18:51:42 +00:00
Yu-Ju Hong
0e1bd18b3e
Fix the kubelet node watch
2015-04-04 09:59:39 -07:00
Dawn Chen
67c1678e7e
Merge pull request #6378 from yujuhong/docker_manager
...
RFC: Kubelet: a step towards to better encapsulation of docker functions
2015-04-02 14:22:26 -07:00
Yu-Ju Hong
d01bc660b5
Kubelet: a step towards to better encapsulation of docker functions
...
We want to stop leaking more docker details into kubelet, and we also want to
consolidate some of the existing docker interfaces/structs. This change creates
DockerManager as the new home of some functions in dockertools/docker.go. It
also absorbs containerRunner. In addition, GetDockerPodStatus is renamed to
GetPodStatus with the entire pod passed to it so that it is simialr to the what
is defined in the container Runtime interface.
Eventually, DockerManager should implement the container Runtime interface, and
integrate DockerCache with a flag to turn on/off caching. Code in kubelet.go
should not be using docker client directly.
2015-04-02 13:26:39 -07:00
Brian Grant
414be101b6
Merge pull request #6352 from piosz/api
...
Removed PodStatus.Host
2015-04-02 13:16:24 -07:00
Wojciech Tyczynski
6b08958264
Kubelet watching only its own Node
2015-04-02 18:39:59 +02:00
Piotr Szczesniak
5c6439d449
Removed PodStatus.Host
...
Fixes #6165
2015-04-02 16:38:45 +02:00
Dawn Chen
db28ca67f6
Using gcr.io/google_containers/pause by default
2015-04-01 14:59:44 -07:00
Kris Rousey
6904c4d585
Fixing a lot of string formatting issues with regards to:
...
* Improper format specifier (e.g. %s for bools or %s for ints)
* More or less parameters than format specifiers
* Not calling a formatting function when it should have (e.g. Error() instead of Errorf())
2015-03-31 16:47:10 -07:00
Victor Marmol
9bbf0b1546
Merge pull request #6100 from pmorie/entrypoint
...
Add control over container entrypoint
2015-03-31 09:58:40 -07:00
Victor Marmol
d6d370d8ae
Merge pull request #6211 from dchen1107/docker
...
publish node components version information
2015-03-31 09:47:08 -07:00
Dawn Chen
5b9a6d47e8
publish node components version information
2015-03-31 09:32:29 -07:00
Paul Morie
7628b37d78
Add control over container entrypoint
2015-03-31 12:32:03 -04:00
Victor Marmol
de35c8f2af
Record event when image GC fails.
2015-03-30 10:32:51 -07:00
Federico Simoncelli
0e60374346
nodes: record an event on NodeReady changes
...
Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-03-30 12:01:09 -04:00
Federico Simoncelli
fe2d1f6762
node: move the reboot detection logic to kubelet
...
Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-03-30 09:33:07 -04:00
Federico Simoncelli
604e0ad328
kubelet: move getNodeReference logic into a function
...
Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-03-30 09:33:00 -04:00
Yu-Ju Hong
372c5c9f3a
Kubelet: set host field in the pending pod status
...
Otherwise, the apiserver would reject the update.
2015-03-27 17:26:47 -07:00
Victor Marmol
e4fc45c26f
Merge pull request #6054 from fgrzadkowski/fix_pod_status
...
Do not fail pod status update if failed to get host IP
2015-03-27 09:10:44 -07:00
Victor Marmol
4ed3346587
Merge pull request #6039 from yifan-gu/readiness
...
kubelet: Add container readiness manager.
2015-03-27 09:04:00 -07:00
Filip Grzadkowski
fe2f7f25c6
Do not fail if failed to get host IP
2015-03-27 14:15:41 +01:00
Yifan Gu
6fecda710c
kubelet: Add container readiness manager.
...
Move the readiness managing logic into pkg/kubelet/container package
to facilitate the pluggable container runtime.
2015-03-26 18:45:23 -07:00
Vish Kannan
f2c7dda6da
Merge pull request #6026 from dchen1107/clean
...
kubectl describe nodes id reports related events
2015-03-26 17:39:21 -07:00
Dawn Chen
f662d7d11c
Kubelet reports node related events with empty namespace for now.
2015-03-26 16:30:23 -07:00
Yifan Gu
5f08555f45
kubelet: Refactor kubelet.runContainer.
...
Push the run container logic into container runtime.
2015-03-26 13:43:45 -07:00
Victor Marmol
1cad0df268
Merge pull request #6004 from yifan-gu/ref_manager
...
kubelet: Move container reference manager to pkg/kubelet/container.
2015-03-26 13:04:34 -07:00
Brian Grant
3b0db99692
Merge pull request #5915 from piosz/api
...
Changed PodInfo to be a list
2015-03-26 12:46:50 -07:00
Yifan Gu
9f62b929b8
kubelet: Move container reference manager to pkg/kubelet/container.
...
This enables other package to use it, such as docktools.
2015-03-26 11:53:44 -07:00
Victor Marmol
a59e5f8995
Refactor pod killing to be done in a single killPod().
2015-03-26 11:25:48 -07:00
Victor Marmol
106cc037ee
Merge pull request #5995 from ArtfulCoder/pause_no_port_forward_for_net_host
...
Kill running Pod running with -net=true if kubelet does not allow it
2015-03-26 11:03:58 -07:00
Victor Marmol
d2ea1a793b
Merge pull request #5982 from yifan-gu/ref_manager
...
kubelet: Add container reference manager.
2015-03-26 10:20:13 -07:00
Abhishek Shah
5c42070eeb
Kill running Pod running with -net=true if kubelet does not allow it
2015-03-26 10:13:06 -07:00
Yifan Gu
a06bc96414
kubelet: Add container reference manager.
...
Move the reference managing logic into container reference manager.
This enables pluggable container runtime to manage the container references.
2015-03-26 09:50:54 -07:00
gmarek
5a11748018
Move Capacity from NodeSpec to NodeStatus
2015-03-26 15:28:48 +01:00
Piotr Szczesniak
31901ed9d0
Changed PodInfo to be a list
...
This change is to make API consistent with our convention.
Fixes #3622
2015-03-26 10:15:25 +01:00
Abhishek Shah
cd5ed38250
Stop port forwarding from pause in net=host mode
2015-03-25 17:55:37 -07:00
Federico Simoncelli
afbf401464
nodeinfo: add boot id system information
...
Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-03-25 15:06:53 -04:00
Victor Marmol
cf7e2756b5
Add HostNetworkSources capability to limit use of HostNetwork.
2015-03-25 11:23:06 -07:00
Victor Marmol
d9cd7a78f7
Allow starting a container with --net=host.
2015-03-25 11:22:03 -07:00
Victor Marmol
5eb373692b
Merge pull request #5928 from yujuhong/pod_status
...
Kubelet: pass the acutal pod for status update
2015-03-25 10:51:32 -07:00
Victor Marmol
f7135b3dd4
Merge pull request #5827 from spothanis/master
...
added cloud provider flag to kubelet
2015-03-25 10:50:18 -07:00
Yu-Ju Hong
b4b0bc75c4
Kubelet: pass the acutal pod for status update
...
Pod status update should include the ObjectMeta of the pod. This change is
required for #5738 to merge.
2015-03-25 09:58:46 -07:00
Filip Grzadkowski
74da3b14b0
Delete pod_cache and rely on updating pod status by kublet.
2015-03-25 15:08:09 +01:00
Sreekanth Pothanis
1c06cde4c4
added cloud provider flag to kubelet
...
This is to fix issue #5667
2015-03-24 19:32:50 -07:00
Yifan Gu
31bb11ac2a
kubelet: Move pod name helpers to pkg/kubelet/container/runtime.go
2015-03-24 16:08:04 -07:00
Yifan Gu
13250c904f
kubelet: Replace GetKubeletDockerContainers with GetPods in syncPod/SyncPods.
2015-03-24 16:01:38 -07:00
David Oppenheimer
30c3583900
Merge pull request #5806 from ddysher/condition-rename
...
Rename ConditionFull->ConditionTrue, ConditionNone->ConditionFalse
2015-03-24 15:50:11 -07:00
Victor Marmol
270c850b3b
Merge pull request #5826 from yujuhong/pod_manager
...
Kubelet: refactor pod manager
2015-03-24 15:33:54 -07:00
Yu-Ju Hong
08e4a883b6
Kubelet: refactor pod manager
...
This change cleans up the pod manager extensively so that
* Mirror pods are actually stored in the pod manager.
* Both (non-mirror) pods and mirror pods are indexed by UID and full name for
easy lookup and mapping. This is required for the next change to send
full pod along with the pod status update.
This change also renames mirrorManager as mirrorClient since it is merely a
client to contact the API server and create/delete mirror pods.
2015-03-24 15:10:26 -07:00
Deyuan Deng
ca68f4a9d1
Rename ConditionFull->ConditionTrue, ConditionNone->ConditionFalse
2015-03-24 17:28:59 -04:00
David Oppenheimer
c1730989cb
Merge pull request #5870 from dchen1107/podstatus
...
Fix a bug of running node selector predicate on kubelet introduced by #5...
2015-03-24 14:05:27 -07:00
Dawn Chen
e2e1d9e943
Fix a bug of running node selector predicate on kubelet introduced by #5715 .
...
part of #5207 , and fixed #5810
2015-03-24 13:13:25 -07:00
Deyuan Deng
c5675b8924
Use fake time in nodecontroller unittest; rename receiver 's' to 'nc'
2015-03-24 14:23:48 -04:00
Deyuan Deng
b51d491f05
Delete all pods based on condition transition time.
2015-03-24 14:23:48 -04:00
Deyuan Deng
cf548765c9
Change kubelet update frequency to 2s, and make it a constant.
2015-03-24 14:23:48 -04:00
Filip Grzadkowski
632ca506ce
* Update pod status only when it changes.
...
* Refactor syncing logic into a separate struct
2015-03-24 16:41:00 +01:00
Victor Marmol
07f928be64
Cap container hostname length to 63 chars.
...
Fixes #5829 .
2015-03-23 19:36:45 -07:00
Yu-Ju Hong
f440989017
Kubelet: add podManager for managing internal pod storage
...
This change moves pod array and mirrorPods into podManager, along with all
methods accessing these internal pod storages. This is the first step of the
refactoring, and no function change is involved.
2015-03-23 15:11:10 -07:00
Saad Ali
e8f70428fb
Merge pull request #5715 from jszczepkowski/kubelet-nodesel
...
Running node selector predicate on kubelet.
2015-03-23 11:06:00 -07:00
Jerzy Szczepkowski
34a8a3a844
Running node selector predicate on kubelet.
...
Added checking on kubelet if scheduled pods have matching node selector. This is the last step to fix #5207 .
2015-03-23 08:21:58 +01:00
Nataliia Uvarova
73c2338320
Refactor build/parse dockername. #3511
...
Functions Build/ParseDockerName now work with struct instead of the long
list of arguments. This new struct also was reused in the kubelet.go
instead of auxilary podContainer struct.
2015-03-21 09:09:03 +01:00
Yu-Ju Hong
15e9760bd4
Kubelet: support retrieving stats using UID of mirror pod
...
Kubelet supports retrieving stats for pods/containers with and without UID.
This does not always work for the static pods because users may get the UIDs of
the mirror pods from the API server, and use them to query Kubelet. In this
case, Kubelet would fail to locate the containers due to mismatched UIDs.
This change adds a intenral mirror to static pod UID mapping and teaches all
public-facing functions to perform UID lookup before proceeding. This allows
users to use either mirror or static pod's UID to retrieve stats.
2015-03-20 15:40:49 -07:00
Vish Kannan
f118ca8fb4
Merge pull request #5642 from thockin/volume_multi_plugins
...
Prep for multiple kinds of volume plugins
2015-03-20 15:12:30 -07:00
Tim Hockin
bfadae77e0
Promote volume plugins, prep for persistent vols
...
Move pkg/kubelet/volume/... to pkg/volume/...
Some renames to make the soon-to-come persistent volumes work clearer.
2015-03-20 13:49:40 -07:00
Abhishek Gupta
b0c23c1046
Headless Services: Adding option to specify None for PortalIP
2015-03-20 12:10:03 -07:00
Clayton Coleman
84ab8f7254
Reduce probe logging level
...
Too chatty for normal operation
2015-03-19 23:06:21 -04:00
Yu-Ju Hong
0d0fb5f07b
Kubelet: per-pod workers should avoid grabbing the pod array lock
...
Per-pod worker syncs the pod and container status, and write the pod status in
the pod status cache. Given that it already owns a copy of the pod, it can
bypass the additional pod lookup step completely. This change adds a new
generatePodStatusByPod() method to achieve this. In general, per-pod worker
should avoid accessing the internal pod array completely, as this would may
lead to high contention.
This change also changes the return type of GetPodByFullName to reflect the
name, and consolidates GetPodByFullName() and GetPodByName().
2015-03-19 18:25:41 -07:00