Commit Graph

1107 Commits

Author SHA1 Message Date
Gao Zheng
95f2d1378f change probe.runner to probe.Runner as based 2015-04-30 10:36:38 +08:00
Gao Zheng
74975eff03 Fixes issue #7352
readinessProbe calls livenessProbe.Exec.Command which cause
"invalid memory address or nil pointer dereference".
2015-04-30 10:19:49 +08:00
Yu-Ju Hong
d81ecc58f8 Adapt pod killing and cleanup for generic container runtime
This change removes docker-specifc code in killUnwantedPods. It
also instructs the cleanup code to move away from interacting with
containers directly. They should always deal with the pod-level
abstraction if at all possible.
2015-04-29 16:08:09 -07:00
Yu-Ju Hong
ba1140a54f Merge pull request #7480 from vmarmol/runtime-syncpod
Move ComputePodChanges to the Docker runtime
2015-04-29 16:05:20 -07:00
Victor Marmol
293828c93c Merge pull request #7515 from brendandburns/kubelet
Fix YAML parsing for v1beta3 objects in the kubelet for file/http
2015-04-29 14:31:49 -07:00
Victor Marmol
209b4fcbef Merge pull request #6718 from vishh/sys_oom1
Adding system oom events from kubelet
2015-04-29 14:29:38 -07:00
Victor Marmol
fe4600ba17 Move ComputePodChanges to DockerManager.
This logic is specific to the Docker runtime. This move is the first
step towards making syncPod() runtime-agnostic.
2015-04-29 14:00:37 -07:00
Brendan Burns
48d269e6ab Fix YAML parsing for v1beta3 objects in the kubelet for file/http 2015-04-29 11:38:36 -07:00
Vishnu Kannan
020950fd0f Adding events for system ooms.
Kubelet will continuously watch for system OOMs and generate events whenever it
encounters a system OOM.
2015-04-29 11:19:11 -07:00
Victor Marmol
f38c607285 Move Prober to its own subpackage.
This will allow it to be reused by the runtimes.
2015-04-29 10:11:28 -07:00
Yu-Ju Hong
33b8f487f6 Merge pull request #7449 from vmarmol/runtime-network-plugins
Move network plugin TearDown to DockerManager
2015-04-29 10:09:58 -07:00
Victor Marmol
02231ea75d Merge pull request #7503 from jsafrane/devel/fix-volume-rm
Fixed kubelet deleting data from volumes on stop (#7317).
2015-04-29 10:01:16 -07:00
Victor Marmol
dfadc10fcb Merge pull request #7488 from yifan-gu/get_container_logs
kubelet/container: Add GetContainerLogs to runtime interface.
2015-04-29 08:24:20 -07:00
Victor Marmol
38831237b2 Merge pull request #7477 from yifan-gu/refactor_runonce
kubelet: Refactor isPodRunning() in runonce.go
2015-04-29 08:24:09 -07:00
Jan Safranek
9b9e98a22f Fixed kubelet deleting data from volumes on stop (#7317).
We must not clear the pod directory in killUnwantedPods(), volumes are still
mounted there at this time. There already is cleanupOrphanedPodDirs(),
called later in the SyncPods() sequence, which should remove these pod
directories.
2015-04-29 10:41:19 +02:00
Yifan Gu
fb1c55aa11 kubelet/container: Add GetContainerLogs to runtime interface. 2015-04-28 20:26:16 -07:00
Yifan Gu
ba1389de3c kubelet/container: Update the runtime interface.
Make some of them (RunInContainer, ExecInContainer, etc) to have
same function signatures as current docker and rkt implementation.
2015-04-28 17:55:41 -07:00
Yifan Gu
c848fa447d kubelet: Refactor isPodRunning() in runonce.go
Replace InspectContainer() with generic GetPodStatus().
2015-04-28 17:44:13 -07:00
Victor Marmol
787d42d50b Move network plugin teardown to DockerManager.
This teardown is Docker-specific and will let us also do the setup in
the manager in future cleanups.
2015-04-28 16:58:54 -07:00
Victor Marmol
de0957ccb1 Create Kubelet types package for common shared types. 2015-04-28 16:57:45 -07:00
Vishnu Kannan
820d0f3e83 Adding a 'PastEventf' method to EventRecorder interface. This will be
useful for recording the timestamp of events that happened in the past.
2015-04-28 16:13:29 -07:00
Vishnu Kannan
2f68cddbd2 Adding events API to cadvisor interface. 2015-04-28 16:13:29 -07:00
Dawn Chen
af5d017911 Merge pull request #7386 from vmarmol/rkt-pull-image
Kubelet: Factor out and remove pullImageAndRunContainer
2015-04-28 09:28:16 -07:00
Dawn Chen
1de4c45115 Merge pull request #7401 from vmarmol/rkt-kill-pod
Kubelet: Move killPod() logic to DockerManager's KillPod()
2015-04-28 09:25:12 -07:00
Sam Ghods
5ceebb4a5f Add error message to log of docker error 2015-04-27 21:49:46 -07:00
Dawn Chen
4b79e5a3db Merge pull request #7403 from vmarmol/rkt-deps
Remove DockerPrefix references in Kubelet.
2015-04-27 19:05:43 -07:00
Victor Marmol
6b0db76e85 Move killPod() logic to DockerManager KillPod().
This moved Docker specific logic there and allows it to align with the
runtime API. There is still a pod infra container reference in the
function due to network plugins. We can handle this in the Kubelet since
we'll need to be explicit in stating that the network plugin will not
work in a non-Docker runtime.
2015-04-27 17:15:37 -07:00
Dawn Chen
5ea5fff586 Merge pull request #7391 from vmarmol/rkt-portforward
Add PortForward to runtime API.
2015-04-27 17:10:37 -07:00
Victor Marmol
42a2059a5d Remove DockerPrefix references in Kubelet.
Makes this usage generic and usable by other runtimes.
2015-04-27 15:55:13 -07:00
Victor Marmol
1d6913779b Use kubecontainer.Pod instead of api.Pod in KillPod.
We don't need the full api.Pod and the uses today use kubecontainer.Pod.
2015-04-27 15:36:06 -07:00
Victor Marmol
3082bb291c Remove pullImageAndRunContainer().
Relevant logic is now in shared helpers.
2015-04-27 15:13:11 -07:00
Victor Marmol
b232eef5f7 Move image PullPolicy logic to pullImage().
This will allow us to remove the Docker-specific logic in
pullImageAndRunContainer() and re-use pullImage() in other runtimes.
2015-04-27 15:13:11 -07:00
Dawn Chen
aa487b7cab Merge pull request #7382 from vmarmol/rkt-deps
Move Docker-specific log handling to DockerManager.
2015-04-27 15:10:14 -07:00
Victor Marmol
3a61421711 Add PortForward to runtime API. 2015-04-27 14:56:32 -07:00
Victor Marmol
7404b7019c Move Docker-specific log handling to DockerManager.
Eases the separation of Docker-specific code into the Docker-specific
runtime.
2015-04-27 13:10:10 -07:00
Brian Grant
2648ae86d6 Merge pull request #6739 from pmorie/downward-api
Env var sources / downward API
2015-04-27 12:46:00 -07:00
Paul Morie
7d30f09ebf Add downward API for environment vars 2015-04-27 14:13:11 -04:00
Victor Marmol
0c52f7b6a5 Move CreatePodInfraContainer to DockerManager.
This will allow us to start making it an implementation detail of the
Docker runtime.
2015-04-27 11:07:38 -07:00
Yifan Gu
6c98b9daee kubelet/metrics: Move instrumented_docker.go to dockertools.
This can solve the circular import problem when we move the
kubelet.pullImage to kubelet/metrics or kubelet/container package.
2015-04-24 22:03:11 -07:00
Victor Marmol
d0288f7143 Merge pull request #7301 from yujuhong/no_resurrection
Kubelet: filter out terminated pods in SyncPods
2015-04-24 16:17:06 -07:00
Yu-Ju Hong
b0e6926f67 kubelet: filter out terminated pods in SyncPods
Once a pod reaches a terminated state (whether failed or succeeded), it should
not transit out ever again. Currently, kubelet relies on examining the dead
containers to verify that the container has already been run. This is fine
in most cases, but if the dead containers were garbage collected, kubelet may
falsely concluded that the pod has never been run. It would then try to restart
all the containers.

This change eliminates most of such possibilities by pre-filtering out the pods
in the final states before sending updates to per-pod workers.
2015-04-24 15:28:03 -07:00
Victor Marmol
270d8aec8b Raise cAdvisor stats cache to 2m.
This used to be 60ns which was a bug from when we switched from number
of stats to duration. Seems like the type was silently
converted/ignored.
2015-04-24 14:44:13 -07:00
Brian Grant
60d7bad147 Merge pull request #7128 from nikhiljindal/fixbeta1tests
Removing more references to v1beta1 from pkg/
2015-04-24 11:07:53 -07:00
nikhiljindal
dcc368c781 Removing more references to v1beta1 from pkg/ 2015-04-24 00:45:17 -07:00
Yifan Gu
b5a1b32aa4 kubelet/dockertools: Move RunContainer into container runtime.
Also removed ContainerRunner interface.
2015-04-23 16:40:37 -07:00
Yifan Gu
6ed27d06f7 kubelet: Move KillContainer to container runtime.
Rename KillContainerID(string) with KillContainer(string).
Delete the old KillContainer(*kubecontainer.Container).
2015-04-23 15:44:00 -07:00
David Oppenheimer
8667ebddff Merge pull request #7249 from yifan-gu/generator
kubelet/container: Introduce RunContainerOptionsGenerator.
2015-04-23 14:59:23 -07:00
Dawn Chen
6207c518b3 Merge pull request #7254 from yifan-gu/readiness
kubelet/dockertools: Add readinessManage/containerRefManager to dockerManager.
2015-04-23 14:34:43 -07:00
Yifan Gu
e8d485a3a1 kubelet/dockertools: Add readinessManage/containerRefManager to dockerManager.
This can enable us to move KillContainer() to container runtime.
2015-04-23 14:20:34 -07:00
Yifan Gu
bd7132bc07 kubelet/container: Introduce RunContainerOptionsGenerator.
This interface wraps the kubelet to provide the options for
container runtime to run a container.
2015-04-23 13:55:50 -07:00