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
Dawn Chen
f7831dcd93
Merge pull request #7229 from vmarmol/stats
...
Kubelet: Add /stats/container endpoint for raw containers
2015-04-23 13:43:23 -07:00
Yifan Gu
de6e81fb4a
kubelet/container: Add Pull() and IsImagePresent() to runtime interface.
2015-04-23 11:58:51 -07:00
Victor Marmol
15e2a7fe38
Merge pull request #7200 from yifan-gu/containerID
...
Introduce container ID type.
2015-04-23 11:33:32 -07:00
Yifan Gu
afb9a896cb
Introduce container ID type.
2015-04-23 10:43:27 -07:00
Victor Marmol
c29d328c55
Kubelet: Add /stats/container endpoint.
...
This endpoint exposes container stats for all raw containers on the
machine. The addition is backwards compatible.
2015-04-23 10:38:29 -07:00
Yifan Gu
af1e9f737f
kubelet: Introduce volume manager.
...
The volume manager book-keeps the information for the volume mounts
on the kubelet, so we can avoid passing the volumeMap around.
2015-04-23 10:37:02 -07:00
Victor Marmol
e2f37f81a9
Add SubcontainerInfo() to cAdvisor API.
...
Returns information about a container and its subcontainers.
2015-04-23 10:20:05 -07:00
Dawn Chen
f9156c281a
Merge pull request #7123 from satnam6502/logging
...
Propagate pod and container name for log files
2015-04-23 10:13:08 -07:00
Victor Marmol
de6d5cc165
Add RunInContainer/ExecInContainer to container Runtime API.
2015-04-22 18:09:24 -07:00
Satnam Singh
2444c1f943
Propagate pod and container name for log files
2015-04-22 15:08:51 -07:00
Victor Marmol
45575d95b3
Merge pull request #7177 from yifan-gu/runner
...
kubelet/dockertools: Remove dockerContainerCommandRunner.
2015-04-22 13:24:50 -07:00
Yifan Gu
f59013410a
kubelet/container: Move Prober/HandlerRunner interface to container/helpers.go
...
This enables us to pass them to container runtime as parameters.
2015-04-22 11:56:15 -07:00
Yifan Gu
c55c879ffe
kubelet/dockertools: Remove dockerContainerCommandRunner.
...
Replace with docker manager.
2015-04-22 11:00:54 -07:00
Victor Marmol
1a41ec9c86
Merge pull request #7116 from yujuhong/container_status
...
Print container statuses in `kubectl get pods`
2015-04-22 09:18:14 -07:00
Victor Marmol
914a6febfb
Merge pull request #7010 from yifan-gu/compute
...
kubelet: Refactor computePodContainerChanges().
2015-04-22 08:05:18 -07:00
Brian Grant
8dbbf3da5c
Merge pull request #7138 from pravisankar/unschedulable-event
...
Record an event on node schedulable changes
2015-04-22 07:11:14 -07:00
Dawn Chen
a666c1e731
Merge pull request #7134 from yifan-gu/version
...
kubelet: Refactor GetDockerVersion().
2015-04-21 16:49:45 -07:00
Yu-Ju Hong
06125f37d3
Print container statuses in kubectl get pods
...
`kubectl get pod` already prints one container per line. This change fills in
the status for each container listed. This aims to help users quickly identify
unhealthy pods (e.g. in a crash loop) at a glance.
- The first row of every pod would display the pod information and status
- Each row of the subsequent rows corresponds to a container in that pod:
* STATUS refers to the container status (Running, Waiting, Terminated).
* CREATED refers to the elapsed time since the last start time of the
container.
* MESSAGE is a string which explains the last termination reason, and/or
the reason behind the waiting status.
2015-04-21 15:42:18 -07:00
Derek Carr
cf27fd12c1
Merge pull request #6278 from akram/fix_port_forward_listner_parsing_ipv4_ipv6
...
Fixes an issue with hosts having an IPv6 address on localhost
2015-04-21 18:04:02 -04:00
Yifan Gu
611fb25926
kubelet: Refactor GetDockerVersion().
...
Remove GetDockerServerVersion() from DockerContainerCommandRunner interface,
replaced with runtime.Version(). Also added Version type in runtime for version
comparision.
2015-04-21 14:52:08 -07:00
Ravi Sankar Penta
f1d88f6d2f
Record an event on node schedulable changes
2015-04-21 14:14:59 -07:00
Yifan Gu
5594981340
kubelet: Refactor computePodContainerChanges().
...
Pull generatePodStatus() and makePodDataDirs() out as they are the
common part for container runtimes.
2015-04-21 13:53:20 -07:00
derekwaynecarr
3445bd5806
Fixup event object reference generation to allow downstream objects to have an event
2015-04-21 15:31:38 -04:00
Akram Ben Aissi
b7fc22be8a
Fixes an issue with hosts having an IPv6 address on localhost
...
- When 'getent hosts localhost' returns '::1' the creation of the
listener fails because of the port parsing which uses ":" as a
separator
- Use of net.SplitHostPort() to do the job
- Adding unit tests to ensure that the creation succeeds
- On docker.go: adds a test on the presence the socat command which was
failing silenty if not installed
- Code Review 1
- Fixed typo on Expected
- The UT now fails if the PortForwarder could not be created
- Code Review 2
- Simplify socat error message
- Changing t.Fatal to to.Error on unit tests
- Code Review 3
- Removing useless uses cases in unit tests
- Code Review 4
- Removing useless initiliasiation of PortForwarder
- Changing error message
- Code Review 5
- Simplifying TestCast struct
- Adding addition test in one test case
- Closing the listener
- Code Review 6
- Improving unit test
2015-04-21 20:16:22 +02:00
Victor Marmol
4b9a64bcd8
Merge pull request #7098 from yifan-gu/handler
...
kubelet: Refactor runHandler().
2015-04-21 08:14:42 -07:00
Yifan Gu
c23b83b0ca
kubelet: Refactor runHandler().
...
Use new HandlerRunner type to replace runHandler()
2015-04-20 21:31:11 -07:00
Daniel Smith
462534ca5d
Merge pull request #7068 from krousey/api_pod_pointer
...
Changing a few more instances of api.Pod to *api.Pod
2015-04-20 17:09:28 -07:00
Kris Rousey
594f514843
Changing a few remaining instances of passing pods around by value. I
...
avoided changing api.PodList.Items to []*api.Pod.
2015-04-20 15:26:45 -07:00
Victor Marmol
d44e9b4880
Merge pull request #7048 from yujuhong/para_cleanup
...
Kubelet: parallelize cleaning up containers in unwanted pods
2015-04-20 14:59:07 -07:00