derekwaynecarr
a7dfdeb63e
Few cleanups in kubelet_test.go
2016-05-09 16:25:50 -04:00
Yifan Gu
5351602f7d
rkt: Implement ImageStats() for rkt.
2016-05-09 11:26:40 -07:00
k8s-merge-robot
545d56a63b
Merge pull request #24810 from derekwaynecarr/sources_cleanup
...
Automatic merge from submit-queue
Clean-up sources ready tracking in kubelet
moved sources ready tracking behind an interface, made it thread-safe.
2016-05-09 05:48:09 -07:00
k8s-merge-robot
2cf511b1f5
Merge pull request #24750 from derekwaynecarr/kubelet_eviction_flag_parsing
...
Automatic merge from submit-queue
Kubelet eviction flag parsers and tests
The first two commits are from https://github.com/kubernetes/kubernetes/pull/24559 that have achieved LGTM.
The last commit is only part that is interesting, it adds the parsing logic to handle the flags, and reserves `pkg/kubelet/eviction` for eviction manager logic.
2016-05-09 04:15:04 -07:00
Tim Hockin
817abc3213
Kill our atomic pkg, now that 1.6 is req'd
2016-05-08 20:30:37 -07:00
k8s-merge-robot
fe135fc251
Merge pull request #24630 from euank/redundant-created
...
Automatic merge from submit-queue
kubelet: Remove redundant `Container.Created`
As far as I can tell, this has been supplanted by a) the `DockerJSON.CreatedAt` field and b) the
`ContainerStatus.CreatedAt`, where the first is used for creating the
second.
The `.Created` field was only written to as far as I can see.
cc @yifan-gu & @Random-Liu
Is there any reason we might want to keep this around?
2016-05-08 16:21:05 -07:00
k8s-merge-robot
d4b1b6776a
Merge pull request #24557 from swagiaal/attacher-interface
...
Automatic merge from submit-queue
Abstract node side functionality of attachable plugins
- Create PhysicalAttacher interface to abstract MountDevice and
WaitForAttach.
- Create PhysicalDetacher interface to abstract WaitForDetach and
UnmountDevice.
- Expand unit tests to check that Attach, Detach, WaitForAttach,
WaitForDetach, MountDevice, and UnmountDevice get call where
appropriet.
Physical{Attacher,Detacher} are working titles suggestions welcome. Some other thoughts:
- NodeSideAttacher or NodeAttacher.
- AttachWatcher
- Call this Attacher and call the Current Attacher CloudAttacher.
- DeviceMounter (although there are way too many things called Mounter right now :/)
This is to address: https://github.com/kubernetes/kubernetes/pull/21709#issuecomment-192035382
@saad-ali
2016-05-08 14:04:44 -07:00
k8s-merge-robot
f2f3b49f58
Merge pull request #22575 from MikaelCluseau/wip-issue-20466
...
Automatic merge from submit-queue
Add subPath to mount a child dir or file of a volumeMount
Allow users to specify a subPath in Container.volumeMounts so they can use a single volume for many mounts instead of creating many volumes. For instance, a user can now use a single PersistentVolume to store the Mysql database and the document root of an Apache server of a LAMP stack pod by mapping them to different subPaths in this single volume.
Also solves https://github.com/kubernetes/kubernetes/issues/20466 .
2016-05-08 08:45:15 -07:00
k8s-merge-robot
8217172cd4
Merge pull request #19025 from aveshagarwal/master-imagepull-messages
...
Automatic merge from submit-queue
Fix parallel image pullers event messages with reasons constants.
2016-05-08 07:31:49 -07:00
Thomas Liu
019efef8f4
Pass dockerOpts by reference to setInfraContainerNetworkConfig
2016-05-07 14:06:06 -07:00
Andy Goldstein
f091ea5eda
Handle image digests in node status and image GC
...
Start including Docker image digests in the node status and consider image digests during image
garbage collection.
2016-05-07 06:50:51 -04:00
k8s-merge-robot
660050631e
Merge pull request #25077 from ncdc/pleg-retry
...
Automatic merge from submit-queue
PLEG: reinspect pods that failed prior inspections
Fix the following sequence of events:
1. relist call 1 successfully inspects a pod (just has infra container)
1. relist call 2 gets an error inspecting the same pod (has infra container and a transient
container that failed to create) and doesn't update the old/new pod records
1. relist calls 3+ don't inspect the pod any more (just has infra container so it doesn't look like
anything changed)
This change adds a new list that keeps track of pods that failed inspection and retries them the
next time relist is called. Without this change, a pod in this state would never be inspected again,
its entry in the status cache would never be updated, and the pod worker would never call syncPod
again because the most recent entry in the status cache has an error associated with it. Without
this change, pods in this state would be stuck Terminating forever, unless the user issued a
deletion with a grace period value of 0.
Fixes #24819
cc @kubernetes/rh-cluster-infra @kubernetes/sig-node
2016-05-06 22:14:08 -07:00
Robert Bailey
a2d8b0af13
Merge pull request #25027 from xiangpengzhao/fix_funcname
...
Rename a func in manager.go
2016-05-06 20:41:26 -07:00
Robert Bailey
b274c5b7de
Merge pull request #24843 from derekwaynecarr/graceperiod_override
...
Allow KillPod to take a gracePeriodOverride
2016-05-06 15:17:56 -07:00
Robert Bailey
2493a9de62
Merge pull request #24959 from Random-Liu/fix-flaky-unit-test
...
Use fake clock in TestGetPodsToSync.
2016-05-06 14:14:02 -07:00
Robert Bailey
2c678f1ec1
Merge pull request #25053 from yujuhong/rm_cahce_update
...
kubelet: do not force update the runtime cache
2016-05-06 14:11:38 -07:00
Robert Bailey
d9a4e9b49c
Merge pull request #25071 from zhouhaibing089/clock-fix
...
allow equality to avoid flaky on clock
2016-05-06 14:10:43 -07:00
Robert Bailey
303f059efa
Merge pull request #24817 from pmorie/clarify-orphaned-cleanup
...
Clarify orphaned volume cleanup
2016-05-06 13:52:33 -07:00
Robert Bailey
71706e0ad5
Merge pull request #25206 from yifan-gu/fix_hostport
...
rkt: When host port is zero, we should not forward the port.
2016-05-06 13:43:56 -07:00
Robert Bailey
1474145db1
Merge pull request #24823 from derekwaynecarr/fix-kubelet-typo
...
Fix function name typo in kubelet
2016-05-06 13:28:45 -07:00
Minhan Xia
1252f5695b
add unit tests for kubenet
2016-05-06 12:10:45 -07:00
Random-Liu
148588e6a1
1) Add docker operation timeout metrics.
...
2) Cleanup kubelet stats and add runtime operation error and timeout
rate monitoring.
3) Monitor runtime operation error and timeout rate in
kubelet perf.
2016-05-06 10:53:13 -07:00
Random-Liu
66678354a0
Add timeout for all docker operation.
2016-05-06 10:53:13 -07:00
derekwaynecarr
7bab6999d4
Allow KillPod to take a gracePeriodOverride
2016-05-06 12:14:43 -04:00
derekwaynecarr
582e662581
Clean-up sources ready tracking
2016-05-06 12:11:29 -04:00
derekwaynecarr
725af223aa
Add parsers for eviction thresholds
2016-05-06 12:06:03 -04:00
k8s-merge-robot
16159b8bd0
Merge pull request #24344 from derekwaynecarr/kubelet-lifecycle-callouts
...
Automatic merge from submit-queue
Define interfaces for kubelet pod admission and eviction
There is too much code and logic in `kubelet.go` that makes it hard to test functions in discrete pieces.
I propose an interface that an internal module can implement that will let it make an admission decision for a pod. If folks are ok with the pattern, I want to move the a) predicate checking, b) out of disk, c) eviction preventing best-effort pods being admitted into their own dedicated handlers that would be easier for us to mock test. We can then just write tests to ensure that the `Kubelet` calls a call-out, and we can write easier unit tests to ensure that dedicated handlers do the right thing.
The second interface I propose was a `PodEvictor` that is invoked in the main kubelet sync loop to know if pods should be pro-actively evicted from the machine. The current active deadline check should move into a simple evictor implementation, and I want to plug the out of resource killer code path as an implementation of the same interface.
@vishh @timothysc - if you guys can ack on this, I will add some unit testing to ensure we do the call-outs.
/cc @kubernetes/sig-node @kubernetes/rh-cluster-infra
2016-05-06 08:53:35 -07:00
k8s-merge-robot
32256d53aa
Merge pull request #25136 from dcbw/kubenet-fixup-txqueuelen
...
Automatic merge from submit-queue
kubenet: fix up CNI bridge TX queue length if needed
CNI's bridge plugin mis-handles the TxQLen when creating the bridge,
leading to a zero-length TX queue. This doesn't typically cause
problems (since virtual interfaces don't have hard queue limits)
but when adding traffic shaping, some qdiscs pull their packet
limits from the TX queue length, leading to a packet limit of 0
in some cases. Until we can depend on a new enough version of
CNI, fix up the TX queue length internally.
Closes: https://github.com/kubernetes/kubernetes/issues/25092
2016-05-06 06:29:31 -07:00
k8s-merge-robot
66ef87347e
Merge pull request #24968 from wojtek-t/remove_node_name
...
Automatic merge from submit-queue
Remove nodeName from predicate signature.
With this approach, I'm getting the initial throughput (in empty cluster) in 1000-node cluster of ~95pods/s.
Which is ~30% improvement.
@kubernetes/sig-scalability
2016-05-06 04:09:13 -07:00
k8s-merge-robot
346ddc52c2
Merge pull request #24748 from Random-Liu/cleanup-with-new-engine-api
...
Automatic merge from submit-queue
Kubelet: Cleanup with new engine api
Finish step 2 of #23563
This PR:
1) Cleanup go-dockerclient reference in the code.
2) Bump up the engine-api version.
3) Cleanup the code with new engine-api.
Fixes #24076 .
Fixes #23809 .
/cc @yujuhong
2016-05-06 03:16:53 -07:00
Wojciech Tyczynski
a51f266ebf
Remove nodeName from predicate signature.
2016-05-06 11:23:37 +02:00
k8s-merge-robot
4a00266f40
Merge pull request #25224 from Random-Liu/delete-pod-with-uid
...
Automatic merge from submit-queue
Delete pod with uid as precondition.
Addressed https://github.com/kubernetes/kubernetes/issues/25169#issuecomment-217033202 .
Fix #25169
Fix #24937
This PR change status manager to delete pods with uid as a precondition, so that kubelet won't delete pods with different uid but the same name and namespace accidentally.
/cc @yujuhong
2016-05-05 22:02:14 -07:00
Paul Morie
bc5d7a1bca
Reduce kubelet LOC: extract cadvisor
2016-05-06 00:26:48 -04:00
Mikaël Cluseau
06900a934d
Introduce subPath in VolumeMount
2016-05-06 15:08:41 +11:00
Minhan Xia
ae6f9ab970
kubenet try to retrieve ip inside pod net namespace
2016-05-05 17:57:32 -07:00
k8s-merge-robot
03e7e08e70
Merge pull request #25124 from pmorie/kubelet-getters
...
Automatic merge from submit-queue
Reduce kubelet LOC: extract getters
Step 1 of #25028 as discussed in @kubernetes/sig-node meeting
2016-05-05 16:52:09 -07:00
Random-Liu
cb6fe9e7ef
Delete pod with uid as precondition.
2016-05-05 14:34:49 -07:00
zhouhaibing089
5923fd352e
followup to add http server close method
2016-05-05 12:04:41 +08:00
Yifan Gu
36f3185223
rkt: When host port is zero, we should not forward the port.
2016-05-04 19:02:39 -07:00
Minhan Xia
04b80f7fb8
rename Status interface to GetPodNetworkStatus
2016-05-04 13:46:31 -07:00
Minhan Xia
265fdd9344
add NetworkStatus in NetworkPlugin interface for kubelet to consume
2016-05-04 13:46:31 -07:00
Dan Williams
aad6535a00
kubenet: fix up CNI bridge TX queue length if needed
...
CNI's bridge plugin mis-handles the TxQLen when creating the bridge,
leading to a zero-length TX queue. This doesn't typically cause
problems (since virtual interfaces don't have hard queue limits)
but when adding traffic shaping, some qdiscs pull their packet
limits from the TX queue length, leading to a packet limit of 0
in some cases. Until we can depend on a new enough version of
CNI, fix up the TX queue length internally.
2016-05-04 10:14:40 -05:00
Sami Wagiaalla
71e7dba845
Abstract node side functionality of attachable plugins
...
- Expand Attacher/Detacher interfaces to break up work more
explicitly.
- Add arguments to all functions to avoid having implementers store
the data needed for operations.
- Expand unit tests to check that Attach, Detach, WaitForAttach,
WaitForDetach, MountDevice, and UnmountDevice get call where
appropriet.
2016-05-04 10:18:39 -04:00
Paul Morie
7521503ab9
Reduce kubelet LOC: extract getters
2016-05-04 02:25:22 -04:00
Paul Morie
d1e0e726f2
Reduce LOC in kubelet tests
2016-05-03 22:45:08 -04:00
zhouhaibing089
67747ca08f
allow equality to avoid flaky on clock
2016-05-04 09:11:22 +08:00
Andy Goldstein
3a87bfb6f7
PLEG: reinspect pods that failed prior inspections
...
Fix the following sequence of events:
1. relist call 1 successfully inspects a pod (just has infra container)
1. relist call 2 gets an error inspecting the same pod (has infra container and a transient
container that failed to create) and doesn't update the old/new pod records
1. relist calls 3+ don't inspect the pod any more (just has infra container so it doesn't look like
anything changed)
This change adds a new list that keeps track of pods that failed inspection and retries them the
next time relist is called. Without this change, a pod in this state would never be inspected again,
its entry in the status cache would never be updated, and the pod worker would never call syncPod
again because the most recent entry in the status cache has an error associated with it. Without
this change, pods in this state would be stuck Terminating forever, unless the user issued a
deletion with a grace period value of 0.
2016-05-03 11:06:35 -04:00
Rudi Chiarito
a2051b2d47
Preserve query strings in HTTP probes instead of escaping them
...
This might also preserve fragments, for those crazy enough to pass them.
I am using url.Parse() on the path in order to get path/query/fragment
and also deliberately avoiding the addition of more fields to the API.
2016-05-02 20:53:19 -04:00
Random-Liu
4cca5b2290
Use fake clock in TestGetPodsToSync to fix flake.
2016-05-02 16:05:36 -07:00
Yu-Ju Hong
43fc67a5f6
kubelet: do not force update the runtime cache
...
Pod workers don't rely on the old runtime cache to sync pods anymore. There is
no need to force update the cache on every container event.
2016-05-02 15:10:00 -07:00
k8s-merge-robot
879c1807c8
Merge pull request #24821 from freehan/kubenetmutex
...
Automatic merge from submit-queue
add mutex for kubenet
I saw a bunch of weird cases in kubenet suite. For instance, SetUpPod return successfully, but right after that, kubelet cannot retrieve podIP from podCIDR map.
cc: @dcbw @thockin
ref: #24211
2016-05-02 13:16:23 -07:00
Xiangpeng Zhao
d27127aaf8
Rename a func in order to be difference with variable
...
Rename `defaultSecurityOpt` to `getDefaultSecurityOpt`
2016-05-02 03:02:49 +08:00
feisky
831203c19b
Remove RunInContainer interface in Kuberlete Runtime interface
2016-05-01 20:21:15 +08:00
Clayton Coleman
fdb110c859
Fix the rest of the code
2016-04-29 17:12:10 -04:00
Random-Liu
7796b619fd
Cleanup the code with new engine-api
2016-04-29 13:34:38 -07:00
Random-Liu
3876972d3f
Clean up go-dockerclient reference.
2016-04-29 13:32:19 -07:00
Arvinderpal
dede4d507c
Sets IgnoreUnknown=1 in CNI_ARGS
...
K8 uses CNI_ARGS to pass pod namespace, name and infra container
id to the CNI network plugin. CNI logic will throw an error
if these args are not known to it, unless the user specifies
IgnoreUnknown as part of CNI_ARGS. This PR sets IgnoreUnknown=1
to prevent the CNI logic from erroring and blocking pod setup.
https://github.com/appc/cni/pull/158
https://github.com/appc/cni/issues/126
2016-04-29 07:40:15 -07:00
derekwaynecarr
033ae3e37e
Define interfaces for kubelet observing admission, sync loop, sync pod
2016-04-29 10:16:03 -04:00
k8s-merge-robot
ad67363c12
Merge pull request #24362 from ArtfulCoder/hostname-field
...
Automatic merge from submit-queue
Promote Pod Hostname & Subdomain to fields (were annotations)
Deprecating the podHostName, subdomain and PodHostnames annotations and created corresponding new fields for them on PodSpec and Endpoints types.
Annotation doc: #22564
Annotation code: #20688
2016-04-29 01:06:45 -07:00
k8s-merge-robot
492762d394
Merge pull request #24911 from pmorie/kubelet-godoc
...
Automatic merge from submit-queue
Add godoc for some kubelet funcs
Chipping away at that old boulder
@kubernetes/sig-node
2016-04-28 14:52:45 -07:00
Paul Morie
b9f0e8c610
Add godoc for some kubelet funcs
2016-04-28 17:03:37 -04:00
Abhishek Shah
8a3ed48808
Added Hostname and Subdomain field to Pod.Spec
2016-04-28 10:56:56 -07:00
k8s-merge-robot
7a725418af
Merge pull request #24622 from derekwaynecarr/pod_qos_util
...
Automatic merge from submit-queue
Add utility for determining qos of a pod
@vishh - per slack chat.
2016-04-28 07:26:50 -07:00
k8s-merge-robot
00308f7a9f
Merge pull request #24598 from wojtek-t/improve_scheduler_predicates
...
Automatic merge from submit-queue
Store node information in NodeInfo
This is significantly improving scheduler throughput.
On 1000-node cluster:
- empty cluster: ~70pods/s
- full cluster: ~45pods/s
Drop in throughput is mostly related to priority functions, which I will be looking into next (I already have some PR #24095 , but we need for more things before).
This is roughly ~40% increase.
However, we still need better understanding of predicate function, because in my opinion it should be even faster as it is now. I'm going to look into it next week.
@gmarek @hongchaodeng @xiang90
2016-04-28 02:17:59 -07:00
k8s-merge-robot
d0b887e4e0
Merge pull request #24595 from zhouhaibing089/httpserverclose
...
Automatic merge from submit-queue
Uncomment the code that caused by #19254
Fix https://github.com/kubernetes/kubernetes/issues/24546 .
@lavalamp
2016-04-28 01:41:16 -07:00
k8s-merge-robot
04b70bc6c7
Merge pull request #24376 from resouer/fix-cache
...
Automatic merge from submit-queue
Do not update cache with so much effort
Fixes : #24298
1. Remove automatic update
2. Every time we check if we can get valid value from cache, if not, get the value directly from api
cc @Random-Liu
2016-04-28 01:00:33 -07:00
k8s-merge-robot
4c7abddc1c
Merge pull request #24567 from yifan-gu/post_start_hook
...
Automatic merge from submit-queue
rkt: Add post-start hook support.
This adds a poll-and-timeout procedure after the pod is
started, to make sure the post-start hooks execute when the
container is actually running.
This is a temporal workaround for implementing post-hooks,
a long term solution is to use lifecycle event to trigger
those hooks, see https://github.com/kubernetes/kubernetes/issues/23084 .
Also this fixes a bug of getting container ID for a non-running
container when running pre-stop hook.
cc @sjpotter @euank @kubernetes/sig-node
2016-04-27 11:14:35 -07:00
Paul Morie
11113a00d7
Clarify log messages for orphaned volume cleanup
2016-04-27 13:20:43 -04:00
k8s-merge-robot
7e430f543b
Merge pull request #24545 from swagiaal/rename-cleaner-tuple
...
Automatic merge from submit-queue
Rename cleanerTuple to cleaner
Rename cleanerTuple to cleaner.
This is a follow up to address: https://github.com/kubernetes/kubernetes/pull/19503#discussion_r49538769
@saad-ali
2016-04-27 09:51:26 -07:00
Harry Zhang
d6f26b68bc
Use expiration cache for version check
2016-04-27 05:42:50 -04:00
derekwaynecarr
ec5670fd73
Fix function name typo in kubelet
2016-04-26 17:29:44 -04:00
Minhan Xia
c8470c49ac
add mutex for kubenet
2016-04-26 13:58:10 -07:00
k8s-merge-robot
55cb7cceb3
Merge pull request #23632 from stefwalter/parse-repository-tag-removed
...
Automatic merge from submit-queue
Fix use of docker removed ParseRepositoryTag() function
Docker has removed the ParseRepositoryTag() function in
leading to failures using the kubernetes Go client API.
Failure:
```
../k8s.io/kubernetes/pkg/util/parsers/parsers.go:30: undefined: parsers.ParseRepositoryTag
```
2016-04-26 09:49:25 -07:00
k8s-merge-robot
a586177360
Merge pull request #23740 from dcbw/kubenet-shaper
...
Automatic merge from submit-queue
kubenet: hook pod bandwidth resources up to shaper
@bprashanth @thockin Last bit for shaping.
2016-04-25 22:15:42 -07:00
k8s-merge-robot
cf38d68734
Merge pull request #23595 from vishh/image-accounting
...
Automatic merge from submit-queue
Collect and expose runtime's image storage usage via Kubelet's /stats/summary endpoint
This information is useful to users since docker images are typically not stored on the root filesystem.
Kubelet will also consume this feature in the future to decide is evicting images will help with disk usage on the nodes.
cc @kubernetes/sig-node
2016-04-25 21:34:30 -07:00
Tim St. Clair
2201554b3f
Disable cAdvisor event storage by default
2016-04-25 17:32:16 -07:00
Vishnu kannan
e566948a75
Track image storage usage for docker containers
...
add image fs info to summary stats API.
Adding node e2e test for image stats.
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-04-25 16:00:34 -07:00
Euan Kemp
941caa1372
rkt: Pass through os argument
...
This was lost in a rebase in #24496 and, while not required to build, is
required to function correctly.
2016-04-25 12:56:25 -07:00
Euan Kemp
7d34b0b09d
kubelet: Remove redundant Container.Created
...
This has been supplanted by a) the DockerJSON.CreatedAt field and b) the
ContainerStatus.CreatedAt, where the first is used for creating the
second.
The `.Created` field was only written to as far as I can see.
2016-04-25 12:19:24 -07:00
derekwaynecarr
80bf8cb0e4
Add utility for kubelet to log resources consistently
2016-04-25 14:46:56 -04:00
zhouhaibing089
bf1a3f99c0
Uncomment the code that cause by #19254
2016-04-25 23:21:31 +08:00
Stef Walter
481dbca8bc
Fix use of docker removed ParseRepositoryTag() function
...
Docker has removed the ParseRepositoryTag() function in
leading to failures using the kubernetes Go client API.
Lets use github.com/docker/distribution reference.ParseNamed()
instead.
Failure:
../k8s.io/kubernetes/pkg/util/parsers/parsers.go:30: undefined: parsers.ParseRepositoryTag
2016-04-25 11:37:10 +02:00
Wojciech Tyczynski
1835c8528d
Store node information in NodeInfo
2016-04-25 10:08:05 +02:00
k8s-merge-robot
4f9e8729bf
Merge pull request #23800 from resouer/image-refactor
...
Automatic merge from submit-queue
Refactor image related functions to use docker engine-api
ref #23563
Hopes can do some help, cc @Random-Liu
If it's ok, will add more work here.
2016-04-23 20:01:41 -07:00
k8s-merge-robot
30891c7f3f
Merge pull request #24496 from euank/rkt-finished-at
...
Automatic merge from submit-queue
rkt: Return `FinishedAt` for pod
This is implemented via touching a file on stop as a hook in the systemd
unit. The ctime of this file is then used to get the `finishedAt` time
in the future.
In addition, this changes the `startedAt` and `createdAt` to use the api
server's results rather than the annotations it previously used.
It's possible we might want to move this into the api in the future.
Fixes #23887
I did the following manual testing:
```
$ cat ./examples/output/exit-output.yml
apiVersion: v1
kind: Pod
metadata:
labels:
name: exit
name: exit-output
spec:
restartPolicy: Never
containers:
- name: exit
image: busybox
command: ["sh", "-c", "echo Exiting in 60; sleep 60; echo goodbye"]
$ kubectl create -f ./examples/exit/exit-output.yaml
$ # wait
$ kubectl describe pod exit-output | grep State -A 4
State: Terminated
Reason: Completed
Exit Code: 0
Started: Tue, 19 Apr 2016 13:23:13 -0700
Finished: Tue, 19 Apr 2016 13:24:13 -0700
$ kubectl logs exit-output
Exiting in 60
goodbye
```
I double checked as well that the file at `/var/lib/kubelet/pods/$id/finished-$id` existed and looked as expected.
This is related to https://github.com/coreos/rkt/issues/1789#issuecomment-207111814 and follows https://github.com/kubernetes/kubernetes/pull/24367 + https://github.com/coreos/rkt/issues/2445
cc @jonboulle @iaguis @yifan-gu @kubernetes/sig-node
2016-04-23 18:29:07 -07:00
Harry Zhang
a3939473d3
Refactor PullImage RemoveImage methods
...
Refactor image remove
2016-04-23 10:33:47 -04:00
Harry Zhang
3918eee5bf
Refactor InspectImage method
2016-04-23 16:37:15 +08:00
Harry Zhang
7ecb44fe16
Refactor list image to use new api
2016-04-23 16:37:15 +08:00
Yifan Gu
a12a7c2a2c
rkt: Add post-start hook support.
...
This adds a poll-and-timeout procedure after the pod is
started, to make sure the post-start hooks execute when the
container is actually running.
This is a temporal workaround for implementing post-hooks,
a long term solution is to use lifecycle event to trigger
those hooks, see https://github.com/kubernetes/kubernetes/issues/23084 .
Also this fixes a bug of getting container ID for a non-running
container when running pre-stop hook.
2016-04-22 15:38:05 -07:00
Euan Kemp
a6718f5969
rkt: Implement pod FinishedAt
...
This is implemented via touching a file on stop as a hook in the systemd
unit. The ctime of this file is then used to get the `finishedAt` time
in the future.
In addition, this changes the `startedAt` and `createdAt` to use the api
server's results rather than the annotations it previously used.
It's possible we might want to move this into the api in the future.
Fixes #23887
2016-04-22 15:34:55 -07:00
gmarek
e0712f7e57
Fix MaxPods feature in scheduler
2016-04-22 22:49:50 +02:00
k8s-merge-robot
06c2db4fe2
Merge pull request #23907 from Random-Liu/all-but-image-related-functions
...
Automatic merge from submit-queue
Kubelet: Refactor all but image related functions in DockerInterface
For #23563 .
Based on #23699 and #23844 .
Only last 3 commits are new. This PR refactored all functions except image related functions, including:
* CreateExec
* StartExec
* InspectExec
* AttachToContainer
* Logs
* Info
* Version
@kubernetes/sig-node
2016-04-21 20:57:38 -07:00
derekwaynecarr
2b9cfd414d
Add utility for determining qos of a pod
2016-04-21 17:15:17 -04:00
k8s-merge-robot
9d4eee63ab
Merge pull request #24589 from derekwaynecarr/fix_shm
...
Automatic merge from submit-queue
docker daemon complains SHM size must be greater than 0
Fixes https://github.com/kubernetes/kubernetes/issues/24588
I am hitting this on Fedora 23 w/ docker 1.9.1 using systemd cgroup-driver.
```
$ docker version
Client:
Version: 1.9.1
API version: 1.21
Package version: docker-1.9.1-9.gitee06d03.fc23.x86_64
Go version: go1.5.3
Git commit: ee06d03/1.9.1
Built:
OS/Arch: linux/amd64
Server:
Version: 1.9.1
API version: 1.21
Package version: docker-1.9.1-9.gitee06d03.fc23.x86_64
Go version: go1.5.3
Git commit: ee06d03/1.9.1
Built:
OS/Arch: linux/amd64
```
Not sure why I am on the only one hitting it right now, but putting this out here for comment.
/cc @kubernetes/sig-node @kubernetes/rh-cluster-infra @smarterclayton
2016-04-21 12:11:03 -07:00
Random-Liu
d981fee2ee
Refactor Info and Version.
2016-04-21 12:02:50 -07:00
derekwaynecarr
cbf1cb81a9
SHM size must be greater than 0
2016-04-21 11:45:28 -04:00
Chao Xu
8537095415
use fully qualified resource in fake clients actions
2016-04-20 19:44:40 -07:00
Sami Wagiaalla
234d599763
Rename cleanerTuple to cleaner
2016-04-20 14:38:40 -04:00
goltermann
3fa6c6f6d9
Enable vet
2016-04-20 09:48:24 -07:00
Minhan Xia
a7783e5334
add log line before invoking network plugin
2016-04-19 15:34:06 -07:00
Dan Williams
8086d64131
kubenet: hook pod bandwidth resources up to shaper
2016-04-19 15:32:46 -05:00
k8s-merge-robot
d37e6ad332
Merge pull request #24126 from Random-Liu/fix-pull-image
...
Automatic merge from submit-queue
Fix PullImage and add corresponding node e2e test
Fixes #24101 . This is a bug introduced by #23506 , since ref #23563 .
The root cause of #24101 is described [here](https://github.com/kubernetes/kubernetes/issues/24101#issuecomment-208547623 ).
This PR
1) Fixes #24101 by decoding the messages returned during pulling image, and return error if any of the messages contains error.
2) Add the node e2e test to detect this kind of failure.
3) Get present check out of `ConformanceImage.Remove()` and `ConformanceImage.Pull()`. Because sometimes we may expect error to occur in `PullImage()` and `RemoveImage()`, but even that doesn't happen, the `Present()` check will still return error and let the test pass.
@yujuhong @freehan @liangchenye
Also /cc @resouer, because he is doing the image related functions refactoring.
2016-04-18 07:05:44 -07:00
k8s-merge-robot
d0b52dd8b3
Merge pull request #24107 from yifan-gu/load_bridge
...
Automatic merge from submit-queue
kubenet: Load bridge netfilter module in Init().
This lets the kubenet loads the bridge netfilter module and set bridge-nf-call-iptables=1
Fix #24018
Follow up PRs would be appreciate if we also load the module in the bridge plugin binary itself. Ref https://github.com/kubernetes/kubernetes/issues/24018#issuecomment-207682514
cc @kubernetes/sig-node @sjpotter @euank
2016-04-18 00:08:25 -07:00
k8s-merge-robot
9637b09f69
Merge pull request #24047 from derekwaynecarr/reuse_summary_provider
...
Automatic merge from submit-queue
Expose SummaryProvider for reuse by other parts of kubelet
To support out of resource killing in the kubelet, we will introduce a new top-level module that will ensure node stability by checking if eviction thresholds have been met for memory and file-system usage on the node. In addition, it will then need information about pod memory and disk usage in order to make an eviction selection. Currently, this information is collected in `SummaryProvider` but it's hidden away and not available for re-use by other top-level modules of the kubelet. This initial refactor adds the ability to get summary stat information from the `ResourceAnalyzer` so it can be reused by other top-level modules.
I suspect we will further re-factor this area as code evolves, but this unblocks further progress on out-of-resource killing.
/cc @vishh @timothysc @kubernetes/sig-node @kubernetes/rh-cluster-infra
2016-04-17 20:22:57 -07:00
Random-Liu
d33b69a0de
Refactor AttachToContainer and Logs.
2016-04-17 13:00:52 -07:00
Random-Liu
de5f407058
Refactor CreateExec, StartExec and InspectExec.
2016-04-17 12:58:47 -07:00
k8s-merge-robot
75b49f591a
Merge pull request #23948 from derekwaynecarr/memory_available
...
Automatic merge from submit-queue
Add memory available to summary stats provider
To support out of resource killing when low on memory, we want to let operators specify eviction thresholds based on available memory instead of memory usage for ease of use when working with heterogeneous nodes.
So for example, a valid eviction threshold would be the following:
* If node.memory.available < 200Mi for 30s, then evict pod(s)
For the node, `memory.availableBytes` is always known since the `memory.limit_in_bytes` is always known for root cgroup. For individual containers in pods, we only populate the `availableBytes` if the container was launched with a memory limit specified. When no memory limit is specified, the cgroupfs sets a value of 1 << 63 in the `memory.limit_in_bytes` so we look for a similar max value to handle unbounded limits, and ignore setting `memory.availableBytes`.
FYI @vishh @timstclair - as discussed on Slack.
/cc @kubernetes/sig-node @kubernetes/rh-cluster-infra
2016-04-17 06:32:36 -07:00
Wojciech Tyczynski
495e274500
Merge pull request #24384 from Random-Liu/disable-version-cache
...
Disable the version cache to fix #24298 .
2016-04-17 04:48:07 -07:00
Random-Liu
19249a8cbc
Disable the version cache to fix #24298 .
2016-04-17 03:14:03 -07:00
k8s-merge-robot
8990897ce6
Merge pull request #23940 from freehan/netinterface
...
Automatic merge from submit-queue
switch to use ContainerID instead of DockerID in network plugin interface
fix : #15663
2016-04-17 01:12:51 -07:00
k8s-merge-robot
2e87b0e363
Merge pull request #23699 from Random-Liu/container-related-functions
...
Automatic merge from submit-queue
Kubelet: Refactor container related functions in DockerInterface
For #23563 .
Based on #23506 , will rebase after #23506 is merged.
The last 4 commits of this PR are new.
This PR refactors all container lifecycle related functions in DockerInterface, including:
* ListContainers
* InspectContainer
* CreateContainer
* StartContainer
* StopContainer
* RemoveContainer
@kubernetes/sig-node
2016-04-16 21:41:19 -07:00
k8s-merge-robot
bf69b2a862
Merge pull request #24302 from therc/patch-1
...
Automatic merge from submit-queue
Remove dead code in kubelet.go
2016-04-16 00:00:29 -07:00
k8s-merge-robot
61c0424b27
Merge pull request #24301 from yifan-gu/host_net
...
Automatic merge from submit-queue
rkt: Fix hostnetwork.
Mount hosts' /etc/hosts, /etc/resolv.conf, set host's hostname
when running the pod in the host's network.
Fix #24235
cc @kubernetes/sig-node
2016-04-15 13:59:27 -07:00
k8s-merge-robot
f83c0aef4a
Merge pull request #23852 from yifan-gu/previous_log
...
Automatic merge from submit-queue
rkt: Use rkt pod's uuid as the systemd service file's name.
Previously, the service file's name is 'k8s_${POD_UID}.service',
which means we need to `systemctl daemon-reload` if the we replace
the content of the service file (e.g. pod is restarted).
However this makes the journal in the previous pod get disconnected.
This PR solves the issue by using the unique rkt uuid as the service
file's name. After the change, the service file's name will be:
'k8s_${rkt_uuid}.service'.
Fix #23691
2016-04-15 12:04:06 -07:00
k8s-merge-robot
d56ec66e7c
Merge pull request #23667 from yifan-gu/config
...
Automatic merge from submit-queue
rkt: Update the directory path for saving auth config.
Since #23308 is merged, now we have more stable way to determine where to store the auth configs.
cc @yujuhong @sjpotter
2016-04-15 03:22:44 -07:00
k8s-merge-robot
8f3c623287
Merge pull request #23594 from Clarifai/ecr
...
Automatic merge from submit-queue
Allow lazy binding in credential providers; don't use it in AWS yet
This is step one for cross-region ECR support and has no visible effects yet.
I'm not crazy about the name LazyProvide. Perhaps the interface method could
remain like that and the package method of the same name could become
LateBind(). I still don't understand why the credential provider has a
DockerConfigEntry that has the same fields but is distinct from
docker.AuthConfiguration. I had to write a converter now that we do that in
more than one place.
In step two, I'll add another intermediate, lazy provider for each AWS region,
whose empty LazyAuthConfiguration will have a refresh time of months or years.
Behind the scenes, it'll use an actual ecrProvider with the usual ~12 hour
credentials, that will get created (and later refreshed) only when kubelet is
attempting to pull an image. If we simply turned ecrProvider directly into a
lazy provider, we would bypass all the caching and get new credentials for
each image pulled.
2016-04-14 23:42:07 -07:00
k8s-merge-robot
ea932c0956
Merge pull request #21224 from Random-Liu/add-unit-test-for-convert-function
...
Automatic merge from submit-queue
Kubelet: Better-defined Container Waiting state
For issue #20478 and #21125 .
This PR corrected logic and add unit test for `ShouldContainerBeRestarted()`, cleaned up `Waiting` state related code and added unit test for `generateAPIPodStatus()`.
Fixes #20478
Fixes #17971
@yujuhong
2016-04-14 23:05:55 -07:00
Yifan Gu
dfb6dd010f
rkt: Fix hostnetwork.
...
Mount hosts' /etc/hosts, /etc/resolv.conf, set host's hostname
when running the pod in the host's network.
Besides, do not set the DNS flags when running in host's network.
2016-04-14 18:44:09 -07:00
Yifan Gu
02c0f41c88
kubenet: Load bridge netfilter module in Init().
...
Also set 'bridge-nf-call-iptables' to true.
2016-04-14 18:43:22 -07:00
Yifan Gu
f64c47ef80
rkt: Use rkt pod's uuid as the systemd service file's name.
...
Previously, the service file's name is 'k8s_${POD_UID}.service',
which means we need to `systemctl daemon-reload` if the we replace
the content of the service file (e.g. pod is restarted).
However this makes the journal in the previous pod get disconnected.
This PR solves the issue by using the unique rkt uuid as the service
file's name. After the change, the service file's name will be:
'k8s_${rkt_uuid}.service'.
2016-04-14 18:42:44 -07:00
Yifan Gu
e803f55e20
rkt: Update the directory path for saving auth config.
2016-04-14 18:40:14 -07:00
Rudi C
43d2b572ef
Remove dead code in kubelet.go
...
The only call to this was removed in #20204 by @HaiyangDING
cc @vishh
2016-04-14 20:17:22 -04:00
Random-Liu
d3d98b372b
Refactor StartContainer, StopContainer and RemoveContainer.
2016-04-14 17:05:46 -07:00
Random-Liu
ba4a5ed39e
Refactor CreateContainer.
2016-04-14 17:05:46 -07:00
Random-Liu
da07fa9dd5
Refactor InspectContainer.
2016-04-14 17:05:46 -07:00
Random-Liu
b348e7d1c9
Refactr ListContainers.
2016-04-14 17:05:05 -07:00
Daniel Smith
86b7dbb2c6
Merge pull request #23844 from Random-Liu/proper-fake-docker-version
...
Set fake docker client to minimum required version.
2016-04-14 16:55:47 -07:00
k8s-merge-robot
9c0a0833b3
Merge pull request #23532 from yifan-gu/lifecycle
...
Automatic merge from submit-queue
rkt: Add pre-stop lifecycle hooks for rkt.
When a pod is being terminated, the pre-stop hooks of all the containers
will be run before the containers are stopped.
cc @yujuhong @Random-Liu @sjpotter
2016-04-14 06:34:10 -07:00
k8s-merge-robot
df21974730
Merge pull request #21741 from resouer/oomscore
...
Automatic merge from submit-queue
Use OomScoreAdj in kubelet for newer docker api
fixes : #20121
Related: client side PR [pull 454](https://github.com/fsouza/go-dockerclient/pull/454 )
Godeps has already been updated to `0099401a7342ad77e71ca9f9a57c5e72fb80f6b2`, which included client side's modification. But it seems too aggressive to upgrade the docker api version of kubelet.
2016-04-14 03:07:41 -07:00
Daniel Smith
498dc418ed
Merge pull request #23122 from screeley44/volmount_errors
...
Return more useful error information when a persistent volume fails to mount
2016-04-13 14:20:51 -07:00
k8s-merge-robot
9c5680bac3
Merge pull request #23904 from pmorie/kubelet-volumes-comments
...
Automatic merge from submit-queue
Add godoc to kubelet/volumes.go
Noticed that `mountExternalVolumes`, of all things, was missing Godoc while working w/ @screeley44. Decided to add some tonight since I have been making noise about grokkability of the kubelet lately.
@kubernetes/sig-storage
2016-04-13 03:01:32 -07:00
Harry Zhang
c31ec5607a
Refactor version cache into kubelet util
2016-04-13 00:42:22 -04:00
harry
f9e2f522b4
Add cache for api version
...
Expose runtime interface
2016-04-12 22:34:59 -04:00
Harry Zhang
b4244a079f
Implement OomScoreAdj in kubelet
2016-04-12 22:34:58 -04:00
Lantao Liu
41953bae49
Add unit test for generateAPIPodStatus
2016-04-12 16:37:26 -07:00
Lantao Liu
b49357be22
Cleanup the waiting state related code
2016-04-12 16:37:26 -07:00
Yifan Gu
cc4336829d
rkt: Add pre-stop lifecycle hooks for rkt.
...
When a pod is being terminated, the pre-stop hooks of all the containers
will be run before the containers are stopped.
2016-04-12 13:10:51 -07:00
Random-Liu
2b9f6bea18
Fix PullImage and corresponding node e2e test.
2016-04-12 10:42:25 -07:00
k8s-merge-robot
e93c0d727f
Merge pull request #20204 from HaiyangDING/predlib
...
Automatic merge from submit-queue
Move predicates into library
This PR tries to implement #12744
Any suggestions/ideas are welcome. @davidopp
current state: integration test fails if including podCount check in Kubelet.
DONE:
1. refactor all predicates: predicates return fitOrNot(bool) and error(Error) in which the latter is of type PredicateFailureError or InsufficientResourceError
2. GeneralPredicates() is a predicate function, which includes serveral other predicate functions (PodFitsResource, PodFitsHost, PodFitsHostPort). It is registered as one of the predicates in DefaultAlgorithmProvider, and is also called in canAdmitPod() in Kubelet and should be called by other components (like rescheduler, etc if necessary. See discussion in issue #12744
TODO:
1. determine which predicates should be included in GeneralPredicates()
2. separate GeneralPredicates() into: a.) GeneralPredicatesEvictPod() and b.) GeneralPredicatesNotEvictPod()
3. DaemonSet should use GeneralPredicates()
2016-04-12 07:44:45 -07:00
k8s-merge-robot
fda8ec2f5d
Merge pull request #24015 from yujuhong/rss_memory
...
Automatic merge from submit-queue
kubele: add RSS memroy to the summary API
2016-04-12 05:51:35 -07:00
k8s-merge-robot
6a87dba0b8
Merge pull request #22733 from resouer/flow-control
...
Automatic merge from submit-queue
Add flow control pkg
minor fix ref #15634
Refactor pkg names in back off related files
2016-04-11 06:18:51 -07:00
HaiyangDING
41ed85479a
move predicates into library (address #12744 )
...
DONE:
1. refactor all predicates: predicates return fitOrNot(bool) and error(Error) in which the latter is of type
PredicateFailureError or InsufficientResourceError. (For violation of either MaxEBSVolumeCount or
MaxGCEPDVolumeCount, returns one same error type as ErrMaxVolumeCountExceeded)
2. GeneralPredicates() is a predicate function, which includes serveral other predicate functions (PodFitsResource,
PodFitsHost, PodFitsHostPort). It is registered as one of the predicates in DefaultAlgorithmProvider, and
is also called in canAdmitPod() in Kubelet and should be called by other components (like rescheduler, etc)
if necessary. See discussion in issue #12744
3. remove podNumber check from GeneralPredicates
4. HostName is now verified in Kubelet's canAdminPod(). add TestHostNameConflicts in kubelet_test.go
5. add getNodeAnyWay() method in Kubelet to get node information in standaloneMode
TODO:
1. determine which predicates should be included in GeneralPredicates()
2. separate GeneralPredicates() into:
a. GeneralPredicatesEvictPod() and
b. GeneralPredicatesNotEvictPod()
3. DaemonSet should use GeneralPredicates()
2016-04-11 00:57:03 +08:00
Jeff Lowdermilk
1a9cb97bdd
Merge pull request #23658 from Random-Liu/fix-termination-message-path
...
Fix TerminationMessagePath
2016-04-08 20:54:14 -07:00
Jeff Lowdermilk
2dd9bf535f
Merge pull request #23723 from intelsdi-x/stage1_image_rkt_deprecated_flag
...
keep deprecated flag stage1-image with rkt
2016-04-08 20:53:09 -07:00
derekwaynecarr
22fc4340a7
Expose SummaryProvider for reuse by other parts of kubelet
2016-04-08 14:25:39 -04:00
Yu-Ju Hong
388b4ff569
kubele: add RSS memroy to the summary API
2016-04-08 11:05:20 -07:00
derekwaynecarr
a9e362d70c
Add memory available to summary stats provider
2016-04-08 12:30:41 -04:00
Scott Creeley
36970deeca
reword volume mount errUnsupportedVolume error and surface true error to describe event
2016-04-07 09:55:01 -04:00
Minhan Xia
3c58d1ffd3
switch to use ContainerID instead of DockerID in network plugin interface
2016-04-06 16:04:52 -07:00
Minhan Xia
f690220b5c
Merge pull request #23704 from freehan/kubenet
...
Update cni binary
#23712 is depending on this. Not sure why this one gets in first. Hand merging this
2016-04-06 15:47:42 -07:00
Paul Morie
b98ff213a9
Add godoc to kubelet/volumes.go
2016-04-06 02:16:36 -04:00
Random-Liu
8fb7ee38b0
Set fake docker client to minimum required version.
2016-04-04 17:41:01 -07:00
k8s-merge-robot
a2145d7b1c
Merge pull request #23613 from Random-Liu/remove-out-of-date-code
...
Automatic merge from submit-queue
Kubelet: Remove nsinit related code and bump up minimum docker apiversion
Docker has native exec support after 1.3.x. We never need this code now.
As for the apiversion, because Kubernetes supports 1.8.x - 1.10.x now, we should bump up the minimum docker apiversion.
@yujuhong I checked the [changes](https://github.com/docker/engine-api/blob/master/types/versions/v1p20/types.go ), we are not relying on any of those changes. So #23506 should work with docker 1.8.x+
2016-04-03 07:34:26 -07:00
harry
5fe773d37c
Add flow control pkg
...
Refactor pkg names in flow control related files
2016-04-03 11:28:03 +08:00
k8s-merge-robot
b43ccd6e2b
Merge pull request #23506 from Random-Liu/new-docker-client
...
Automatic merge from submit-queue
Kubelet: Start using the official docker engine-api
For #23563 .
This is the **first step** in the roadmap of switching to docker [engine-api](https://github.com/docker/engine-api ).
In this PR, I keep the old `DockerInterface` and implement it with the new engine-api.
With this approach, we could switch to engine-api with minimum change, so that we could:
* Test the engine-api without huge refactoring.
* Send following PRs to refactor functions in `DockerInterface` separately so as to avoid a huge change in one PR.
I've tested this PR locally, it passed all the node conformance test:
```
make test_e2e_node
Ran 19 of 19 Specs in 823.395 seconds
SUCCESS! -- 19 Passed | 0 Failed | 0 Pending | 0 Skipped PASS
Ginkgo ran 1 suite in 13m49.429979585s
Test Suite Passed
```
And it also passed the jenkins gce e2e test:
```
go run hack/e2e.go -test -v --test_args="--ginkgo.skip=\[Slow\]|\[Serial\]|\[Disruptive\]|\[Flaky\]|\[Feature:.+\]"
Ran 161 of 268 Specs in 4570.214 seconds
SUCCESS! -- 161 Passed | 0 Failed | 0 Pending | 107 Skipped PASS
Ginkgo ran 1 suite in 1h16m16.325934558s
Test Suite Passed
2016/03/25 15:12:42 e2e.go:196: Step 'Ginkgo tests' finished in 1h16m18.918754301s
```
I'm writing the design document, and will post the switching roadmap in an umbrella issue soon.
@kubernetes/sig-node
2016-04-02 04:51:33 -07:00
k8s-merge-robot
3b65927050
Merge pull request #16451 from ncdc/exec-interop-testing
...
Automatic merge from submit-queue
Refactor streaming code to support interop testing
Refactor exec/attach/port forward client and server code to better
support interop testing of different client and server subprotocol
versions.
Fixes #16119
2016-04-01 17:11:26 -07:00
derekwaynecarr
eeeccd0a67
A pod never terminated if a container image registry was unavailable
2016-04-01 13:42:23 -04:00
Andy Goldstein
4551ba6b53
Refactor exec code to support version skew testing
...
Refactor exec/attach client and server code to better support interoperability testing of different
client and server subprotocol versions.
2016-04-01 13:05:50 -04:00
Wlodzimierz Borkowski
378ef9746e
keep deprecated flag stage1-image with rkt
2016-04-01 09:32:10 +02:00
Minhan Xia
d026d7ecbc
Update cni binary
2016-03-31 13:57:51 -07:00
Random-Liu
5dbac3a8b8
Fix TerminationMessagePath
2016-03-30 16:03:49 -07:00
Dan Williams
fb97b8cdaa
Implement network plugin capabilities hook and shaping capability
...
Allow network plugins to declare that they handle shaping and that
Kuberenetes should not. Will be first used by openshift-sdn which
handles shaping through OVS, but this triggers a warning when
kubelet notices the bandwidth annotations.
2016-03-30 11:51:21 -05:00
Dan Williams
f1323103db
Embed NoopNetworkPlugin into other network plugins
...
Let Noop handle common functions.
2016-03-30 11:51:21 -05:00
k8s-merge-robot
6226cbe6ca
Merge pull request #23308 from yifan-gu/rkt_bump
...
Automatic merge from submit-queue
rkt: bump rkt version to 1.2.1
Upon bumping the rkt version, `--hostname` is supported. Also we now gets the configs from the rkt api service, so `stage1-image` is deprecated.
cc @yujuhong @Random-Liu
2016-03-30 05:42:58 -07:00
k8s-merge-robot
2a690cc5e2
Merge pull request #23059 from luxas/auto_arch_pause
...
Automatic merge from submit-queue
Make kubelet use an arch-specific pause image depending on GOARCH
Related to: #22876 , #22683 and #15140
@ixdy @pwittrock @brendandburns @mikedanese @yujuhong @thockin @zmerlynn
2016-03-29 23:27:42 -07:00
Random-Liu
1459a17dbe
Remove nsinit related code and bump up minimum docker apiversion
2016-03-29 18:21:50 -07:00
Rudi Chiarito
ca6bdba014
Allow lazy binding in credential providers; don't use it in AWS yet
...
This is step one for cross-region ECR support and has no visible effects yet.
I'm not crazy about the name LazyProvide. Perhaps the interface method could
remain like that and the package method of the same name could become
LateBind(). I still don't understand why the credential provider has a
DockerConfigEntry that has the same fields but is distinct from
docker.AuthConfiguration. I had to write a converter now that we do that in
more than one place.
In step two, I'll add another intermediate, lazy provider for each AWS region,
whose empty LazyAuthConfiguration will have a refresh time of months or years.
Behind the scenes, it'll use an actual ecrProvider with the usual ~12 hour
credentials, that will get created (and later refreshed) only when kubelet is
attempting to pull an image. If we simply turned ecrProvider directly into a
lazy provider, we would bypass all the caching and get new credentials for
each image pulled.
2016-03-29 15:39:30 -04:00
Yifan Gu
d4dc037bf7
rkt: Add '--hostname' support for rkt.
...
Add GeneratePodHostNameAndDomain() to RuntimeHelper to
get the hostname of the pod from kubelet.
Also update the logging flag to change the journal match from
_HOSTNAME to _MACHINE_ID.
2016-03-28 17:06:14 -07:00
Yifan Gu
d814d973ff
rkt: Bump rkt required version. Get options from api service.
2016-03-28 17:06:14 -07:00
Random-Liu
d2524bf291
Start using docker engine-api
2016-03-28 15:39:11 -07:00
k8s-merge-robot
2205a30348
Merge pull request #23368 from saad-ali/renameBuilderCleaner
...
Auto commit by PR queue bot
2016-03-26 13:01:25 -07:00
k8s-merge-robot
e44ad7a083
Merge pull request #22735 from resouer/throttle-dev
...
Auto commit by PR queue bot
2016-03-26 06:44:48 -07:00
goltermann
32d569d6c7
Fixing all the "composite literal uses unkeyed fields" Vet errors.
2016-03-25 15:25:09 -07:00
Lucas Käldström
c6172e58cf
Make kubelet use an arch-specific pause image depending on GOARCH
2016-03-25 23:45:59 +02:00
saadali
79012f6d53
Rename volume.Builder to Mounter and volume.Cleaner to Unmounter
2016-03-25 11:29:58 -07:00
harry
8472cfa214
Refactor throttle into util pkg
...
Fix missing throttle.go
2016-03-25 08:32:23 +08:00
goltermann
34d4eaea08
Fixing several (but not all) go vet errors. Most are around string formatting, or unreachable code.
2016-03-22 17:26:50 -07:00
k8s-merge-robot
8f71655bcc
Merge pull request #23325 from MurgaNikolay/master
...
Auto commit by PR queue bot
2016-03-22 11:47:38 -07:00
k8s-merge-robot
88d50f30d2
Merge pull request #23228 from yifan-gu/rkt_entry_cmd
...
Auto commit by PR queue bot
2016-03-22 08:07:41 -07:00
k8s-merge-robot
566d23e880
Merge pull request #23205 from yifan-gu/append_image_tag
...
Auto commit by PR queue bot
2016-03-22 07:30:52 -07:00
Nikolay Murga
70b918a2c0
Fix hairpin mode
2016-03-22 13:00:18 +02:00
k8s-merge-robot
a690c2ca76
Merge pull request #22914 from liggitt/test_export
...
Auto commit by PR queue bot
2016-03-21 23:06:46 -07:00
Jordan Liggitt
1d4c56c2f6
Move TestRuntimeCache into non-test file
2016-03-21 16:21:55 -04:00
harry
b0900bf0d4
Refactor diff into sub pkg
2016-03-21 20:21:39 +08:00
Yifan Gu
9d3d55d0fb
rkt: Unmarshal the ENTRYPOINT/CMD from jsons instead of strings.
...
Using json makes this robust to ENTRYPOINT/CMD that contains space.
Also removed 'RemainAfterExit' option, originally this option is
useful when we implement GetPods() by 'systemctl list-units'.
However since we are using rkt API service now, it's no longer needed.
2016-03-18 17:18:24 -07:00
Yifan Gu
89feb6fc53
rkt: Append tag to the returned image name.
2016-03-18 16:40:44 -07:00
k8s-merge-robot
61b9a21cfd
Merge pull request #23141 from yujuhong/fix_race
...
Auto commit by PR queue bot
2016-03-18 14:42:27 -07:00
Yu-Ju Hong
deafa44d61
kubelet: send all recevied pods in one update
...
The kubelet sync loop relies on getting one update as the signal that the
specific source is ready. This change ensures that we don't send multiple
updates (ADD, UPDATE) for the first batch of pods. This is required to prevent
the cleanup routine from killing pods prematurely.
2016-03-17 14:24:35 -07:00
Vishnu kannan
516559022c
1. Make kubelet default to 10ms for CPU quota if limit < 10m for
...
backwards compat.
2. Update documentation to reflect minimum CPU limits.
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-03-17 13:30:06 -07:00
Thomas Graf
90623d9b51
DockerManager: Support IPv6 addresses
...
Falls back to the GlobalIPv6Address or ip -6 addr output in case no
IPv4 is configured for the container.
Signed-off-by: Thomas Graf <tgraf@suug.ch>
2016-03-17 01:27:16 +01:00
tobad357
3d530f7f37
Fix for issue #22932 infinite pod restarts
...
This fixes an issue when using CNI where the hash of a Container object will differ between creation and change checks due to the docker image exporting ports
2016-03-16 22:43:39 +08:00
k8s-merge-robot
71a3b91ac1
Merge pull request #22966 from timstclair/server
...
Auto commit by PR queue bot
2016-03-16 04:54:27 -07:00
k8s-merge-robot
a4097fa4f1
Merge pull request #22891 from yifan-gu/rkt_version
...
Auto commit by PR queue bot
2016-03-16 00:04:55 -07:00
Yifan Gu
fe2c3c351a
rkt: Split checkVersion() to two parts: get version, and check version.
...
This enables rkt runtime to setup versions during creation,
this fixes a kubelet nil pointer panic when kubelet tries to get the
rkt versions but it's not set.
2016-03-15 16:35:26 -07:00
Vishnu kannan
d269775929
Update cadvisor linux module to work with the cadvisor v0.22.2
...
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-03-15 16:02:05 -07:00
Tim St. Clair
8cb820be0e
Set correct applicatoin/json mime type for some kubelet endpoints
2016-03-14 18:04:17 -07:00
k8s-merge-robot
3b208815fd
Merge pull request #22713 from yifan-gu/rkt_fix_entrypoint
...
Auto commit by PR queue bot
2016-03-12 01:41:53 -08:00
Avesh Agarwal
40e5d292c1
Fix parallel image pullers event messages with reasons constants.
2016-03-12 00:41:02 -05:00
Brian Grant
c6b4518aed
Merge pull request #22666 from pmorie/pod-ip-flake-redux
...
Fix flake in pod IP as env var e2e
2016-03-11 09:42:40 -08:00
Andy Goldstein
7230bd1096
Fix rkt GetPods() order
...
Use an array to store the pod IDs and use that to build the pod array with consistent ordering,
instead of map ordering, which is random and causes test flakes.
2016-03-11 12:32:22 -05:00
k8s-merge-robot
accd6a49be
Merge pull request #22767 from yifan-gu/rkt_getpods
...
Auto commit by PR queue bot
2016-03-11 04:08:38 -08:00
Paul Morie
5194c12d9e
Fix flake in pod IP as env var e2e
2016-03-10 16:32:03 -05:00
Yifan Gu
56be600c2b
rkt: Fix GetPods().
...
Group containers from different rkt pods into one k8s pod if
they have the same k8s pod UID.
2016-03-09 17:46:44 -08:00
Yifan Gu
4a63f7f74c
rkt: Support ENTRYPOINT/CMD substitution.
2016-03-08 18:32:18 -08:00
k8s-merge-robot
dba955e112
Merge pull request #22521 from wojtek-t/support_go_16_in_gofmt
...
Auto commit by PR queue bot
2016-03-08 13:14:45 -08:00
k8s-merge-robot
55530bc8f7
Merge pull request #22664 from bprashanth/cleanup-hairpin
...
Auto commit by PR queue bot
2016-03-08 05:36:18 -08:00
k8s-merge-robot
8b186991e2
Merge pull request #22607 from Random-Liu/restart-unknown-state-container
...
Auto commit by PR queue bot
2016-03-08 05:02:35 -08:00
Wojciech Tyczynski
525d14e0bc
Fix gofmt errors
2016-03-08 09:46:47 +01:00
k8s-merge-robot
bfde580cdd
Merge pull request #22656 from derekwaynecarr/fix_node_e2e_systemd
...
Auto commit by PR queue bot
2016-03-07 14:41:43 -08:00
derekwaynecarr
26dbbdb244
kubelet stats should ignore .mount cgroups associated with container on systemd
2016-03-07 14:57:29 -05:00
Prashanth Balasubramanian
544d0a5c05
Cleanup hairpin flag in the kubelet.
2016-03-07 11:55:09 -08:00
Xiaogang Xin
e2eccddc6f
kubernetes/kubernetes#22625 Fix issue of out-of-date Terminating
mirror pod status
...
- During `kubelet` `syncPod`, check mirror pod `DeletionTimestamp` value to determine whether re-create mirror pod for running static pod.
2016-03-07 13:42:41 +08:00
Yu-Ju Hong
b1a6ee26ef
Ignore "no such container" error when generating pod status
...
This allows the pod continue to sync if one container in a corrupt state.
2016-03-06 08:46:31 -08:00
k8s-merge-robot
8ab8231c20
Merge pull request #22577 from jpiccari/master
...
Auto commit by PR queue bot
2016-03-06 00:18:53 -08:00
k8s-merge-robot
fa0bf812d6
Merge pull request #22467 from Random-Liu/push-down-runtime-version-check
...
Auto commit by PR queue bot
2016-03-05 22:34:19 -08:00
k8s-merge-robot
357a9d1fdf
Merge pull request #22033 from yifan-gu/rkt_get_status
...
Auto commit by PR queue bot
2016-03-05 10:46:47 -08:00
k8s-merge-robot
f359bd96a7
Merge pull request #20578 from dcbw/dont-cni-hostnet-pods
...
Auto commit by PR queue bot
2016-03-05 09:03:12 -08:00
Lantao Liu
45064d7a1e
Always restart container in unknown state.
2016-03-05 10:42:26 +00:00
k8s-merge-robot
663f7b8a4c
Merge pull request #22487 from vishh/node-status-cpu-hardcap
...
Auto commit by PR queue bot
2016-03-05 02:32:33 -08:00
k8s-merge-robot
e9d3be83ae
Merge pull request #22241 from Random-Liu/recover-back-off-behaviour
...
Auto commit by PR queue bot
2016-03-05 00:05:15 -08:00
k8s-merge-robot
0f335df106
Merge pull request #22192 from bprashanth/timeout_client
...
Auto commit by PR queue bot
2016-03-04 22:59:24 -08:00
k8s-merge-robot
8ba70b573e
Merge pull request #22483 from yujuhong/force_update
...
Auto commit by PR queue bot
2016-03-04 22:26:14 -08:00
Random-Liu
07b21c50fa
Add Status in runtime interface and use it for runtime health check.
2016-03-04 21:26:41 -08:00
Joshua Piccari
f5f83b076a
Improve go report card by fixing typos in comments
2016-03-04 18:30:59 -08:00
Abhishek Shah
a3c00aadd5
Specify hostname, subdomain via annotation on podspec.
...
The hostname is a DNS A record, if the subdomain maps to a service name
in the same namespace
2016-03-04 13:28:33 -08:00
Vishnu kannan
c54ba12faa
Update node status to include the absense of cpu hardcapping.
...
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-03-04 10:33:56 -08:00
k8s-merge-robot
077fff8f4a
Merge pull request #22447 from yifan-gu/fix_log
...
Auto commit by PR queue bot
2016-03-04 08:01:51 -08:00
Dan Williams
bc62096ad5
Clean up host networking plugin checks for docker manager
...
We can save a docker inspect in podInfraContainerChanged() because
it's only used within the useHostNetwork() block. We can also
consolidate some code in createPodInfraContainer() because if
the pod uses the host network, no network plugin will be involved.
Finally, in syncPodWithSyncResult() we can consolidate some
conditionals because both hairpin setup and getting the container
IP are only relevant when host networking is *not* being used.
More specifically, putting the dm.determineContainerIP() call
into the !useHostNetwork() block is OK since if no network plugin
was called to set the container up, it makes no sense to call
the network plugin to retrieve the IP address that it did not
handle. The CNI plugin even calls back into the docker manager
to GetContainerIP() which grabs the IP from docker, which will
always be "" for host networked containers anyway.
2016-03-04 09:27:14 -06:00
k8s-merge-robot
c8038a7751
Merge pull request #22311 from vishh/22198
...
Auto commit by PR queue bot
2016-03-03 20:55:20 -08:00
Yu-Ju Hong
0264ebdda1
kubelet: force status update when the deletion timestamp is set
2016-03-03 16:24:56 -08:00
Jeff Lowdermilk
402e44d26e
Merge pull request #22320 from timstclair/network
...
Use the default interface for reporting network stats.
2016-03-03 15:18:34 -08:00
k8s-merge-robot
eb15cd9f7e
Merge pull request #21851 from timstclair/gc
...
Auto commit by PR queue bot
2016-03-03 11:39:12 -08:00
k8s-merge-robot
3f16f5f2b8
Merge pull request #22233 from yujuhong/pleg_health
...
Auto commit by PR queue bot
2016-03-03 11:01:26 -08:00
Yifan Gu
b7a058e290
rkt: Formats the timestamp to RFC3339.
...
This should fix the e2e test:
"should be able to retrieve and filter logs [Conformance]".
2016-03-03 10:47:18 -08:00
k8s-merge-robot
d81d823ca5
Merge pull request #22393 from eparis/blunderbuss
...
Auto commit by PR queue bot
2016-03-02 18:51:56 -08:00
Eric Paris
5e5a823294
Move blunderbuss assignees into tree
2016-03-02 20:46:32 -05:00
Jeff Lowdermilk
bb4e8365bd
Merge pull request #22327 from yujuhong/pleg_tests
...
pleg: add more tests for detecting missing container/pods
2016-03-02 16:15:31 -08:00
Vishnu kannan
f9129b02a5
Start for real background tasks in container manager.
...
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-03-02 14:55:26 -08:00
Tim St. Clair
3ad59de829
Garbage collect containers for deleted pods
2016-03-02 14:35:17 -08:00
Yu-Ju Hong
4846c1e1b2
pleg: add an internal clock for testability
...
Also add tests for the health check.
2016-03-01 17:53:03 -08:00
Random-Liu
a88dad1c3e
Backoff restart container with liveness probing failure
2016-03-01 17:36:12 -08:00
Yu-Ju Hong
94368df91a
kubelet: monitor the health of pleg
...
PLEG is reponsible for listing the pods running on the node. If it's hung
due to non-responsive container runtime or internal bugs, we should restart
kubelet.
2016-03-01 17:24:27 -08:00
Yu-Ju Hong
e770f25882
pleg: add more tests for detecting missing container/pods
2016-03-01 17:23:23 -08:00
Dawn Chen
a90ac42dd8
Kill docker daemon after configing cbr0 if flag --babysit-daemon is true so that babysitter process can restart it again with proper configurations and checkpoint file.
2016-03-01 16:46:31 -08:00
Tim St. Clair
3b9feb561c
Use the default interface for reporting network stats.
2016-03-01 16:17:04 -08:00
Saad Ali
719158d2c8
Merge pull request #22277 from gmarek/spam
...
Reduce spam in Kubelet logs
2016-03-01 15:48:59 -08:00
Saad Ali
f9b1a33b12
Merge pull request #21953 from timstclair/testing
...
Move kubelet test-only files to test-only packages
2016-03-01 15:48:10 -08:00
Saad Ali
c4ccd5188f
Merge pull request #22110 from timstclair/volumetest
...
Move test-only volume files to test-only volume package
2016-03-01 15:47:41 -08:00
k8s-merge-robot
e7fb1a29e1
Merge pull request #22107 from yujuhong/stop_probing
...
Auto commit by PR queue bot
2016-03-01 14:17:50 -08:00
k8s-merge-robot
6dee237d85
Merge pull request #21790 from vishh/seccomp
...
Auto commit by PR queue bot
2016-03-01 12:21:47 -08:00
Tim St. Clair
7b6d843309
Move test-only files to test-only packages
2016-03-01 09:11:32 -08:00
gmarek
459c954ff8
Reduce spam in Kubelet logs
2016-03-01 15:50:25 +01:00
Wojciech Tyczynski
4a7af87984
Set requests in scalability tests
2016-03-01 12:15:23 +01:00
Tim St. Clair
246b389275
Move test-only volume files to test-only volume package
2016-02-29 14:44:28 -08:00
Saad Ali
4183ac174b
Merge pull request #21408 from krousey/unversioned_breakup
...
Move restclient to it's own package
2016-02-29 14:03:09 -08:00
Prashanth Balasubramanian
fe0f1121d5
Continue logging failure to contact metadata url, fix conn leak.
2016-02-29 12:47:19 -08:00
Kris
e664ef922f
Move restclient to its own package
2016-02-29 12:05:13 -08:00
Yu-Ju Hong
866c52c8a9
kubelet: fix duplicated status updates at pod cleanup
...
cleanupTerminatedPods is responsible for checking whether a pod has been
terminated and force a status update to trigger the pod deletion. However, this
function is called in the periodic clenup routine, which runs every 2 seconds.
In other words, it forces a status update for each non-running (and not yet
deleted in the apiserver) pod. When batch deleting tens of pods, the rate of
new updates surpasses what the status manager can handle, causing numerous
redundant requests (and the status channel to be full).
This change forces a status update only when detecting the DeletionTimestamp is
set for a terminated pod. Note that for other non-terminated pods, the pod
workers should be responsible for setting the correct status after killling all
the containers.
2016-02-28 13:20:40 -08:00
Random-Liu
98283d894c
dockertools: fix error exited container list in fake docker client
2016-02-28 13:19:57 -08:00
Random-Liu
96eeb812ff
kubelet: clear current pod records before relist
2016-02-28 13:19:47 -08:00
Yu-Ju Hong
388689238b
pleg: ensure the cache is updated whenever container are removed
...
Even though we don't rely on the cache for garbage collection yet, we should
keep it up-to-date.
2016-02-28 13:16:34 -08:00
k8s-merge-robot
527d3e6739
Merge pull request #21728 from yifan-gu/rkt_fix_kill
...
Auto commit by PR queue bot
2016-02-27 17:45:44 -08:00
Justin Santa Barbara
2f058fc681
Merge pull request #21499 from swagiaal/count-refs-in-kubelet
...
Auto commit by PR queue bot
2016-02-27 18:49:08 -05:00
k8s-merge-robot
6b8e0d45f0
Merge pull request #21349 from Random-Liu/cleanup-should-container-be-restarted
...
Auto commit by PR queue bot
2016-02-27 09:50:26 -08:00
k8s-merge-robot
f0c0af2561
Merge pull request #20528 from mikedanese/varz
...
Auto commit by PR queue bot
2016-02-27 00:27:18 -08:00
Yu-Ju Hong
1a3d205faf
kubelet: stop probing if liveness check fails
...
This change puts the worker on hold when the liveness check fails. It will
resume probing when observing a new container ID.
2016-02-26 17:12:27 -08:00
k8s-merge-robot
2bca7c5287
Merge pull request #21337 from vishh/ensure-runtime-cgroups
...
Auto commit by PR queue bot
2016-02-26 16:52:14 -08:00
Fabio Yeon
9eed320088
Merge pull request #21740 from Random-Liu/fix-syncpod-unit-test
...
Fix error logic and leaking goroutine in docker unit test.
2016-02-26 15:51:35 -08:00
Fabio Yeon
7d0684e9c4
Merge pull request #21628 from smarterclayton/suppress_debug_logging
...
Reduce volume of logs generated at v(3)
2016-02-26 15:47:31 -08:00
Fabio Yeon
a56a315d99
Revert "kubelet: fix duplicated status updates at pod cleanup"
2016-02-26 14:39:11 -08:00
Fabio Yeon
a7165042af
Merge pull request #21781 from ncdc/skip-probe-if-container-id-not-set
...
Skip probe if container ID not yet set
2016-02-26 13:20:48 -08:00
Yifan Gu
168ec8b80f
kubelet: Sort the container statuses in convertStatusToAPIStatus().
2016-02-26 11:27:03 -08:00
k8s-merge-robot
93c005e37c
Merge pull request #21999 from yujuhong/log_more
...
Auto commit by PR queue bot
2016-02-26 05:51:07 -08:00
k8s-merge-robot
95b7fbf6f8
Merge pull request #21959 from Random-Liu/terminated_pods
...
Auto commit by PR queue bot
2016-02-25 20:41:55 -08:00
Sami Wagiaalla
8c21967dd8
Only call Detacher after the final unmount
2016-02-25 14:11:07 -05:00
k8s-merge-robot
82b0f0ff5e
Merge pull request #20940 from pwittrock/volume-sync
...
Auto commit by PR queue bot
2016-02-25 02:29:31 -08:00
k8s-merge-robot
33ef7a93a4
Merge pull request #20647 from dcbw/allow-disabling-bridge-nf-call-iptables
...
Auto commit by PR queue bot
2016-02-25 01:27:47 -08:00
Yu-Ju Hong
99587b7e3a
kubelet: fix duplicated status updates at pod cleanup
...
cleanupTerminatedPods is responsible for checking whether a pod has been
terminated and force a status update to trigger the pod deletion. However, this
function is called in the periodic clenup routine, which runs every 2 seconds.
In other words, it forces a status update for each non-running (and not yet
deleted in the apiserver) pod. When batch deleting tens of pods, the rate of
new updates surpasses what the status manager can handle, causing numerous
redundant requests (and the status channel to be full).
This change forces a status update only when detecting the DeletionTimestamp is
set for a terminated pod. Note that for other non-terminated pods, the pod
workers should be responsible for setting the correct status after killling all
the containers.
2016-02-24 21:23:41 -08:00
Random-Liu
61f7a5d228
Fix bug in fake docker client
2016-02-24 21:23:41 -08:00
Yu-Ju Hong
f9880d4a3a
kubelet: lower the verbosity level of some logging messages
2016-02-24 18:42:26 -08:00
k8s-merge-robot
dcbeacded0
Merge pull request #21521 from mesosphere/jdef_kubelet_options1
...
Auto commit by PR queue bot
2016-02-24 18:35:10 -08:00
Mike Danese
5ec02bd021
add http handler to export configuration state
2016-02-24 14:12:28 -08:00
Vishnu kannan
5db37b0b2d
Disable seccomp policy by default on docker versions >= v1.10
...
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-02-24 10:26:21 -08:00
Marek Grabowski
4f12103354
Revert "kubelet: fix duplicated status updates at pod cleanup"
2016-02-24 17:57:57 +01:00
k8s-merge-robot
d30c709a24
Merge pull request #21732 from Random-Liu/terminated_pods
...
Auto commit by PR queue bot
2016-02-24 05:10:25 -08:00
Abhi Shah
5f553a218e
Merge pull request #21724 from freehan/imagepull
...
fix cascading backoff
2016-02-23 17:53:35 -08:00
Andy Goldstein
51251ef5c1
Skip probe if container ID not yet set
...
If the container status exists but the container hasn't been created yet, it won't have an ID.
Have the probe wait for a valid status if the container ID is not yet set; otherwise, you'll see the
following cryptic log message from runtime.go: invalid container ID: "".
2016-02-23 15:32:13 -05:00
Dan Williams
6248939e11
Push responsibility for bridge-nf-call-iptables to kubelet network plugins
...
bridge-nf-call-iptables appears to only be relevant when the containers are
attached to a Linux bridge, which is usually the case with default Kubernetes
setups, docker, and flannel. That ensures that the container traffic is
actually subject to the iptables rules since it traverses a Linux bridge
and bridged traffic is only subject to iptables when bridge-nf-call-iptables=1.
But with other networking solutions (like openshift-sdn) that don't use Linux
bridges, bridge-nf-call-iptables may not be not relevant, because iptables is
invoked at other points not involving a Linux bridge.
The decision to set bridge-nf-call-iptables should be influenced by networking
plugins, so push the responsiblity out to them. If no network plugin is
specified, fall back to the existing bridge-nf-call-iptables=1 behavior.
2016-02-23 09:34:59 -06:00
Random-Liu
3338304c7b
Fix error logic and leaking goroutine in docker unit test.
2016-02-23 01:29:05 -08:00
Yu-Ju Hong
a68f534264
kubelet: fix duplicated status updates at pod cleanup
...
cleanupTerminatedPods is responsible for checking whether a pod has been
terminated and force a status update to trigger the pod deletion. However, this
function is called in the periodic clenup routine, which runs every 2 seconds.
In other words, it forces a status update for each non-running (and not yet
deleted in the apiserver) pod. When batch deleting tens of pods, the rate of
new updates surpasses what the status manager can handle, causing numerous
redundant requests (and the status channel to be full).
This change forces a status update only when detecting the DeletionTimestamp is
set for a terminated pod. Note that for other non-terminated pods, the pod
workers should be responsible for setting the correct status after killling all
the containers.
2016-02-23 01:03:04 -08:00
Random-Liu
da99f672fc
Fix bug in fake docker client
2016-02-23 00:59:15 -08:00
k8s-merge-robot
3a12b03710
Merge pull request #21448 from timstclair/worker-race
...
Auto commit by PR queue bot
2016-02-23 00:49:28 -08:00
Random-Liu
33280abf42
Cleanup and add unit test for ShouldContainerBeRestarted
2016-02-23 00:42:52 -08:00
Minhan Xia
973b01ee29
fix cascading backoff
2016-02-22 18:25:42 -08:00
Yifan Gu
2d2225414f
rkt: fix KillPod() to return the correct error message.
2016-02-22 17:07:31 -08:00
Dawn Chen
699c80b752
Merge pull request #21641 from bprashanth/promisc
...
Teach the kubelet about promiscuous mode, take 2
2016-02-22 15:08:18 -08:00
Tim St. Clair
15d44d182a
Fix possible data race in prober
2016-02-22 10:27:57 -08:00
Phillip Wittrock
7bca355bb4
Spread pod volume metrics calc across calc period. Metrics are calculated independently.
2016-02-22 09:54:47 -08:00
dingh
40f6032d33
fix typo in test
2016-02-22 15:08:02 +08:00
k8s-merge-robot
24d82b6c4a
Merge pull request #21286 from smarterclayton/fix_keyring
...
Auto commit by PR queue bot
2016-02-21 21:44:27 -08:00
Prashanth Balasubramanian
c97e8df65b
Stricter checking of HAIRPIN_FLAG in salt.
2016-02-21 14:43:43 -08:00
Prashanth Balasubramanian
2e8ff81de1
Teach the kubelet about --hairpin-mode=promiscuous-bridge.
2016-02-20 22:40:54 -08:00
Clayton Coleman
ae2f6a833a
Reduce volume of logs generated at v(3)
...
Node controller is generating a huge amount of logging at v(3) that is
more appropriate for v(5). Split the log into two levels and ensure it
also ends up on one line (so grep works).
The pod manager generates a v(4) pod output on sync that always contains
a newline - since the size of the pod is so excessive in output, kick it
to v(5) for deep debugging (we're pretty happy with this loop).
2016-02-20 15:29:05 -05:00
k8s-merge-robot
807344da0b
Merge pull request #21235 from davidopp/affinity-docs
...
Auto commit by PR queue bot
2016-02-20 11:15:02 -08:00
Daniel Smith
a8b943dddd
Revert "Put the container bridge in promiscuous mode."
2016-02-19 23:14:53 -08:00
James DeFelice
6c09689c60
add functional Option type to Kubelet, add SetNodeStatus Option, migrate node statue update funcs to slice of callbacks
2016-02-20 02:09:54 +00:00
Prashanth Balasubramanian
a694a7ae4b
Teach the kubelet about --hairpin-mode=promiscuous-bridge.
2016-02-19 14:59:16 -08:00
k8s-merge-robot
057b8352ec
Merge pull request #21182 from vishh/repoTagsRename
...
Auto commit by PR queue bot
2016-02-19 08:56:09 -08:00
k8s-merge-robot
eb45154996
Merge pull request #21348 from caesarxuchao/generate-fake-for-1-2
...
Auto commit by PR queue bot
2016-02-18 23:02:05 -08:00
David Oppenheimer
053f1c6008
Update user guide and scheduler documentation to describe node affinity.
...
Register image priority locality function, which the original PR that introduced
it forgot to do. Change zone and region labels to beta.
2016-02-18 17:09:41 -08:00
Phillip Wittrock
c6fea28e83
Merge pull request #21368 from timstclair/summary-api
...
Move stats summary types to a new kubelet/api package to avoid unnece…
2016-02-18 16:05:34 -08:00
k8s-merge-robot
a39b62bb22
Merge pull request #21417 from yujuhong/docker_container
...
Auto commit by PR queue bot
2016-02-18 14:31:37 -08:00
k8s-merge-robot
5acdb92126
Merge pull request #21177 from laushinka/spelling-fixes
...
Auto commit by PR queue bot
2016-02-18 10:29:49 -08:00
Clayton Coleman
8c27314915
Unqualified host:port pairs are valid Docker auth fields
...
The dockercfg and .docker/config.json files can contain host:path
combos, which are not correctly parsed by the keyring.
2016-02-18 13:18:34 -05:00
k8s-merge-robot
f0b56409cc
Merge pull request #21197 from yujuhong/deleted_pod
...
Auto commit by PR queue bot
2016-02-18 01:02:40 -08:00
Chao Xu
ad46715f51
generate fake client for release_1_2
2016-02-17 16:10:02 -08:00
laushinka
7ef585be22
Spelling fixes inspired by github.com/client9/misspell
2016-02-18 06:58:05 +07:00
Yu-Ju Hong
7061ba20bb
Fix finding pid of a process
2016-02-17 12:43:16 -08:00
Tim St. Clair
225f903ccf
Move stats summary types to a new kubelet/api package to avoid unnecessary dependencies
2016-02-17 10:53:25 -08:00
k8s-merge-robot
1a2f811a3b
Merge pull request #20063 from mqliang/imageGC-config
...
Auto commit by PR queue bot
2016-02-17 06:16:45 -08:00
Vishnu kannan
8d0370ede3
Do not set container runtime health check until on kubelet init.
...
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-02-16 16:40:48 -08:00
Vishnu kannan
7de6a25383
Identify runtime's cgroups periodically to avoid race with runtime
...
uptime.
The runtime could also move between cgroups.
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-02-16 16:39:48 -08:00
Vishnu kannan
2623fdde17
Improve the naming of fields in ContainerImage struct used in NodeStatus.
...
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-02-16 15:45:22 -08:00
k8s-merge-robot
180d34ed52
Merge pull request #21120 from Random-Liu/minor-probe-manager-refactor
...
Auto commit by PR queue bot
2016-02-15 19:41:45 -08:00
mqliang
641ba92aa3
move minGCAge to ImageGCPolicy and make it configurable
2016-02-15 22:54:54 +08:00
k8s-merge-robot
44d12a1389
Merge pull request #20782 from nickschuch/readonly_container_2
...
Auto commit by PR queue bot
2016-02-14 13:18:24 -08:00
k8s-merge-robot
b6056f9a45
Merge pull request #21014 from Random-Liu/unit-test-for-pod-sync-result
...
Auto commit by PR queue bot
2016-02-14 09:53:59 -08:00
Nick Schuch
5d511aeb54
Adds ReadOnlyRootFilesystem support for containers
2016-02-14 15:39:51 +10:00
k8s-merge-robot
24b33964c9
Merge pull request #20954 from Random-Liu/add-missing-pod-sync-result
...
Auto commit by PR queue bot
2016-02-13 20:02:31 -08:00
k8s-merge-robot
d6b4ff3884
Merge pull request #20909 from Clarifai/instance-type-label
...
Auto commit by PR queue bot
2016-02-13 18:51:42 -08:00
Yu-Ju Hong
3072754c8b
Avoid unnecessary GET request when updating pod status
...
When sending out an pod status update, kubelet
GETs the pod from the apiserver
Terminates if the apiserver returns an not found error; otherwise, proceed to
to update.
Even after a pod has been deleted, there might still be queued up updates for
the pod. This leads to expensive, unncessary GET operations. The situation is
worse when there are batch creation/deletion of a significant number of pods
(e.g., E2E tests), leaving many updates in the queue.
This change checks whether a pod exists before GET the pod from the apiserver
to avoid redundant GETs.
2016-02-12 14:59:18 -08:00
Random-Liu
ae759dc206
Add unit test for PodSyncResult
2016-02-12 14:15:25 -08:00
k8s-merge-robot
4a24406579
Merge pull request #20990 from timstclair/summary-api
...
Auto commit by PR queue bot
2016-02-12 13:25:25 -08:00
Rudi Chiarito
b3863eae82
Add instance-type label to cloud providers
...
Fully implemented for AWS and GCE
2016-02-12 15:02:03 -05:00
Lantao Liu
77b6f14f86
Change pod in probe update to pod uid.
2016-02-12 05:02:31 +00:00
k8s-merge-robot
f6ae6b47ae
Merge pull request #20687 from vishh/systemd-support
...
Auto commit by PR queue bot
2016-02-11 13:06:29 -08:00
k8s-merge-robot
55267640bc
Merge pull request #20842 from Random-Liu/deprecate-hostconfig-at-container-start
...
Auto commit by PR queue bot
2016-02-10 20:00:08 -08:00
Vishnu kannan
575812787d
Replace --resource-container
and --system-container
with
...
`--kubelet-cgroups` and `--system-cgroups` respectively.
Updated `--runtime-container` to `--runtime-cgroups`.
Cleaned up most of the kubelet code that consumes these flags to match
the flag name changes.
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-02-10 17:33:28 -08:00
Lantao Liu
c341cee65b
Fix network configuration
2016-02-10 16:51:34 -08:00
Vishnu kannan
38efc837b9
Make container runtime's cgroup configurable.
...
Use the real cgroups for metrics generation.
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-02-10 16:02:34 -08:00
Tim St. Clair
7a54f94cf4
Make summary timestamps more granular
2016-02-10 15:41:57 -08:00
k8s-merge-robot
c382943353
Merge pull request #20726 from ingvagabund/jitter-sync-loops-in-kubelet
...
Auto commit by PR queue bot
2016-02-10 09:06:59 -08:00
k8s-merge-robot
a2086d4150
Merge pull request #20816 from yifan-gu/termination_log_anno
...
Auto commit by PR queue bot
2016-02-10 00:26:48 -08:00
k8s-merge-robot
c6ed624bfb
Merge pull request #19503 from markturansky/attacher_interface
...
Auto commit by PR queue bot
2016-02-09 20:50:41 -08:00
k8s-merge-robot
b97214304c
Merge pull request #20942 from Random-Liu/fix-bug-in-sync-loop
...
Auto commit by PR queue bot
2016-02-09 20:24:02 -08:00
Random-Liu
b7292f6672
Add missing PodSyncResult in KillPod
2016-02-09 18:28:26 -08:00
Prashanth B
f0620a5efd
Merge pull request #20883 from bprashanth/kubelet_flag
...
Kubelet flag for disabling hairpin mode
2016-02-09 17:31:30 -08:00
Random-Liu
e3ea0b1cbb
Stop using pod from livenessManager in main sync loop
2016-02-09 16:32:54 -08:00
k8s-merge-robot
2ec49efd54
Merge pull request #19945 from Clarifai/fix-formatting
...
Auto commit by PR queue bot
2016-02-09 16:05:00 -08:00
Prashanth Balasubramanian
c3a3a2bacd
Pipe hairpin-mode flag through kubelet, enable on soak.
2016-02-09 12:12:19 -08:00
Jan Chaloupka
392fc6668f
Jittering periods of some kubelet's sync loops:
...
- pod_workers: pod syncing
- prober workers: container syncing
In order to synchronize the current state of Kubernetes's objects (e.g. pods, containers, etc.),
periodic synch loops are run. When there is a lot of objects to synchronize with,
loops increase communication traffic. At some point when all the traffic interfere cpu usage curve
hits the roof causing 100% cpu utilization.
To distribute the traffic in time, some sync loops can jitter their period in each loop
and help to flatten the curve.
2016-02-09 15:22:22 +01:00
k8s-merge-robot
c4b66f66f3
Merge pull request #20848 from pmorie/dead-code
...
Auto commit by PR queue bot
2016-02-09 06:10:07 -08:00
k8s-merge-robot
71bcc25409
Merge pull request #20817 from yifan-gu/remove_ShouldContainerBeRestartedOldVersion
...
Auto commit by PR queue bot
2016-02-09 04:36:36 -08:00
Yifan Gu
b14ac9481a
rkt: Add hyphen in the annotation key.
2016-02-09 14:50:25 +08:00
k8s-merge-robot
fce98f3cf2
Merge pull request #20827 from smarterclayton/fix_manager
...
Auto commit by PR queue bot
2016-02-08 21:13:42 -08:00
k8s-merge-robot
8fcc105d6d
Merge pull request #20444 from ncdc/flake/19466
...
Auto commit by PR queue bot
2016-02-08 20:46:03 -08:00
Andy Goldstein
a45247ad2a
Fix exec/attach test flakes
...
Ensure that stream reply frames are enqueued prior to any goaway frames.
2016-02-08 21:33:23 -05:00
Clayton Coleman
5aca495d73
Regression: Kubelet fails on older distro Dockers
...
Changes broke compatibility with released versions of Docker on some
distributions like Fedora and RHEL (value 1.8.1.fc21 is in the wild).
2016-02-08 19:00:01 -05:00
k8s-merge-robot
14653d6b5a
Merge pull request #20169 from vishh/20117
...
Auto commit by PR queue bot
2016-02-08 15:25:45 -08:00
Paul Morie
c6ab0a8677
Remove unused getRuntimePodStatus func from Kubelet
2016-02-08 16:46:11 -05:00
k8s-merge-robot
1e6784edb4
Merge pull request #20741 from timstclair/probe
...
Auto commit by PR queue bot
2016-02-08 12:35:58 -08:00
k8s-merge-robot
230f593058
Merge pull request #20383 from smarterclayton/allow_prefix_changes
...
Auto commit by PR queue bot
2016-02-08 12:04:46 -08:00
Tim St. Clair
da0d37f1e0
Fix panic from multiple probe cleanup calls.
2016-02-08 11:23:07 -08:00
Yifan Gu
8964469e4a
rkt: Remove ShouldContainerBeRestartedOldVersion().
2016-02-09 00:15:58 +08:00
Yifan Gu
8e5c14f1bf
rkt: Annotation key should not container capital letters.
2016-02-09 00:13:08 +08:00
James DeFelice
1aec798aa0
support optional envvars for pod-infra-container
2016-02-08 13:48:25 +00:00
markturansky
a242a3d5fe
Added Attacher/Detacher interfaces and support to kubelet
2016-02-07 16:55:58 -05:00
Jan Chaloupka
4389b3f0d6
Rewritte util.* -> wait.* wherever reasonable
2016-02-07 12:02:20 +01:00
k8s-merge-robot
c8e5e89491
Merge pull request #20395 from jimmidyson/system-container-fix
...
Auto commit by PR queue bot
2016-02-06 04:06:42 -08:00
k8s-merge-robot
fcf9c4a1e4
Merge pull request #19741 from pwittrock/syncfsmetrics
...
Auto commit by PR queue bot
2016-02-05 17:54:22 -08:00
k8s-merge-robot
8163b6ce97
Merge pull request #20671 from vishh/avoid-moving-all-dockers
...
Auto commit by PR queue bot
2016-02-05 16:49:03 -08:00
Phillip Wittrock
3de94cd23c
Supply volume fs metrics to server/stats/handler.go
...
* Metrics will not be expose until they are hooked up to a handler
* Metrics are not cached and expose a dos vector, this must be fixed before release or the stats should not be exposed through an api endpoint
2016-02-05 16:00:24 -08:00
Daniel Smith
f973af25fa
Merge pull request #20747 from caesarxuchao/internalclientset
...
rename release_1_2 to internalclientset
2016-02-05 15:49:08 -08:00
Chao Xu
184440f8ef
rename release_1_2 to internalclientset
2016-02-05 14:02:28 -08:00
Daniel Smith
75e1451363
Merge pull request #20742 from kubernetes/revert-20615-deprecate-hostconfig-at-container-start
...
Revert "Deprecate HostConfig at container start"
2016-02-05 14:01:43 -08:00
Lantao Liu
bb9457e7a3
Revert "Deprecate HostConfig at container start"
2016-02-05 12:50:35 -08:00
Random-Liu
45e3a1f596
Remove old reason cache
2016-02-05 19:19:46 +00:00
Random-Liu
2b7d0182ca
Remove ConvertPodStatusToAPIPodStatus from runtime interface
2016-02-05 19:19:46 +00:00
k8s-merge-robot
bd67b8a5db
Merge pull request #20192 from Random-Liu/remove-get-api-podstatus
...
Auto commit by PR queue bot
2016-02-05 11:00:42 -08:00
Rudi Chiarito
a2d1bb7acf
Add httpHeaders to httpGet liveness probe
...
Also update existing documentation and try to steer users away from 'host'.
Add validation.
2016-02-05 11:20:04 -05:00
k8s-merge-robot
ae15a4437b
Merge pull request #19944 from mwielgus/simple-cm
...
Auto commit by PR queue bot
2016-02-05 06:41:28 -08:00
k8s-merge-robot
df0bbd45d7
Merge pull request #20615 from Random-Liu/deprecate-hostconfig-at-container-start
...
Auto commit by PR queue bot
2016-02-05 04:54:28 -08:00
Marcin Wielgus
bf0c881263
Set Docker custom metric label for cAdvisor if custom metric volume is mounted
2016-02-05 12:00:02 +01:00
k8s-merge-robot
c09b67f60f
Merge pull request #20591 from caesarxuchao/legacy-to-core
...
Auto commit by PR queue bot
2016-02-04 17:37:12 -08:00
k8s-merge-robot
2084fba199
Merge pull request #18842 from vishh/kubelet_docker
...
Auto commit by PR queue bot
2016-02-04 17:08:34 -08:00
Lantao Liu
8118092d11
Deprecate HostConfig at container start
2016-02-04 15:35:14 -08:00
Chao Xu
1b047f8e67
rename legacy to core
2016-02-04 14:26:56 -08:00
Phillip Wittrock
ba5be34574
Kubelet Metrics Summary Api Implementation
2016-02-04 14:05:28 -08:00
Vishnu kannan
df1f164b34
Do not fail container creation if the contaienr exits before applyting
...
oom score adjust.
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-02-04 13:39:19 -08:00
Vishnu kannan
62fe566e68
Kubelet will not move docker daemons running in containers.
...
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-02-04 13:34:56 -08:00
Saad Ali
7d70edc91f
Merge pull request #20553 from jonboulle/yifan-gu-rkt_dns
...
rkt: Add DNS support
2016-02-04 10:55:38 -08:00
k8s-merge-robot
65ebe19164
Merge pull request #20584 from caesarxuchao/release_1_2
...
Auto commit by PR queue bot
2016-02-03 19:46:27 -08:00
k8s-merge-robot
bb7ad7cd09
Merge pull request #18795 from dcbw/cbr0-network-plugin
...
Auto commit by PR queue bot
2016-02-03 19:46:25 -08:00
Lantao Liu
4a386f881f
Deprecate HostConfig at container start
2016-02-04 01:00:03 +00:00
Saad Ali
25f02f19e1
Merge pull request #20603 from pmorie/pod-ip-debug
...
Make it easier to debug pod IP flakes for downward API
2016-02-03 16:09:33 -08:00
Paul Morie
1db0925521
Make it easier to debug pod IP flakes for downward API
2016-02-03 18:26:07 -05:00
Chao Xu
f9f5736b01
grep sed
2016-02-03 13:06:07 -08:00
Rudi Chiarito
a0831a2378
Mass fix of Infof and co. missing the trailing "f", even when formatting placeholders are used
2016-02-03 11:34:59 -05:00
Dan Williams
fabb65c13f
Add a network plugin that duplicates "configureCBR0" functionality
2016-02-03 10:08:08 -06:00
Dan Williams
67414afd11
Send PodCIDR to network plugins as an event
2016-02-03 10:08:07 -06:00
Yifan Gu
d27a635c4a
rkt: Add DNS support.
...
rkt is now able to populate /etc/resolv.conf with command line flags.
Update the runtime code to fix DNS issues.
2016-02-03 14:54:09 +01:00
Yifan Gu
e9139bb0e5
kubelet: Rename RunContainerOptionsGenerator to RuntimeHelper.
...
Also add GetClusterDNS() to the interface to let rkt get the
DNS servers, DNS names.
2016-02-03 14:54:08 +01:00
Jan Safranek
e90de3f985
Fixed cleanup of persistent volumes.
...
Kubelet.cleanupOrphanedVolumes() compares list of volumes mounted to a node
with list of volumes that are required by pods scheduled on the node
("scheduled volume").
Both lists should contain real volumes, i.e. when a pod uses
PersistentVolumeClaim, the list must contain name of the bound volume instead
of name of the claim.
2016-02-03 10:00:09 +01:00
k8s-merge-robot
843c11e06a
Merge pull request #20452 from caesarxuchao/replace-client-kubelet
...
Auto commit by PR queue bot
2016-02-02 23:46:58 -08:00
Chao Xu
cddd7b56a4
replace client with clientset in kubelet and other places
2016-02-02 20:28:45 -08:00
Jeff Lowdermilk
ae2aece9af
Merge pull request #20202 from caesarxuchao/skip-update
...
skip update when deleting with grace-period=0
2016-02-02 18:24:57 -08:00
Jeff Lowdermilk
caa9433234
Merge pull request #20433 from lavalamp/fix-bad-rv
...
Add timeout, fix potential startup hang
2016-02-02 17:27:23 -08:00
Random-Liu
7b4cdb6f8f
Remove GetAPIPodStatus from runtime interface
2016-02-02 23:41:55 +00:00
Random-Liu
41b12a18d9
Remove GetAPIPodStatus usage
2016-02-02 23:41:55 +00:00
Chao Xu
a6d96a04d0
make kubelet.HandlePodsDeletion aware of api.Pod
2016-02-02 13:01:17 -08:00
k8s-merge-robot
e78834ab62
Merge pull request #20337 from yifan-gu/rkt_empty_isolator
...
Auto commit by PR queue bot
2016-02-02 09:56:04 -08:00
k8s-merge-robot
23c64ec103
Merge pull request #20233 from yifan-gu/rkt_fix_user_group
...
Auto commit by PR queue bot
2016-02-02 08:47:08 -08:00
k8s-merge-robot
c0fd002fbb
Merge pull request #20019 from thockin/dont-cni-hostnet-pods
...
Auto commit by PR queue bot
2016-02-02 01:43:24 -08:00
k8s-merge-robot
71ae2736c0
Merge pull request #19889 from yujuhong/replace_cache
...
Auto commit by PR queue bot
2016-02-02 00:41:06 -08:00
k8s-merge-robot
126f798699
Merge pull request #19942 from yujuhong/mirror_creation
...
Auto commit by PR queue bot
2016-02-01 22:55:38 -08:00
Yu-Ju Hong
ff04de4fc0
Remove RuntimeCache from sync path
...
This change removes RuntimeCache in the pod workers and the syncPod() function.
Note that it doesn't deprecate RuntimeCache completely as other components
still rely on the cache.
2016-02-01 21:32:41 -08:00
k8s-merge-robot
32ab64ce5b
Merge pull request #19778 from resouer/runtime
...
Auto commit by PR queue bot
2016-02-01 21:05:05 -08:00
k8s-merge-robot
348858061d
Merge pull request #20258 from smarterclayton/get_logs_for_any_container
...
Auto commit by PR queue bot
2016-02-01 16:24:20 -08:00
Daniel Smith
4a7d70aef1
extend fake clock
2016-02-01 15:36:15 -08:00
k8s-merge-robot
feb4b4857c
Merge pull request #19890 from vishh/0-nodes
...
Auto commit by PR queue bot
2016-02-01 14:09:06 -08:00
k8s-merge-robot
7e158006c0
Merge pull request #19940 from yujuhong/fix_update
...
Auto commit by PR queue bot
2016-02-01 13:35:54 -08:00
k8s-merge-robot
171c2ecbe7
Merge pull request #19524 from derekparker/rkt-image-size
...
Auto commit by PR queue bot
2016-02-01 11:53:36 -08:00
k8s-merge-robot
a68f952a61
Merge pull request #19490 from danwinship/hairpin-error
...
Auto commit by PR queue bot
2016-02-01 11:20:26 -08:00
k8s-merge-robot
174521ee1a
Merge pull request #19856 from yifan-gu/termination_path
...
Auto commit by PR queue bot
2016-02-01 07:16:16 -08:00
harry
1032067ff9
Replace runtime reference by pkg
2016-02-01 21:06:44 +08:00
Yifan Gu
581759d12d
rkt: Set default 'User', 'Group' to root if it's not specified.
2016-02-01 20:00:09 +08:00
k8s-merge-robot
e07d9b3ee7
Merge pull request #20174 from yifan-gu/rkt_insecure_options
...
Auto commit by PR queue bot
2016-02-01 03:44:16 -08:00
Yifan Gu
9ce10c8552
rkt: Add support for termination message, termination reason.
...
If 'TerminationMessagePath' in container spec is set, then
We will mount the termination message log into the container.
Also in GetPodStatus, if the container exits and the 'TerminationMessagePath'
is set, then the 'message' field in container state will be populated.
2016-02-01 18:06:47 +08:00
Chao Xu
c72d234bbf
replacing handwritten client in several controllers
2016-01-31 15:42:02 -08:00
Jimmi Dyson
e9c1d1ebd6
Do not move pid 1 to system container
2016-01-31 23:27:56 +00:00
Clayton Coleman
d6d4a17db6
Allow clients to request most recent container logs
...
Many users attempt to use 'kubectl logs' in order to find the logs
for a container, but receive no logs or an error telling them their
container is not running. The fix in this case is to run with '--previous',
but this does not match user expectations for the logs command.
This commit changes the behavior of the Kubelet to return the logs of
the currently running container or the previous running container unless
the user provides the "previous" flag. If the user specifies "follow"
the logs of the most recent container will be displayed, and if it is
a terminated container the logs will come to an end (the user can
repeatedly invoke 'kubectl logs --follow' and see the same output).
Clean up error messages in the kubelet log path to be consistent and
give users a more predictable experience.
Have the Kubelet return 400 on invalid requests
2016-01-31 17:47:29 -05:00
Clayton Coleman
e3f4e823ba
Allow the Kubelet Docker container prefix to be changed
...
Enables running multiple Kubelets on the same instance for testing and
for node bootstrapping experimentation
2016-01-31 01:03:05 -05:00
Alex Robinson
ae5a6e86df
Merge pull request #20137 from mqliang/fake-time
...
reuse fake clock in the kube repo for kubelet unit tests
2016-01-30 16:37:44 -08:00
k8s-merge-robot
11885120c6
Merge pull request #20305 from timstclair/summary-api
...
Auto commit by PR queue bot
2016-01-30 15:23:16 -08:00
k8s-merge-robot
77dcd470d2
Merge pull request #20264 from Random-Liu/cleanup-config
...
Auto commit by PR queue bot
2016-01-30 12:06:04 -08:00
k8s-merge-robot
9fef5f2938
Merge pull request #19785 from Random-Liu/remove-get-podstatus-and-apipodstatus
...
Auto commit by PR queue bot
2016-01-30 11:35:26 -08:00
Alex Robinson
5c53b3a13b
Merge pull request #20335 from aveshagarwal/master-integration-tests-issue
...
Fix docker version errors in integration tests.
2016-01-30 10:40:06 -08:00
k8s-merge-robot
ef851cd7d1
Merge pull request #20261 from yifan-gu/rkt_cmd_args
...
Auto commit by PR queue bot
2016-01-30 09:12:25 -08:00
k8s-merge-robot
ce9f93df2e
Merge pull request #20061 from mikedanese/copypaste
...
Auto commit by PR queue bot
2016-01-30 05:52:26 -08:00
k8s-merge-robot
29c640d5ba
Merge pull request #19579 from Random-Liu/add-new-reason-cache
...
Auto commit by PR queue bot
2016-01-30 02:06:49 -08:00
Random-Liu
f116a5eb8f
Remove temporary function GetPodStatusAndAPIPodStatus()
2016-01-30 00:39:26 -08:00
Random-Liu
bad7046b1a
Start using new convert function in kubelet
2016-01-30 00:31:26 -08:00
Random-Liu
139548141e
Move ConvertPodStatusToAPIPodStatus() to kubelet level
2016-01-30 00:25:50 -08:00
Random-Liu
e9dceb36e9
Start using reason cache in kubelet
2016-01-30 00:25:50 -08:00
Random-Liu
123fec8a72
Add unit test for reason cache
2016-01-30 00:25:50 -08:00
Random-Liu
199f5687a3
Add reason cache
2016-01-30 00:25:50 -08:00
Random-Liu
e93febfd61
Start returning PodSyncResult in SyncPod
2016-01-30 00:25:50 -08:00
k8s-merge-robot
2d061aa199
Merge pull request #19784 from Random-Liu/cleanup-kubelet-syncpod
...
Auto commit by PR queue bot
2016-01-30 00:25:49 -08:00
k8s-merge-robot
db7e524750
Merge pull request #19850 from yujuhong/enable_cache
...
Auto commit by PR queue bot
2016-01-29 19:47:53 -08:00
k8s-merge-robot
deef16d2b3
Merge pull request #19354 from jimmidyson/system-container-fix
...
Auto commit by PR queue bot
2016-01-29 19:13:43 -08:00
Tim St. Clair
1bd945423d
Update metrics summary API
...
- Change resource Quantity types to *uint64
- Change CoreSeconds -> CoreNanoSeconds
- Rename NonLocalObjectReference to PodReference
- Add UID to PodReference
- Add UserDefinedMetrics
- Add StartTime to container and pod metrics.
2016-01-29 16:56:46 -08:00
Yifan Gu
1b34e2c314
rkt: If resource's limit is empty, populate it with request,and vice versa.
2016-01-29 10:50:37 -08:00
Avesh Agarwal
de804332f4
Fix docker version errors in integration tests.
2016-01-29 13:48:07 -05:00
Yifan Gu
dcee692d64
rkt: Expand environment variables in Command and Args.
2016-01-29 10:09:48 -08:00
Fabio Yeon
eb2c2d1af4
Merge pull request #20111 from fabioy/fix-tmp-tests
...
Add temp directory creation method for tests.
2016-01-29 09:51:12 -08:00
Jimmi Dyson
1c289943f5
Ensure kubelet pid is not moved to system container
2016-01-29 09:30:20 +00:00
Clayton Coleman
8448b60f51
Kubelet server was not returning a 500 on errors writing logs
...
Writing 200 first masks the second error. 200 is defaulted by the Go
http stack automatically.
2016-01-28 21:44:27 -05:00
Yifan Gu
d03b705c5f
rkt: Replace the deprecated flag 'insecure-skip-verify' with 'insecure-options'.
2016-01-28 14:31:27 -08:00
Paul Morie
9030f16071
Move ConfigMap to main API
2016-01-28 17:07:05 -05:00
Fabio Yeon
547a2e2387
Merge pull request #20131 from thockin/logs-for-19574
...
Augment logs in runContainer path
2016-01-28 13:49:59 -08:00
Mike Danese
e2fecf36b9
daemonset: apply predicated when placing daemon pods
2016-01-28 13:26:16 -08:00
Andy Goldstein
86ae623a09
Help debug port forward flakes
2016-01-28 15:28:40 -05:00
Random-Liu
488e14a5a9
Cleanup duplicated code in config.go
2016-01-28 01:04:35 -08:00
Fabio Yeon
7205a160ac
Remove all instances of "/tmp" from unit tests and replace with a common
...
tmp directory creator. Exception is documented.
2016-01-27 16:11:22 -08:00
Tim Hockin
df4c1ccd14
Don't apply net plugins to net=host pods
2016-01-27 15:43:33 -08:00
k8s-merge-robot
3f5e417999
Merge pull request #19502 from swagiaal/internalize-ownership
...
Auto commit by PR queue bot
2016-01-26 23:06:39 -08:00
Eric Paris
8e1ca68760
Merge pull request #20020 from apcera/cleanup-docker-engine-check
...
kubelet: Update engine version parsing to handle semantic versioning
2016-01-26 11:44:02 -05:00
mqliang
c9f4f78273
reuse fake clock in the kube repo for kubelet unit tests
2016-01-26 23:42:00 +08:00
k8s-merge-robot
8c821700f3
Merge pull request #19389 from justinsb/internal_cidr
...
Auto commit by PR queue bot
2016-01-26 03:58:48 -08:00
k8s-merge-robot
52cb4c1d9d
Merge pull request #18445 from resouer/fix-emptydir
...
Auto commit by PR queue bot
2016-01-26 02:45:54 -08:00
Tim Hockin
45e5912c3d
Augment logs in runContainer path
...
Generating errors that are useful is hard.
2016-01-25 16:31:32 -08:00
Tim Hockin
c924533e45
Add logs to try to diagnose #17181
2016-01-25 15:01:03 -08:00
Dan Winship
70a904d10e
Don't print hairpin_mode error when not using Linux bridges
...
(eg, with network plugins that use Open vSwitch)
2016-01-25 09:01:34 -05:00
harry
0fa5b6c4f7
Add e2e test for wrapper volumes
...
Use git server in e2e and refactor wrapper builder
Update e2e test to use a fake git server
2016-01-24 16:57:44 +08:00
Ken Robertson
66c99d5e9c
kubelet: Update FakeDockerClient used in integration tests
...
This updates the mock for the docker client used in integration tests to
include the engine version in its VersionInfo response.
2016-01-22 17:14:01 -08:00
Ken Robertson
fff8a7c371
kubelet: Update engine version parsing to handle semantic versioning
...
This updates the dockertools.dockerVersion to use a semantic versioning
library to more gracefully support engine versions which include
additional version fields.
Previously, go-dockerclient's APIVersion struct was use which only
handles plain numeric x.y.z version strings. With #19675 , the library
was now used on the Docker engine string, however it is possible for the
engine string to include include additional information for beta, rc, or
distro specific builds.
This PR also enables the TestDockerRuntimeVersion test which was
previously just a FIXME and updates it to pass, and be used to test the
version string that cause #20005 .
This negates the need for fsouza/go-dockerclient#451 , since even with
that change, if a user was running Docker 1.10.0-rc1, this would cause
the kubelet to report it as simply 1.10.0.
2016-01-22 13:18:52 -08:00
Clayton Coleman
4a6935b31f
Remaining codec change refactors
2016-01-22 13:27:27 -05:00
Clayton Coleman
33085c0cf2
Update tests to handle codec changes
2016-01-22 13:27:26 -05:00
Yu-Ju Hong
25f2c6f330
Improve mirror pod creation/deletion
...
- Ignore the "not found" error on deletion.
- Recognize the "already exists" error on creation and check if the existing
pod meets requirement. If so, don't report an error.
- Immediately create a mirror pod after a successful deletion, if needed.
2016-01-21 16:01:14 -08:00
nikhiljindal
2ad642d370
Merge registered and latest and move to apimachinery
2016-01-21 14:42:21 -08:00
Alex Mohr
7d96694c3f
Merge pull request #19725 from timstclair/summary
...
Add blank /stats/summary kubelet endpoint
2016-01-21 14:27:53 -08:00
Yu-Ju Hong
0fada52788
Fix sending an empty update when the source is ready
2016-01-21 14:24:39 -08:00
Justin Santa Barbara
58191c446c
Allow non-masquerade-cidr to be passed to the kubelet
...
Removing the hard-coding of 10.0.0.0/8
Issue #11204
2016-01-21 15:18:31 -05:00
Alex Mohr
c52122cab5
Merge pull request #19675 from apcera/kubelet-report-runtime-version
...
Update container runtime to properly report the engine and version
2016-01-21 10:31:19 -08:00
Alex Mohr
d2d349bc84
Merge pull request #19334 from resouer/network
...
Networking should be used to hold network related pkgs
2016-01-21 10:26:13 -08:00
Alex Mohr
79e0c9f5e5
Merge pull request #19842 from yujuhong/status_update
...
Don't handle graceful deletion of mirror pods in status manager
2016-01-21 09:24:46 -08:00
Alex Mohr
9a264c4b41
Merge pull request #19838 from yujuhong/empty_add
...
Fix empty ADD update on kubelet restarts
2016-01-21 09:22:53 -08:00
k8s-merge-robot
e2c79915fd
Merge pull request #18820 from mqliang/image-gc-bug
...
Auto commit by PR queue bot
2016-01-21 01:22:29 -08:00
k8s-merge-robot
d0f59e2126
Merge pull request #18172 from Random-Liu/generate-sync-event
...
Auto commit by PR queue bot
2016-01-20 22:48:35 -08:00
Random-Liu
eb56d46b74
Minor clean up in kubelet syncPod()
2016-01-20 17:31:59 -08:00
Ken Robertson
a7b07c01df
Update container runtime to properly report the engine and version
...
This address a TODO when collecting the node version information so it
will properly report the configured runtime and its version. Previously,
this was hardcoded to "docker://" and the docker version, and would show
"docker://1.9.1" even when the kubelet was configured to use rkt.
With this change, it will use the runtime's Type() and Version() data.
This also changes the container.Runtime interface to add an APIVersion()
method. This can be used when the runtime has separate versions for the
engine and the API, such as with Docker. The Docker minimum version
validation has been updated to use APIVersion(), and
DockerManager.Version() now returns the engine version.
2016-01-20 16:42:25 -08:00
Vishnu kannan
21748701f1
Avoid nodes that have 0
cpu and memory capacity.
...
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2016-01-20 15:34:58 -08:00
Yu-Ju Hong
dc5b35a570
Set default status to pending for pods from non-apiserver sources
2016-01-20 09:36:01 -08:00
Yu-Ju Hong
cfb5442b2d
Turn on kubecontainer.Cache in kubelet
2016-01-19 18:15:10 -08:00
Yu-Ju Hong
f1535a0d4c
Don't handle graceful deletion of mirror pods in status manager
2016-01-19 16:47:57 -08:00
Paul Morie
c548054560
Add ability to consume secrets in env vars
2016-01-18 12:20:51 -05:00
Piotr Szczesniak
9659057986
Revert "Enable kubecontainer.Cache in kubelet"
2016-01-18 13:35:41 +01:00
Lantao Liu
4c37dbe6e6
Merge pull request #19690 from Random-Liu/fix-bug-in-status-test
...
Fix bug in status/manager_test.go
2016-01-18 01:15:16 -08:00
k8s-merge-robot
fcf8263b1b
Merge pull request #19572 from pwittrock/exportfsmetrics
...
Auto commit by PR queue bot
2016-01-17 07:46:02 -08:00
k8s-merge-robot
0051dcc83e
Merge pull request #19560 from Random-Liu/format-reconcile-log
...
Auto commit by PR queue bot
2016-01-17 04:51:05 -08:00
Random-Liu
0e612afa98
Start using PodSyncResult in dockertools
2016-01-17 00:42:45 -08:00
Random-Liu
f2176643e7
Add unit test for PodSyncResult
2016-01-17 00:42:45 -08:00
Random-Liu
2d31d8ed4c
Add PodSyncResult
2016-01-17 00:42:44 -08:00
k8s-merge-robot
ac0d01f8ca
Merge pull request #19436 from yujuhong/status_cache_p2
...
Auto commit by PR queue bot
2016-01-16 09:24:19 -08:00
k8s-merge-robot
ffed4e1a3a
Merge pull request #19428 from yifan-gu/rkt_isolator
...
Auto commit by PR queue bot
2016-01-16 08:48:38 -08:00
Mike Danese
936c8cd597
Merge pull request #19685 from resouer/testing
...
Replace fake handler using testing pkg
2016-01-15 17:47:53 -08:00
Tim St. Clair
5a0dc30b51
Add blank /stats/summary kubelet endpoint
...
Add a `/stats/summary` endpoint to the kubelet which will return an
empty Summary{} struct (json formatted), as a summary API
placeholder. Once the next cAdvisor release is vendored, the summary
API will be filled in.
2016-01-15 14:55:54 -08:00
Random-Liu
8fb056d258
Add getTestPod() to avoid sharing object among test cases
2016-01-15 11:22:15 -08:00
k8s-merge-robot
21aa683fb5
Merge pull request #18974 from pmorie/config-env
...
Auto commit by PR queue bot
2016-01-15 06:42:56 -08:00
combk8s
5b383dad62
fix image gc bug
2016-01-15 16:43:22 +08:00
harry
98222b4d8b
Replace to tag
...
Use a testing pkg to replace testing util codes
2016-01-15 15:07:21 +08:00
Harry Zhang
936a11e775
Use networking to hold network related pkgs
...
Change names of unclear methods
Use net as pkg name for short
2016-01-15 13:46:16 +08:00
Mike Danese
33c72db59c
Merge pull request #19528 from resouer/strings-util
...
Create strings pkg to fix util issue
2016-01-14 21:19:17 -08:00
harry
7405c7899b
Add strings pkg to hold strings utils
...
Replace funtions with strings pkg
Fix all references and rename the pkg
2016-01-15 12:37:50 +08:00
Phillip Wittrock
bb216e53da
Define stats api fields for exporting filesystem metrics #17331
2016-01-14 15:52:35 -08:00
Yu-Ju Hong
c9faecba9d
Merge pull request #19668 from Random-Liu/fix-bug-in-reconcile
...
Fix bug in needsReconcile
2016-01-14 14:29:29 -08:00
Mike Danese
9745d1cbf0
Merge pull request #19626 from mikedanese/kubelet-labels
...
kubelet: use ConfigurationMap instead of json
2016-01-14 14:08:53 -08:00
Prashanth B
926b94fefc
Merge pull request #19493 from bprashanth/kubelet_fix
...
Errors in network setup should prevent pod creation
2016-01-14 13:49:19 -08:00
Yu-Ju Hong
15950daa7f
Restore the old behavior of setting pod status to pending
2016-01-14 13:46:26 -08:00
Random-Liu
fed61731f1
Fix bug in needsReconcile
2016-01-14 13:44:02 -08:00
Mike Danese
41df8749a8
Merge pull request #19470 from gmarek/kubemark-performance
...
Shorten the sleep amount in the fake docker client
2016-01-14 11:55:24 -08:00
Mike Danese
14378485f3
Merge pull request #19629 from yifan-gu/rkt_debug_logging
...
rkt: Add useful debugging message.
2016-01-14 11:49:18 -08:00
Mike Danese
35a3785cf6
kubelet: use ConfigurationMap instead of json
2016-01-14 09:32:42 -08:00
Yu-Ju Hong
07cf5cff48
Enable kubecontainer.Cache in kubelet
2016-01-14 09:31:24 -08:00
k8s-merge-robot
bf315d4563
Merge pull request #19374 from timstclair/housekeep
...
Auto commit by PR queue bot
2016-01-14 01:42:52 -08:00
k8s-merge-robot
a385de1e43
Merge pull request #19357 from timstclair/stats-refactor
...
Auto commit by PR queue bot
2016-01-13 23:54:48 -08:00
k8s-merge-robot
5462a37dfe
Merge pull request #17700 from yujuhong/status_cache
...
Auto commit by PR queue bot
2016-01-13 22:47:57 -08:00
Yifan Gu
74b8ffd156
rkt: Add useful debugging message.
2016-01-13 17:15:49 -08:00
Paul Morie
6cfd101251
Add support for ConfigMap keys in env vars
2016-01-13 17:00:15 -05:00
Yu-Ju Hong
b56ed1a8c2
Support populating the runtime cache in PLEG
...
This changes does not turn on this feature (cache) for kubelet.
2016-01-13 10:19:47 -08:00
Yu-Ju Hong
032c0a4074
Add container.Cache for storing container.PodStatus
...
This cache will be used to stores the PodStatus of all pods/containers
visible on the node. This will elimiate the need for pod workers to query the
container runtime directly.
2016-01-13 10:19:47 -08:00
Sami Wagiaalla
125295ba40
Remove manageVolumeOwnership from kubelet
2016-01-13 10:37:10 -05:00
Sami Wagiaalla
f650648aae
Add fsGroup to SetUp and SetUpAt
2016-01-13 10:37:10 -05:00
Tim St. Clair
e2ffd007f7
Implement node Allocatable
...
Add `kube-reserved` and `system-reserved` flags for configuration
reserved resources for usage outside of kubernetes pods. Allocatable is
provided by the Kubelet according to the formula:
```
Allocatable = Capacity - KubeReserved - SystemReserved
```
Also provides a method for estimating a reasonable default for
`KubeReserved`, but the current implementation probably is low and needs
more tuning.
2016-01-12 17:00:43 -08:00
Yu-Ju Hong
4ab505606b
Always overwrite items in kubelet's work queue
...
This allows kubelet to change the next sync time based on the last result.
2016-01-12 16:25:19 -08:00
Yu-Ju Hong
73a4f8225c
PLEG should report events if a container is removed
...
Currently, pleg would report a event if a container transitions from running to
exited between relisting. However, if would not report any event if a container
gets stopped and removed between relisting. This event will eventually be
handled when the pod syncs periodically, but this is undesirable. This change
ensures that we detect all such events.
2016-01-12 16:25:19 -08:00
Mike Danese
bf763bba95
Merge pull request #19498 from pwittrock/nodelabels
...
Node labels: Remove node-labels-file command line option. Change --n…
2016-01-12 15:12:57 -08:00
Derek Parker
55f09009c7
rkt: Include size in ListImages
2016-01-12 14:44:40 -08:00
k8s-merge-robot
0df7e695d4
Merge pull request #19458 from davidopp/notsclose
...
Auto commit by PR queue bot
2016-01-12 13:53:13 -08:00
Phillip Wittrock
f1c8384ff4
Node labels: Remove node-labels-file command line option. Change --node-label format from key=value to key:value to be consitent with how the header key:value is specified on command line.
2016-01-12 12:57:12 -08:00
Random-Liu
acb74454dc
Format reconcile log with format.Pod(pod)
2016-01-12 12:03:16 -08:00
k8s-merge-robot
67ac4e3838
Merge pull request #18410 from Random-Liu/reconcile-pod-status
...
Auto commit by PR queue bot
2016-01-12 02:17:09 -08:00
k8s-merge-robot
c255181509
Merge pull request #18248 from resouer/images-dev
...
Auto commit by PR queue bot
2016-01-11 23:53:43 -08:00
David Oppenheimer
8ac484793d
Comment out calls to httptest.Server.Close() to work around
...
https://github.com/golang/go/issues/12262 . See #19254 for
more details. This change should be reverted when we upgrade
to Go 1.6.
2016-01-11 23:02:11 -08:00
Saad Ali
651206fd90
Merge pull request #19393 from yujuhong/fix_dockerclient
...
Fix fake docker client to corretly report status of containers
2016-01-11 13:56:41 -08:00
Saad Ali
f5ea4f4671
Merge pull request #19392 from yujuhong/runtime_mock
...
Add a container runtime mock for testing
2016-01-11 13:03:37 -08:00
Prashanth Balasubramanian
4fe4f1f20e
Errors in network setup should prevent pod creation
2016-01-11 11:16:15 -08:00
gmarek
573c3ca320
Shorten the sleep amount in the fake docker client
2016-01-11 12:15:11 +01:00
Random-Liu
5b4a210d49
Add reconcile support in kubelet
2016-01-10 01:35:07 -08:00
k8s-merge-robot
609cdfd267
Merge pull request #19331 from resouer/hash-util
...
Auto commit by PR queue bot
2016-01-09 13:08:01 -08:00
Yu-Ju Hong
712612c2dc
Treat first-seen, non-pending pods as updates
...
Kubelet doesn't perform checkpointing and loses all its internal states after
restarts. It'd then mistaken pods from the api server as new pods and attempt
to go through the admission process. This may result in pods being rejected
even though they are running on the node (e.g., out of disk situation). This
change adds a condition to check whether the pod was seen before and categorize
such pods as updates. The change also removes freeze/unfreeze mechanism used to
work around such cases, since it is no longer needed and it stopped working
correctly ever since we switched to incremental updates.
2016-01-08 17:21:43 -08:00
Yifan Gu
dda62129d1
rkt: Add unit tests for setApp.
2016-01-08 13:41:18 -08:00
Yifan Gu
cc656ae6ac
rkt: Refactor setIsolators.
...
Replace manually creating isolators with isolator constructors.
Also add support for supplementary group IDs.
2016-01-08 13:31:21 -08:00
harry zhang
27ca7dc71e
Expose image list in node status
...
Change image manager to use repotag
2016-01-08 17:01:31 +08:00
Yu-Ju Hong
b969599daf
Fix fake docker client to corretly report status of containers
2016-01-07 18:20:41 -08:00
Yu-Ju Hong
c997fb3715
Add a container runtime mock for testing
2016-01-07 18:02:49 -08:00
Isaac Hollander McCreery
791cae90f0
Merge pull request #19350 from brendandburns/oncall
...
Improve error reporting a little in ingress e2e.
2016-01-07 15:51:31 -08:00
Tim St. Clair
3c72506f10
Fixed test & error code
2016-01-07 11:55:26 -08:00
Tim St. Clair
1fd72a7871
Change default cAdvisor housekeeping interval to 10s
...
Change the default interval cAdvisor uses to gather stats to 10
seconds.
2016-01-07 11:29:15 -08:00
Clayton Coleman
791d160b42
Split the Kubelet flag options and struct
...
Reduces the size of the app/server.go file and ensures that the flags
and their defaults are clearly separated.
2016-01-06 21:23:06 -05:00
Tim St. Clair
368447ff3f
Rector kubelet stats serving
...
Changes include:
- Moving stats serving & routes to pkg/kubelet/server/stats/handler.go
- Managing the routes with restful.WebService, rather than manual
parsing
- Misc cleanup
These changes will make adding the new routes for /stats/summary more
manageable.
2016-01-06 17:37:12 -08:00
Brendan Burns
07b3ab720d
Improve error reporting a little in ingress e2e.
...
Also add Output() to the util/exec Cmd interface.
2016-01-06 15:25:04 -08:00
harry
2a52976983
Use hashutil to hold hash tools
2016-01-06 22:28:58 +08:00
k8s-merge-robot
d1668c6656
Merge pull request #19269 from yifan-gu/rkt_refactor
...
Auto commit by PR queue bot
2016-01-05 22:28:02 -08:00
k8s-merge-robot
38f926dbb9
Merge pull request #19206 from Random-Liu/remove-wired-docker-label
...
Auto commit by PR queue bot
2016-01-05 19:32:01 -08:00
k8s-merge-robot
66d3cbf889
Merge pull request #16900 from madhusudancs/avoid-kubelet-oscillation
...
Auto commit by PR queue bot
2016-01-05 17:14:13 -08:00
Random-Liu
884dc5c9e5
Put TerminationGracePeriod, DeletionGracePeriod and PreStopHandler to docker labels
2016-01-05 15:45:29 -08:00
Yu-Ju Hong
343240d559
Fix container restarts caused by kubelet restarts
...
There has been a recent regression causing kubelet to assume no containers are
running for the pod if kubelet has not seen the pod before. This would cause
all containers to be restarted after kubelet gets restarted. This change fixes
the bug.
2016-01-05 14:24:22 -08:00
k8s-merge-robot
4a89481fbb
Merge pull request #19034 from Random-Liu/deprecate-running-pod-in-syncpod
...
Auto commit by PR queue bot
2016-01-04 18:51:18 -08:00
Yifan Gu
2767f10b61
rkt: refactoring on constructing the app section of rkt pods.
2016-01-04 16:27:52 -08:00
Madhusudan.C.S
059c2aa799
Mitigate node out of disk status oscillation by delaying it.
...
Implement a flag that defines the frequency at which a node's out of
disk condition can change its status. Use this flag to suspend out of
disk status changes in the time period specified by the flag, after
the status is changed once.
Set the flag to 0 in e2e tests so that we can predictably test out of
disk node condition.
Also, use util.Clock interface for all time related functionality in
the kubelet. Calling time functions in unversioned package or time
package such as unversioned.Now() or time.Now() makes it really hard
to test such code. It also makes the tests flaky and sometimes
unnecessarily slow due to time.Sleep() calls used to simulate the
time elapsed. So use util.Clock interface instead which can be faked
in the tests.
2016-01-04 12:23:38 -08:00
Yu-Ju Hong
7d180b337b
Record pleg pod relist interval and latency
...
Relisting latency/interval affects how quick kubelet discovers changes. Record
the metrics in Prometheus to surface such information.
2016-01-04 10:56:38 -08:00
Random-Liu
2ea11690b8
Remove running pod from SyncPod() of container runtime
2016-01-04 10:18:46 -08:00
Ravi Sankar Penta
d0dd6c844b
Allow node IP to be passed as optional config for kubelet
...
In case of multiple IPs on the node, this will allow admin to
specify desired IP to be used for the node.
2016-01-03 09:29:07 -08:00
Random-Liu
b2a72ca384
Change my TODO to be the same with others
2015-12-31 00:41:05 -08:00
Yifan Gu
9b81b67879
rkt: Move image related functions to image.go
2015-12-29 17:17:27 -08:00
Random-Liu
6e92ddf9e1
Cleanup pod print in dockertools/manager.go, prober/prober.go and
...
runonce.go
2015-12-28 14:07:37 -08:00
Chao Xu
2b5b708b70
Refactor the API registration and installation
2015-12-23 22:44:25 -08:00
Yifan Gu
644aa9536a
rkt: Remove pod_info.go, clean up codes that not needed anymore.
2015-12-22 12:02:25 -08:00
Yifan Gu
ee7251ed10
rkt: Update for newest api version.
2015-12-22 12:02:25 -08:00
Yifan Gu
278f0dc8ad
rkt: Replace image cat-manifest/list with api calls.
2015-12-22 12:02:25 -08:00
Jimmi Dyson
041ab17a67
Bump cadvisor to fix interface stats bugs & improve performance
...
Includes necessary godep upgrades for docker & systemd packages as well as
migrating from docker/libcontainer to opencontainers/runc/libcontainer.
2015-12-21 17:07:21 +00:00
k8s-merge-robot
a29f4babf5
Merge pull request #18544 from timstclair/stats
...
Auto commit by PR queue bot
2015-12-19 19:54:11 -08:00
k8s-merge-robot
cb42bd47bb
Merge pull request #18027 from roboll/runonce-datadirs
...
Auto commit by PR queue bot
2015-12-19 19:14:29 -08:00
k8s-merge-robot
b7dd32ad70
Merge pull request #18643 from yifan-gu/rkt_get_pod_status
...
Auto commit by PR queue bot
2015-12-19 02:38:31 -08:00
k8s-merge-robot
0b647564fc
Merge pull request #18625 from bprashanth/kube_up_flannel
...
Auto commit by PR queue bot
2015-12-19 01:29:11 -08:00
Wojciech Tyczynski
bf73d1741e
Merge pull request #18729 from timstclair/worker-race
...
Concurrency fixes for prober tests
2015-12-18 16:15:13 +01:00
Tim St. Clair
c357b91d2c
Update from offline discussions
...
- Sample is now the toplevel struct, so all child structs have the same
timestamp
- Removed FilesystemStats. There are more discussions needed
wrt. volumes and disk accounting, so this will be added in a follow
up PR
- Removed Options. The most recent sample will be returned.
2015-12-17 15:45:14 -08:00
Tim St. Clair
e1fc2c1152
@vishh PR feedback
2015-12-17 10:54:17 -08:00
Tim St. Clair
ce20c3b100
Add new Stats API for serving pod level stats
...
This API has been discussed ad nauseam across several forums, and this
API represents the latest conclusion. In summary, we will provide this
API as temporary solution for providing the new stats required for 1.2.
In the longterm this API will be split into "essential" stats, which
will be provided by a first-party API served through the kubelet, and
"non-essential" (monitoring) stats, which will be provided by a 3rd
party API served from a pod.
2015-12-17 10:54:17 -08:00
Vishnu Kannan
3c0745211f
Fix docker root dir detection.
2015-12-17 10:24:30 -08:00
k8s-merge-robot
674e24a16e
Merge pull request #18617 from mqliang/OSImage
...
Auto commit by PR queue bot
2015-12-17 08:50:48 -08:00
deads2k
9fda7f1812
update StatusDetails to handle Groups
2015-12-17 09:14:12 -05:00
k8s-merge-robot
0f144fd351
Merge pull request #18529 from timstclair/server
...
Auto commit by PR queue bot
2015-12-17 04:27:11 -08:00
Yifan Gu
2c79c670f1
rkt: Fix GetPods(), refactor tests for GetPods().
...
Fix GetPods() so that the container hash is fetched from the
annotations in pod manifest's app list instead of image manifest.
2015-12-16 16:53:45 -08:00
Yifan Gu
5f4e6d0908
rkt: Add GetPodStatus(), GetPodStatusAndAPIPodStatus().
...
Also add ConvertPodStatusToAPIPodStatus().
Add tests for GetPodStatus().
2015-12-16 14:35:19 -08:00
k8s-merge-robot
c2189fd60d
Merge pull request #18518 from Random-Liu/fix-potential-data-race
...
Auto commit by PR queue bot
2015-12-16 09:45:52 -08:00
Tim St. Clair
facb0a5c42
Concurrency fixes for prober tests
...
Fix leaking go routines and race conditions in prober unit tests.
2015-12-15 14:37:48 -08:00
Tim St. Clair
89bc7992f9
Refactor kubelet server into its own package
...
Refactor Kubelet's server functionality into a server package. Most
notably, move pkg/kubelet/server.go into
pkg/kubelet/server/server.go. This will lead to better separation of
concerns and a more readable code hierarchy.
2015-12-15 10:20:38 -08:00
k8s-merge-robot
5429d15fcf
Merge pull request #18449 from timstclair/race
...
Auto commit by PR queue bot
2015-12-15 05:32:17 -08:00
k8s-merge-robot
3680268c52
Merge pull request #18353 from deads2k/gv-use-constants
...
Auto commit by PR queue bot
2015-12-15 03:25:09 -08:00
k8s-merge-robot
25acc9bafa
Merge pull request #18301 from yujuhong/remove_wait
...
Auto commit by PR queue bot
2015-12-15 02:51:55 -08:00
k8s-merge-robot
1f0e46abb8
Merge pull request #16237 from ZJU-SEL/fix-util
...
Auto commit by PR queue bot
2015-12-14 18:41:14 -08:00
Prashanth Balasubramanian
b5303b9978
Tell kubernetes-master not to wait on flannel.
2015-12-14 09:47:09 -08:00
deads2k
d0aaf13920
use constants for group names
2015-12-14 10:04:10 -05:00
Wojciech Tyczynski
960808bf08
Switch to versioned ListOptions in client.
2015-12-14 14:26:09 +01:00
harry zhang
5405a5d98d
Move atomic_value into folder
...
Change pkg to atomic
2015-12-14 05:50:29 +00:00
mqliang
a21dd8a32b
replace OsImage to OSImage
2015-12-12 15:53:34 +08:00
k8s-merge-robot
3d24d25fd8
Merge pull request #17764 from jiangyaoguo/make-containerspecchange-private
...
Auto commit by PR queue bot
2015-12-11 17:40:34 -08:00
Jeff Lowdermilk
9f3d28c788
Merge pull request #18305 from yujuhong/podfullname
...
Replace podFullName with format.Pod() in logging messages
2015-12-11 14:31:47 -08:00
Jeff Lowdermilk
9c49cdaa6e
Merge pull request #18276 from thockin/airplane_validation_pt6
...
Validation cleanup parts 5 & 6 together
2015-12-11 13:34:37 -08:00
k8s-merge-robot
23baca87b5
Merge pull request #18232 from pwittrock/fsacct
...
Auto commit by PR queue bot
2015-12-11 00:48:09 -08:00
k8s-merge-robot
6b8eb902ce
Merge pull request #17969 from dgonyeo/rkt_api_get_pods
...
Auto commit by PR queue bot
2015-12-10 23:13:37 -08:00
k8s-merge-robot
caf4b1e47f
Merge pull request #18191 from thockin/ingress-egress-annotations
...
Auto commit by PR queue bot
2015-12-10 23:01:26 -08:00
Tim Hockin
7fb8f60735
Shorten names for better reading
2015-12-10 11:48:19 -08:00
Tim Hockin
87a35047dd
Move FieldPath and errors to a sub-package
...
This makes the naming and reading a lot simpler.
2015-12-10 11:48:16 -08:00
Random-Liu
eb551f388c
Fix potential data race
2015-12-10 10:35:02 -08:00
k8s-merge-robot
34c32a5615
Merge pull request #18498 from feihujiang/fixDocOfNetworkPluginVersion
...
Auto commit by PR queue bot
2015-12-10 09:44:32 -08:00
k8s-merge-robot
2ef2544faa
Merge pull request #18237 from yifan-gu/refactor_getphase
...
Auto commit by PR queue bot
2015-12-10 06:55:02 -08:00
k8s-merge-robot
073661514e
Merge pull request #18129 from yujuhong/fix_status
...
Auto commit by PR queue bot
2015-12-10 03:35:33 -08:00
feihujiang
5cfdcfd8f6
Fix the doc of network plugin version
2015-12-10 16:57:27 +08:00
Phillip Wittrock
c67ce887f2
Volume Metrics Interface and base implementation.
...
- Add volume.MetricsProvider function to Volume interface.
- Add volume.MetricsDu for providing metrics via executing "du".
- Add volulme.MetricsNil for unsupported Volumes.
2015-12-09 16:06:24 -08:00
Derek Gonyeo
5a16b4751b
rkt: rewrote GetPods to use rkt's api service
...
This involved adding annotations to the rkt pod's manifest that contain
information about the kubernetes pod, which is later read by the
kubelet.
2015-12-09 14:43:50 -08:00
Tim St. Clair
246442514c
Expose Start method, don't call in constructor
2015-12-09 10:58:15 -08:00
Tim St. Clair
32794b18f0
Fix data race in prober test
2015-12-09 10:20:57 -08:00
Wojciech Tyczynski
a915b8b29a
Merge pull request #18080 from wojtek-t/list_options_in_listwatch
...
Pass ListOptions to List in ListWatch.
2015-12-09 14:27:51 +01:00
Yu-Ju Hong
c646255579
Replace podFullName with format.Pod() in logging messages
2015-12-07 13:41:52 -08:00
Yu-Ju Hong
fda73c04ec
Change to include UID by default in formatting
2015-12-07 13:32:02 -08:00
deads2k
2ee3dfe415
update testapi to eliminate redundant fields
2015-12-07 15:54:26 -05:00
Yu-Ju Hong
e0d9ccde65
Minor clean up on checking container runtime status
...
Remove redundant function and consolidate the code.
2015-12-07 11:13:59 -08:00
Fabio Yeon
5457f5ace2
Merge pull request #18240 from timstclair/readiness
...
Update PodReady condition when updating container readiness
2015-12-07 10:43:22 -08:00
Abhi Shah
bb3f49e526
Merge pull request #18089 from ArtfulCoder/oneNSAgain
...
SkyDNS is the only NS for Pods with DNSPolicy=ClusterFirst
2015-12-07 10:20:29 -08:00
Wojciech Tyczynski
b0fcb5adef
Pass ListOptions to List in ListWatch.
2015-12-07 11:53:53 +01:00
k8s-merge-robot
316a8ac41c
Merge pull request #18073 from ingvagabund/garbage-collector-low-high-threshold-test
...
Auto commit by PR queue bot
2015-12-07 02:10:57 -08:00
jiangyaoguo
5f77f2b5a9
make PodContainerSpecChange private
2015-12-07 09:28:15 +08:00
k8s-merge-robot
810181fb7b
Merge pull request #17278 from ZJU-SEL/fix-nil-tag
...
Auto commit by PR queue bot
2015-12-06 12:52:39 -08:00
k8s-merge-robot
fc92833238
Merge pull request #17973 from liggitt/validate_node_name
...
Auto commit by PR queue bot
2015-12-05 13:23:26 -08:00
k8s-merge-robot
e1230eb57e
Merge pull request #17420 from Random-Liu/use-raw-pod-status-in-docker
...
Auto commit by PR queue bot
2015-12-05 12:16:04 -08:00
k8s-merge-robot
50af1d6550
Merge pull request #17756 from zhengguoyong/check_ref_before_use
...
Auto commit by PR queue bot
2015-12-05 10:52:56 -08:00
k8s-merge-robot
510949261a
Merge pull request #17752 from yujuhong/docker_health
...
Auto commit by PR queue bot
2015-12-05 10:24:48 -08:00
Jordan Liggitt
7d10fd3591
Validate pod spec.nodeName
2015-12-05 11:34:09 -05:00
k8s-merge-robot
2f4d4d9e94
Merge pull request #17968 from dgonyeo/rkt_api_list_images
...
Auto commit by PR queue bot
2015-12-05 05:50:06 -08:00
Yifan Gu
4ac6129578
kubelet: Small refactor on GetPhase().
2015-12-04 18:43:09 -08:00
Random-Liu
3cbdf79f8c
Change original PodStatus to APIPodStatus, and start using kubelet internal PodStatus in dockertools
2015-12-04 17:37:39 -08:00
k8s-merge-robot
c55b136ae2
Merge pull request #17149 from zhengguoyong/refactor_set_node_status
...
Auto commit by PR queue bot
2015-12-04 16:10:04 -08:00
Tim St. Clair
2430454eea
Update PodReady condition when updating container readiness
2015-12-04 15:40:33 -08:00
Derek Gonyeo
7ae6bf9d39
rkt: rewrote ListImages to use rkt's API service
2015-12-04 11:25:56 -08:00
k8s-merge-robot
37d22999b4
Merge pull request #17572 from yujuhong/kubeutil
...
Auto commit by PR queue bot
2015-12-04 03:15:54 -08:00
zhengguoyong
08c6bab575
Refactor fun setNodeStatus
2015-12-04 19:00:33 +08:00
Tim Hockin
29a2fded52
Revert "Change to alpha/beta for bandwidth annotations"
...
This reverts commit 2f4c3035be
.
2015-12-03 17:20:23 -08:00
Yu-Ju Hong
c8a075ad62
Do not delete pod status entry when apiserver returns NotFound error
...
The logic doesn't apply to static pods as their corresponding mirror pod may
not have been created yet, or may be in the process of recreation. Deleting the
pod status immediately resets the version of the status for the static pod,
while the apiStatusVersion remains unchanged. This could lead to incorrect
versioning and hence stale pod status in the apiserver.
2015-12-03 13:11:48 -08:00
Yu-Ju Hong
a4816b3bcb
Make kublet/util/format.go a separate package
...
The formatting function is used often in logging. This improves the readability
by shortening the length of the call. Also change the fomartted string to
include the pod UID.
2015-12-03 12:47:36 -08:00
Tim Hockin
e6df0b1a24
Convert validation to use FieldPath
...
Before this change we have a mish-mash of ways to pass field names around for
error generation. Sometimes string fieldnames, sometimes .Prefix(), sometimes
neither, often wrong names or not indexed when it should be.
Instead of that mess, this is part one of a couple of commits that will make it
more strongly typed and hopefully encourage correct behavior. At least you
will have to think about field names, which is better than nothing.
It turned out to be really hard to do this incrementally.
2015-12-03 08:19:44 -08:00
k8s-merge-robot
f9715c6455
Merge pull request #17479 from mqliang/hardcode
...
Auto commit by PR queue bot
2015-12-03 06:13:15 -08:00
Marek Grabowski
ffdfc68d11
Merge pull request #18075 from wojtek-t/only_list_options_in_list
...
Simplify List() signature in clients.
2015-12-03 10:38:33 +01:00
Marek Grabowski
348e7ecc5d
Merge pull request #17349 from PeterLamar/master
...
Small readability improvements in Kubelet
2015-12-03 10:08:58 +01:00
Wojciech Tyczynski
6dcb689d4e
Simplify List() signature in clients.
2015-12-03 09:54:07 +01:00
k8s-merge-robot
106cf2b6b5
Merge pull request #17755 from timstclair/status-manager
...
Auto commit by PR queue bot
2015-12-02 22:07:44 -08:00
Abhishek Shah
6c3a88cb3a
SkyDNS is the only NS for Pods with DNSPolicy=ClusterFirst
2015-12-02 10:26:49 -08:00
k8s-merge-robot
8a8639d7af
Merge pull request #17863 from wojtek-t/only_list_options_in_watch
...
Auto commit by PR queue bot
2015-12-02 06:28:28 -08:00
k8s-merge-robot
689586c6ae
Merge pull request #16153 from gmarek/use_api_ports
...
Auto commit by PR queue bot
2015-12-02 05:57:49 -08:00
Jan Chaloupka
9590b23264
LowThresholdPercent can not be higher than HighThresholdPercent
...
if LowThresholdPercent > HighThresholdPercent, amountToFree at image_manager.go:208 is negative and image GC will not free memory properly.
Justification:
1) LowThresholdPercent > HighThresholdPercent implies (LowThresholdPercent * capacity / 100) > (HighThresholdPercent * capacity / 100)
2) usage is at least (HighThresholdPercent * capacity / 100)
3) amountToFree = usage - (LowThresholdPercent * capacity / 100)
Combining 1), 2) and 3) implies amountToFree can be negative.
What happens if amountToFree is negative? in freeSpace method, "for _, image := range images " loops at least once
and if everything goes fine, "delete(im.imageRecords, image.id)" is executed.
When checking for condition "if spaceFreed >= bytesToFree", it is always true as bytesToFree is negative
and spaceFreed is positive. The loop is finished, so is image GC.
At the end, only the oldest image is deleted. In situations where there is a lot of dead containers,
each container corresponing to distinct image, number of unused images can get higher.
If two new images get pulled in every 5 minutes, image GC will not work properly and will not free enough space.
Secondly, it will take a lot of time to free all unused images (hours depending on a number of unused images).
This is an incorrect configuration. Image GC should report it and refuse to work.
2015-12-02 14:28:51 +01:00
gmarek
459131fd92
Use KubeletPort reported in NodeStatus instead of cluster-wide master config, take 2.
2015-12-02 13:38:17 +01:00
k8s-merge-robot
ac68536d44
Merge pull request #17832 from wojtek-t/list_options_in_list
...
Auto commit by PR queue bot
2015-12-02 02:34:17 -08:00
k8s-merge-robot
5e53e281e5
Merge pull request #17545 from yujuhong/no_auto_updates
...
Auto commit by PR queue bot
2015-12-02 02:03:08 -08:00
Fabio Yeon
7100d278e3
Revert "SkyDNS is the only NS for Pods with DNSPolicy=ClusterFirst"
2015-12-01 20:58:27 -08:00
k8s-merge-robot
4602220ad0
Merge pull request #15645 from ArtfulCoder/oneNS
...
Auto commit by PR queue bot
2015-12-01 13:51:37 -08:00
rob boll
81b9097a80
kubelet runonce: create data dirs
2015-12-01 14:03:02 -05:00
k8s-merge-robot
355ac2c58d
Merge pull request #17581 from swagiaal/correct-management-predicates
...
Auto commit by PR queue bot
2015-12-01 06:42:15 -08:00
Wojciech Tyczynski
8343c8ce6c
Pass ListOptions to List() methods.
2015-12-01 15:00:36 +01:00
Wojciech Tyczynski
d2dfc912e6
Simplify Watch() signature in clients.
2015-12-01 14:19:26 +01:00
k8s-merge-robot
a836b1e261
Merge pull request #17326 from caesarxuchao/grooupVersion-lastest
...
Auto commit by PR queue bot
2015-12-01 05:05:40 -08:00
Chao Xu
6e192760e3
refactoring latest.go GroupVersion;
...
clean up latest.go GroupVersions;
remove latest.GroupMeta.Group;
remove latest.GroupMeta.Version.
2015-11-30 11:30:21 -08:00
Sami Wagiaalla
a7fc99933b
Fix predicates for SELinux and ownership management
2015-11-30 10:31:28 -05:00
Harry Zhang
5552d7007c
Add default when latest not claimed
2015-11-30 17:10:50 +08:00
harry zhang
121c7046aa
Move parsers into util
2015-11-29 22:15:11 -08:00
jiangyaoguo
f4c5d00b0c
Implement a cachedNodeInfo in predicates
2015-11-27 21:49:14 +08:00
k8s-merge-robot
7cc83b347e
Merge pull request #17607 from yifan-gu/rm_rkt_image_manager
...
Auto commit by PR queue bot
2015-11-27 01:49:00 -08:00
k8s-merge-robot
4eb010b1f7
Merge pull request #17694 from hongchaodeng/ratelimit
...
Auto commit by PR queue bot
2015-11-26 13:12:26 -08:00
Clayton Coleman
1d592e4c28
Unversioned types should not use ambiguous go-int
...
All external types that are not int64 are now marked as int32,
including
IntOrString. Prober is now int32 (43 years should be enough of an initial
probe time for anyone).
Did not change the metadata fields for now.
2015-11-26 11:45:25 -05:00
k8s-merge-robot
492782c942
Merge pull request #17401 from aaronlevy/condition_order
...
Auto commit by PR queue bot
2015-11-26 04:29:34 -08:00
k8s-merge-robot
39cabe3580
Merge pull request #17684 from Random-Liu/cleanup-gc-test
...
Auto commit by PR queue bot
2015-11-26 03:26:39 -08:00
Phillip Wittrock
6b358e43dd
Merge pull request #17747 from saad-ali/fixErrorCreatingPDTry2
...
Refactor GCE wrapper library to allow execution from E2E test suite
2015-11-25 15:57:42 -08:00
Abhishek Shah
015df14a4a
SkyDNS is the only NS for Pods with DNSPolicy=ClusterFirst
2015-11-25 15:02:40 -08:00
Aaron Levy
3dc7c64ce9
kubelet: report NodeReady last in status list
...
Addresses a version skew issue where the last condition status is always
evaluated as the NodeReady status. As a workaround force the NodeReady
condition to be the last in the list of node conditions.
ref: https://github.com/kubernetes/kubernetes/issues/16961
2015-11-25 11:53:31 -08:00
saadali
42b200a0a0
Refactor GCE wrapper library to allow execution from E2E test suite
...
This reverts commit 147b6911f5
, reversing
changes made to 6fd986065b
.
2015-11-25 11:48:06 -08:00
Random-Liu
c6d02b83e5
Cleanup container_gc_test.go
2015-11-25 10:37:39 -08:00
k8s-merge-robot
3bd23b185b
Merge pull request #17730 from wojtek-t/use_unversioned_list_options_in_client
...
Auto commit by PR queue bot
2015-11-25 09:10:19 -08:00
k8s-merge-robot
ff3f240de2
Merge pull request #17533 from Random-Liu/fix-fake-docker-client
...
Auto commit by PR queue bot
2015-11-25 08:44:26 -08:00
Marek Grabowski
62009344cc
Merge pull request #17761 from gmarek/flannel
...
Rebase of @bprashant Flannel out of the box
2015-11-25 16:04:35 +01:00
k8s-merge-robot
27c2f5fb52
Merge pull request #17526 from yifan-gu/rkt_api_service
...
Auto commit by PR queue bot
2015-11-25 06:24:55 -08:00
Prashanth Balasubramanian
9aa0efa393
Turn flannel off by default
2015-11-25 09:43:48 +01:00
Prashanth Balasubramanian
ad2d3d4c20
Docs etc
2015-11-25 09:42:59 +01:00
Prashanth Balasubramanian
321bc73264
Flannel server in static pod with private etcd.
2015-11-25 09:42:59 +01:00
Prashanth Balasubramanian
7aa8ebe30f
Flannel handshakes with kubelet.
2015-11-25 09:42:59 +01:00
k8s-merge-robot
3e56ce6490
Merge pull request #17327 from deads2k/gv-restmapper
...
Auto commit by PR queue bot
2015-11-24 19:08:49 -08:00
zhengguoyong
2b5a655a5d
check ref before use it
2015-11-25 11:02:14 +08:00
k8s-merge-robot
431c67710b
Merge pull request #17247 from thockin/airplane_validation_pt3
...
Auto commit by PR queue bot
2015-11-24 18:37:09 -08:00
Tim St. Clair
d2532b50ce
Correct backwards pod mappings
...
The mapping of static pod <--> mirror pod UIDs was backwards in a couple
places. Fortunately, they canceled each other out. Fixed, and added a
test case.
2015-11-24 18:32:44 -08:00
Yu-Ju Hong
26b6b18fad
Remove docker health handler from kubelet /healthz
...
Docker's health is checked separately from kubelet by the processing monitoring
tool (e.g., supervisord). kubelet should not be killed when docker is down.
This change removes the docker health handler from kubelet's /healthz handler.
2015-11-24 17:22:55 -08:00
k8s-merge-robot
d42030170b
Merge pull request #15999 from aveshagarwal/master-issue-15624
...
Auto commit by PR queue bot
2015-11-24 17:07:10 -08:00
Tim St. Clair
a1960b0a21
More detailed logging of pod status updates.
2015-11-24 10:48:28 -08:00
Wojciech Tyczynski
b6ef62af24
Use unversioned.ListOptions in clients.
2015-11-24 16:52:09 +01:00
Avesh Agarwal
3d5207fd73
This commit adds type information to events.
...
This addresses issue #15624 .
2015-11-24 09:59:54 -05:00
k8s-merge-robot
683e908f0a
Merge pull request #17265 from gambol99/rj/node_labels
...
Auto commit by PR queue bot
2015-11-24 06:55:31 -08:00
deads2k
5077e9b644
make register.GroupVersion use GroupVersion
2015-11-24 09:45:36 -05:00
Hongchao Deng
13d152a873
RateLimiter: change CanAccept() to TryAccept()
2015-11-23 16:42:53 -08:00
Yifan Gu
5b423dd458
rkt: Refactor version check with api-service.
...
Also mocked systemd interfaces for testing purpose.
2015-11-23 16:30:51 -08:00
Tim Hockin
ceee678b29
Rename validation 'New' funcs
2015-11-23 10:01:43 -08:00
Tim Hockin
682f2a5a79
Stronger typing for validation ErrorList
2015-11-23 10:01:43 -08:00
k8s-merge-robot
32c240b350
Merge pull request #17245 from thockin/airplane_validation_pt1
...
Auto commit by PR queue bot
2015-11-23 06:45:28 -08:00
Jerzy Szczepkowski
8a922e22be
Revert "Refactor GCE wrapper library to allow execution from E2E test suite"
2015-11-23 09:24:32 +01:00
Tim Hockin
0ff66da346
Move fielderrors into validation
2015-11-22 20:12:20 -08:00
k8s-merge-robot
3fbf0cb810
Merge pull request #17276 from saad-ali/fixErrorCreatingPD
...
Auto commit by PR queue bot
2015-11-21 23:32:30 -08:00
k8s-merge-robot
7b281c946b
Merge pull request #17270 from timstclair/mirrorpods
...
Auto commit by PR queue bot
2015-11-21 22:55:26 -08:00
k8s-merge-robot
8a306a7527
Merge pull request #17234 from Random-Liu/move-more-info-to-docker-label
...
Auto commit by PR queue bot
2015-11-21 10:45:09 -08:00
Yifan Gu
28e78f4fb8
rkt: remove rkt image manager.
...
This removes the dead code of rkt image manager as the generic
image manager is being used.
2015-11-20 16:30:51 -08:00
Daniel Smith
874b4f85d9
Merge pull request #17259 from yujuhong/raw_pod_status
...
kubelet: add RawPodStatus and related functions
2015-11-20 14:23:19 -08:00
Yu-Ju Hong
41a9ab388d
Use 10s period for image pulling backoff
...
This is consistent with the container restart backoff period.
2015-11-20 11:57:56 -08:00
saadali
882469dd7b
Refactor GCE wrapper library to allow execution from E2E test suite
2015-11-20 11:41:10 -08:00
Lantao Liu
90ac508524
Cleanup fake_docker_client.go and manager_test.go
2015-11-19 19:03:35 -08:00
Yu-Ju Hong
dc42d25f4a
kubelet: remove background updating thread in RuntimeCache
...
This feature is no longer useful pods don't sync as often. For batch
creation/deletions/syncs, the cache will be up-to-date for most pods since it
will be updated frequently. For other cases, continue updating for two more
seconds don't usually help, as temporal locality doesn't hold across pod syncs.
2015-11-19 17:25:51 -08:00
Dawn Chen
16fe4a8ada
Fix a typo of NodeNotReady event.
2015-11-19 15:35:14 -08:00
Lantao Liu
f08097515f
Move more things into docke label, and add label test
2015-11-18 23:17:16 -08:00
mqliang
83fc12a8c0
hardcode supportedComputeResources
2015-11-19 13:20:02 +08:00
Yu-Ju Hong
759795592d
rkt: correctly copy container status in GetPods()
2015-11-18 18:18:53 -08:00
Rohith
c2526c93fa
- adding the -node-label flag to the kubelet which allows for a initial tagging / labelling of the node on cluster registration
...
- the labels can come from a series of key=pair value or file:///path_to_file which contains key pairs
2015-11-18 23:20:58 +00:00
Abhi Shah
8c7c5ec117
Merge pull request #17307 from zhengguoyong/set_no_public_runonce
...
Use small letter var definition
2015-11-18 14:50:04 -08:00
Yu-Ju Hong
760309f349
kubelet: add RawPodStatus and related functions
...
RawPodStatus will be the internal status of the pod that kubelet relies on for
syncing.
2015-11-17 17:04:05 -08:00
k8s-merge-robot
9604988537
Merge pull request #16894 from alexhersh/manifest-fix
...
Auto commit by PR queue bot
2015-11-17 07:39:15 -08:00
k8s-merge-robot
1334401888
Merge pull request #17202 from brendandburns/fix2
...
Auto commit by PR queue bot
2015-11-17 00:49:13 -08:00
k8s-merge-robot
0c9bc3215d
Merge pull request #14469 from thockin/intstr
...
Auto commit by PR queue bot
2015-11-16 23:20:37 -08:00
k8s-merge-robot
138a78db1f
Merge pull request #16580 from jiangyaoguo/check-image-exist-after-pulled
...
Auto commit by PR queue bot
2015-11-16 22:53:34 -08:00
cephaslr
aef7af1ba4
Rename kubelet variable pods to maxPods in kubelet pkg to match pods variable in kubelet cmd.
...
Remove comment requesting modification of mesos contrib file, dependencies should be maintained in unit tests
2015-11-16 20:15:40 -05:00
Jeff Lowdermilk
70d89a3541
Merge pull request #13571 from yujuhong/lifecycle_v0
...
kubelet: add a generic pod lifecycle event generator
2015-11-16 14:59:40 -08:00
Tim Hockin
ba383bcfeb
Refactor IntOrString into a new pkg
...
pkg/util/intstr is a cleaner encapsulation for this type and supporting
functions. No behavioral change.
2015-11-16 10:57:52 -08:00
k8s-merge-robot
7fa85d430b
Merge pull request #16614 from pmorie/ro-managed
...
Auto commit by PR queue bot
2015-11-16 10:46:44 -08:00
k8s-merge-robot
ebe5649939
Merge pull request #16824 from mattmoor/master
...
Auto commit by PR queue bot
2015-11-16 09:12:35 -08:00
k8s-merge-robot
14eae4b48e
Merge pull request #17303 from zhengguoyong/del_pod_api_selector
...
Auto commit by PR queue bot
2015-11-16 06:24:15 -08:00
k8s-merge-robot
081b21687e
Merge pull request #16261 from zhengguoyong/update_condition
...
Auto commit by PR queue bot
2015-11-16 02:34:18 -08:00
zhengguoyong
d5f2bb00a7
Del unused var
2015-11-16 15:53:20 +08:00
zhengguoyong
b18a9baacc
Use small letter var definition
2015-11-16 12:12:21 +08:00
Matt Moore
b750d1dddc
Drop the beta for GCR v2 images.
...
beta.gcr.io is no longer needed to pull through v2.
2015-11-14 12:19:02 -08:00
Paul Morie
911757486d
Refactor volume.Builder.IsReadOnly() to volume.Builder.GetAttributes()
2015-11-13 23:34:48 -05:00
Tim St. Clair
fbc5a7d034
Sync status to new mirror pods
2015-11-13 18:09:17 -08:00
Brendan Burns
fb576f30c8
Refactor an interface for style
2015-11-13 15:56:27 -08:00
Yu-Ju Hong
ac778e8203
Adjust the sync/backoff period
...
Set resyncInterval to one minute now that we rely on the generic pleg to trigger
pod syncs on container events. When there is an error during syncing, pod
workers need to wake up sooner to retry. Set the sync error backoff period to
10 second in this case.
2015-11-13 09:57:25 -08:00
Yu-Ju Hong
bc6414a873
kubelet: add a generic pod lifecycle event generator
...
This change introduces pod lifecycle event generator (PLEG), and adds a generic
PLEG. The generic PLEG relies on relisting to discover container events, and is
container-runtime-agnostic. Both docker and rkt are changed to use generic
PLEG.
2015-11-13 09:55:36 -08:00
Yu-Ju Hong
3beae6b70b
Add Status in the runtime Container type
...
This is necessary for the generic PLEG to distinguish container events.
2015-11-13 09:55:36 -08:00
k8s-merge-robot
0bb894173c
Merge pull request #17187 from Random-Liu/deprecate-container-without-termination-message-path
...
Auto commit by PR queue bot
2015-11-13 04:49:17 -08:00
k8s-merge-robot
0d9f2dc5fd
Merge pull request #17081 from yujuhong/docker_tests
...
Auto commit by PR queue bot
2015-11-12 22:56:29 -08:00
Alexander Hersh
0584f9ba7a
Create mirrorPod in runOnce to update API before syncPod
...
+ Fix #14992
+ "When deploying a pod using an on-disk kubelet manifest (a la /etc/kubernetes/manifests), it appears that the network plugin setUpPod is notified of the new pod before the apiserver."
2015-11-12 15:35:45 -08:00
Lantao Liu
1018d32d4f
Deprecate old containers without TerminationMessagePath label
2015-11-12 15:30:14 -08:00
k8s-merge-robot
e88593d788
Merge pull request #14542 from vishh/kubelet-refactor
...
Auto commit by PR queue bot
2015-11-12 15:24:22 -08:00
k8s-merge-robot
fbbc5a85a9
Merge pull request #16782 from Random-Liu/past-active-deadline-check
...
Auto commit by PR queue bot
2015-11-12 14:01:45 -08:00
k8s-merge-robot
e80dd6689f
Merge pull request #16866 from justinsb/zone_labels_on_nodes
...
Auto commit by PR queue bot
2015-11-12 07:25:37 -08:00
k8s-merge-robot
3080e7b3ca
Merge pull request #17114 from apeeyush/fix-oom-comment
...
Auto commit by PR queue bot
2015-11-12 00:32:55 -08:00
Vishnu kannan
b1770537ab
Make cadvisor startup synchronous with container runtime initialization.
...
This is hopefully a temporary workaround.
Signed-off-by: Vishnu kannan <vishnuk@google.com>
2015-11-11 15:20:13 -08:00
Vishnu kannan
4ad3d6f5fe
Move container manager into a separate package.
...
Inject container manager into Kubelet. This lets us stub out container
manager during integration testing.
2015-11-11 15:00:37 -08:00
Vishnu kannan
129dbc734c
avoid requiring runtime to be up while initializing kubelet image manager
2015-11-11 15:00:37 -08:00
Vishnu kannan
89c3cb2f43
refactor podCIDR handling in kubelet to runtime state
2015-11-11 15:00:37 -08:00
Vishnu kannan
5f4570b764
handling locks and update tests. Fail node if network is not initialized
2015-11-11 15:00:37 -08:00
Vishnu kannan
cf56f7a8ef
Refactoring kubelet to separate object creation from object logical initialization.
2015-11-11 15:00:34 -08:00
k8s-merge-robot
8761ad3ec1
Merge pull request #15464 from jiangyaoguo/bubble-up-reason-when-killing-pod
...
Auto commit by PR queue bot
2015-11-11 14:17:27 -08:00
Lantao Liu
d6b93cdfe1
Move active deadline check into main syncLoop of kubelet.
2015-11-11 10:05:04 -08:00
apeeyush
ae259748ef
Fix incorrect OOM score description in kubelet/qos
...
The multiplication factor is 10 and not 100 as clear from some other comments in the same file. Also mentioned at https://lwn.net/Articles/391222/ .
2015-11-11 19:12:18 +05:30
k8s-merge-robot
0ee52eb0c8
Merge pull request #17102 from zhengguoyong/add_break
...
Auto commit by PR queue bot
2015-11-11 03:57:16 -08:00
zhengguoyong
79d97abac4
When find NodeReadyCondition, it can quit the loop
2015-11-11 16:15:01 +08:00
Yu-Ju Hong
543391f1dc
Clean up unit tests using FakeDockerClient
...
Add a helper method to set the container map and list at the same time, without
having to specify them separately. This reduces the effort required for
adding/modifying tests as well as making the code more concise.
2015-11-10 16:51:35 -08:00
Tim St. Clair
67cfed5bf3
Don't wait for sync to update readiness
...
Push status updates as soon as readiness state changes for containers,
rather than waiting for the sync loop to update the status. In
particular, this should help new containers to come online faster.
Additionally, consolidates prober test helpers into a single file.
2015-11-10 14:00:12 -08:00
k8s-merge-robot
7b3f37a892
Merge pull request #17003 from jiangyaoguo/fix-error-sync-pod-message
...
Auto commit by PR queue bot
2015-11-10 04:01:28 -08:00
eulerzgy
3f630d8ad7
when pod has successed, update condition to PodCompleted
2015-11-10 15:37:44 +08:00
jiangyaoguo
b0f0c294d9
make reasons constants with clarity
2015-11-09 23:42:14 +08:00
jiangyaoguo
55bf786216
adjust container event message
2015-11-09 23:42:13 +08:00
jiangyaoguo
02f8e4277f
bubble up reason when killing pod
2015-11-09 23:42:13 +08:00
Wojciech Tyczynski
8a8f394f0d
Merge pull request #16945 from kargakis/kubelet-fallback-to-apiserver
...
kubelet: Fallback to api server for pod status
2015-11-09 16:12:07 +01:00
k8s-merge-robot
5fe3733f95
Merge pull request #16272 from jiangyaoguo/remove-infra-container-event
...
Auto commit by PR queue bot
2015-11-09 06:05:35 -08:00
jiangyaoguo
85d554bfc4
fix FailSync event message
2015-11-09 15:49:52 +08:00
k8s-merge-robot
9981f99949
Merge pull request #16849 from feihujiang/cleanupDeprecatedV1beta1Content
...
Auto commit by PR queue bot
2015-11-07 04:15:32 -08:00
kargakis
d519741e1b
kubelet: Fallback to api server for pod status
...
This commit fixes getting the logs from complete/failed pods after
a kubelet restart by falling back to the api server in case we fail
to resolve the pod status using the status cache.
2015-11-06 21:15:40 +01:00
Tim St. Clair
1e88a682da
Add liveness/readiness probe parameters
...
- PeriodSeconds - How often to probe
- SuccessThreshold - Number of successful probes to go from failure to success state
- FailureThreshold - Number of failing probes to go from success to failure state
This commit includes to changes in behavior:
1. InitialDelaySeconds now defaults to 10 seconds, rather than the
kubelet sync interval (although that also defaults to 10 seconds).
2. Prober only retries on probe error, not failure. To compensate, the
default FailureThreshold is set to the maxRetries, 3.
2015-11-06 10:46:40 -08:00
k8s-merge-robot
a5e4462003
Merge pull request #16825 from Random-Liu/cleanup-pod-worker-test
...
Auto commit by PR queue bot
2015-11-05 21:51:32 -08:00
feihujiang
eac8d6a997
Cleanup the content of deprecated V1beta1
2015-11-06 13:42:51 +08:00
jiangyaoguo
3b512add9c
check image present after pulled image with no error
2015-11-06 10:58:55 +08:00
Justin Santa Barbara
b2c2d617cf
Label nodes with Zone information, if available
...
This lays the groundwork for simple multizone capabilities.
In a cloud environment, nodes are typically created by the kubelet
registering with the API server. When creating a new node, we now query
the cloudprovider to see if it can provide Zone information, and if so
we add some well-known labels to the Node we are creating.
2015-11-05 14:35:05 -05:00
Yu-Ju Hong
5863f2a0a5
kubelet: reduce logging frequency for sync loop
...
Only logs when there are pods to sync.
2015-11-05 10:06:10 -08:00
k8s-merge-robot
fb571e3e2e
Merge pull request #16545 from timstclair/mirrorpods
...
Auto commit by PR queue bot
2015-11-05 02:56:23 -08:00
Lantao Liu
a35220c321
cleanup pod_workers_test.go to use general runtime interface
2015-11-04 16:55:25 -08:00
Tim St. Clair
858126b42a
Clean up static/mirror pod status logic
...
- status.Manager always deals with the local (static) pod, but gets the
mirror pod when syncing
- This lets components like the probe workers ignore mirror pods
2015-11-04 11:42:25 -08:00
Yu-Ju Hong
b734155954
Clean up housekeeping routine in kubelet
...
Now that kubelet checks sources seen correctly, there is no need to enforce the
initial order of pod updates and housekeeping. Use a ticker for housekeeping to
simplify the code.
2015-11-04 08:12:18 -08:00
jiangyaoguo
39858db29e
add new event when infra-container change
2015-11-04 17:04:32 +08:00
jiangyaoguo
3ce5a51007
remove implicitly required container event
2015-11-04 16:47:17 +08:00
Yu-Ju Hong
2eb17df46b
kubelet: independent pod syncs and backoff on error
...
Currently kubelet syncs all pods every 10s. This is not preferred because
* Some pods may have been sync'd recently.
* This may cause all the pods to be sync'd at once, causing undesirable
CPU spikes.
This PR replaces the global syncs with independent, periodic pod syncs. At the
end of syncing, each pod worker will enqueue itslef with a future timestamp (
current time + sync interval), when it will be due for another sync.
* If the pod worker encoutners an sync error, it may requeue with a different
timestamp to retry sooner.
* If a sync is triggered by the update channel (events or spec changes), the
pod worker would enqueue a new sync time.
This change is necessary for moving to long or no periodic sync period once pod
lifecycle event generator is completed. We will still rely on the mechanism to
requeue the pod on sync error.
This change also makes sure that if a sync does not succeed (either due to
real error or the per-container backoff mechanism), an error would be propagated
back to the pod worker, which is responsible for requeuing.
2015-11-03 13:29:08 -08:00
k8s-merge-robot
fe2d44e842
Merge pull request #16653 from Random-Liu/remove-unused-type
...
Auto commit by PR queue bot
2015-11-03 02:45:22 -08:00
k8s-merge-robot
c1d380db94
Merge pull request #16693 from Random-Liu/put-termination-message-path-into-docker-label
...
Auto commit by PR queue bot
2015-11-02 23:29:35 -08:00
Lantao Liu
894dc5a5a2
Move TerminationMessagePath into docker label.
2015-11-02 14:32:58 -08:00
Lantao Liu
eff4533efc
Move findPodContainer to docker_test.go
2015-11-02 09:49:07 -08:00
mqliang
3afcbae1a8
remove unnecessary fmt
2015-11-02 21:07:07 +08:00
Lantao Liu
b127901871
Remove unused type DockerContainers.
...
Type DockerContainers and function FindPodContainer() are never used.
Remove them to simplify the docker runtime api.
2015-11-01 18:49:05 -08:00
k8s-merge-robot
7b8bf758f3
Merge pull request #16631 from dchen1107/docker
...
Auto commit by PR queue bot
2015-10-31 10:55:37 -07:00
Dawn Chen
d2805c65d6
Fix Kubelet /logs endpoint
2015-10-30 16:19:34 -07:00
Alex Robinson
0eb7243b95
Merge pull request #15994 from dchen1107/docker
...
Failed docker health check and mark the node NotReady when docker version is below 1.6.2 (API ve…
2015-10-30 15:39:04 -07:00
Dawn Chen
a39e1e96dc
Mark NodeNotReady for docker version below 1.6.2
2015-10-30 13:48:51 -07:00
Dawn Chen
b691fd299c
Failed docker health check when docker version is below 1.6.2 (API version: 1.18)
2015-10-30 13:48:50 -07:00
k8s-merge-robot
eb140495ab
Merge pull request #16414 from Random-Liu/put-podname-into-label
...
Auto commit by PR queue bot
2015-10-30 12:45:25 -07:00
Alex Robinson
21a75abfbd
Merge pull request #16489 from mqliang/deleteFmt
...
replace `fmt.Sptintf()` with naive string appending
2015-10-30 09:25:39 -07:00
Lantao Liu
b3585a5209
Move docker label related functions into labels.go and add pod name, pod namespace and pod uid into docker label
2015-10-29 22:42:25 -07:00
Clayton Coleman
2335bfa351
Allow Docker container logs to be tail'd and follow'd
...
Relaxes the very very ancient restriction we put in place to keep the
original API surface area PR small. Better to be consistent with actual
expected use of tail.
2015-10-29 17:12:38 -04:00
k8s-merge-robot
c4b32cc8d8
Merge pull request #16223 from timstclair/status-deadlock
...
Auto commit by PR queue bot
2015-10-29 13:01:31 -07:00
mqliang
5b03cfc92b
replace fmt.Sptintf() with + operator
2015-10-29 16:27:42 +08:00
Tim St. Clair
9a2089adc8
Concurrency fixes in status.Manager
...
- Fix deadlock when syncing deleted pods with full update channel
- Prevent sending stale updates to API server
- Don't delete cached status when sync fails (causes problems for prober)
2015-10-28 17:40:55 -07:00
Sami Wagiaalla
1d352a16b8
Support volume relabling for pods which specify an SELinux label
2015-10-28 09:26:58 -04:00
Jerzy Szczepkowski
1524d7490a
Merge pull request #16294 from aveshagarwal/master-fix-code-duplication
...
Fixes code duplication.
2015-10-28 13:23:06 +01:00
Daniel Smith
8524d392bf
Merge pull request #16178 from madhusudancs/kubelet-out-of-disk-no-master
...
Report node out of disk condition in the kubelet.
2015-10-27 14:28:03 -07:00
k8s-merge-robot
0a7a9f3535
Merge pull request #16340 from timstclair/flaky-prober
...
Auto commit by PR queue bot
2015-10-27 12:10:22 -07:00
Jerzy Szczepkowski
5ef087adab
Merge pull request #16266 from wojtek-t/fix_handshake_reflector
...
Reuse TCP connections in Reflector between resync periods.
2015-10-27 10:36:18 +01:00
k8s-merge-robot
df265b2d6e
Merge pull request #15510 from aveshagarwal/master-selflink-objref
...
Auto commit by PR queue bot
2015-10-27 00:37:21 -07:00
Tim St. Clair
17b0a964f4
Always resync after resyncInterval
2015-10-26 18:50:57 -07:00
Daniel Smith
3cc2ae4da6
Merge pull request #15831 from zhengguoyong/modify_pod_networkplugin_setup_errmsg
...
Modify duplicate err msg
2015-10-26 17:07:18 -07:00
Madhusudan.C.S
9c4424f0bd
Report out of disk as a node condition when node goes out of disk.
...
Define a new out of disk node condition and use it to report when node
goes out of disk.
Make a copy of loop range clause variable in node listers so that it
is available outside the for loop.
Also update/implement unit tests.
2015-10-26 15:01:20 -07:00
Daniel Smith
e42f5af6a1
Merge pull request #16219 from thockin/resolvconf-filter
...
Add a cloud-provider hook to scrub DNS for pods
2015-10-26 12:32:02 -07:00
Avesh Agarwal
e845dba9d2
Fixes code duplication.
2015-10-26 15:24:50 -04:00
Wojciech Tyczynski
d47e21f19f
Reuse TCP connections in Reflector between resync periods.
2015-10-26 19:35:25 +01:00
k8s-merge-robot
bffdd242d8
Merge pull request #16191 from yujuhong/fix_logs
...
Auto commit by PR queue bot
2015-10-26 09:31:35 -07:00
k8s-merge-robot
4f17b4b39c
Merge pull request #15961 from ncdc/stream-protocol-negotiation
...
Auto commit by PR queue bot
2015-10-25 07:26:41 -07:00
k8s-merge-robot
0e1ee14cc8
Merge pull request #15705 from wojtek-t/watch_options_in_client
...
Auto commit by PR queue bot
2015-10-24 17:39:20 -07:00
Abhi Shah
976cc12c8e
Merge pull request #16174 from ArtfulCoder/nilCheck
...
Added Nil Check
2015-10-24 14:16:28 -07:00
k8s-merge-robot
5280540384
Merge pull request #15965 from Random-Liu/use-docker-label
...
Auto commit by PR queue bot
2015-10-24 13:19:40 -07:00
Wojciech Tyczynski
f4d75e0a0a
Support timeout in watch requests
2015-10-24 13:12:49 +02:00
k8s-merge-robot
f3cb757bb6
Merge pull request #16074 from timstclair/prober-cleanup
...
Auto commit by PR queue bot
2015-10-24 03:14:42 -07:00
k8s-merge-robot
e1559e9fb5
Merge pull request #15352 from pmorie/fsgroup
...
Auto commit by PR queue bot
2015-10-24 01:55:45 -07:00
Tim Hockin
42c7fec490
Add a cloud-provider hook to scrub DNS for pods
...
GCE needs this hook and it seems general enough to include.
2015-10-23 17:01:49 -07:00
Yu-Ju Hong
e4f739115f
kubelet: fix getting logs from static pods
...
This change adds the necessary UID translation logic to fix the issue.
2015-10-23 14:31:40 -07:00
Lantao Liu
67a7633202
Put restart count into docker label
2015-10-23 13:02:32 -07:00
Abhishek Shah
4a7b4f2ed2
Nil Check
2015-10-23 11:52:59 -07:00
Filip Grzadkowski
165169ab1c
Merge pull request #16052 from ArtfulCoder/mount_etc_hosts
...
kubelet manages /etc/hosts file
2015-10-23 14:07:34 +02:00
Filip Grzadkowski
edd10d8a83
Merge pull request #15914 from vishh/serialize-pull
...
make kubelet image pulls serialized by default.
2015-10-23 14:04:23 +02:00
Vishnu kannan
0df4b46d4c
Adding a kubelet flag to optionally enable parallel image pulls.
2015-10-22 17:19:51 -07:00
Paul Morie
3cd12f5e05
FSGroup implementation
2015-10-22 16:40:59 -04:00
Abhishek Shah
ba6469d478
kubelet manages /etc/hosts file
2015-10-22 13:27:05 -07:00
Paul Morie
e3642f1b3f
Merge pull request #14705 from pmorie/pod-sc-inline
...
PodSecurityContext with inline fields
2015-10-22 03:12:16 -04:00
Andy Goldstein
ad4f108bfa
Move port forward protocol constant to subpackage
...
Move port forward protocol name constant to a subpackage underneath
pkg/kubelet to avoid flags applicable to the kubelet leaking into
kubectl. Eventually, handlers for specific protocol versions will move
into the new subpackage as well.
2015-10-21 22:37:26 -04:00
Andy Goldstein
ff9883d9ec
Address code review comments
2015-10-21 21:53:51 -04:00
Andy Goldstein
3d1cafc2c3
Add streaming subprotocol negotiation
...
Add streaming subprotocol negotiation for exec, attach, and port
forwarding. Restore previous (buggy) exec functionality as an
unspecified/unversioned subprotocol so newer kubectl clients can work
against 1.0.x kubelets.
2015-10-21 21:53:51 -04:00
Dawn Chen
a702d5f29b
Merge pull request #15983 from yujuhong/hash_pods
...
Stores hash of pod manifest in mirror pod's annotation
2015-10-21 17:08:57 -07:00
Paul Morie
393e2bc019
Inline some SecurityContext fields into PodSecurityContext
2015-10-21 19:01:17 -04:00
Tim St. Clair
07e9892003
Cleanup prober.prober
2015-10-21 15:45:34 -07:00
k8s-merge-robot
6dc3dcf36a
Merge pull request #15414 from thockin/exp-beta-annotations
...
Auto commit by PR queue bot
2015-10-20 17:45:32 -07:00
Yu-Ju Hong
f8aa206ffa
Stores hash of pod manifest in mirror pod's annotation
...
Use the hash to track whether the mirror pod is a truthful representation of
the static pod.
2015-10-20 15:44:31 -07:00
Vishnu kannan
94b45830c3
make kubelet image pulls serialized by default.
2015-10-20 14:50:44 -07:00
k8s-merge-robot
034f7ccb1d
Merge pull request #15885 from ashcrow/fix-import-package-names-15319
...
Auto commit by PR queue bot
2015-10-20 09:37:13 -07:00
k8s-merge-robot
59fdccd122
Merge pull request #15868 from yifan-gu/fix_gc
...
Auto commit by PR queue bot
2015-10-20 07:47:16 -07:00
k8s-merge-robot
f5da178738
Merge pull request #15275 from timstclair/liveness-workers
...
Auto commit by PR queue bot
2015-10-20 06:39:40 -07:00
Steve Milner
8da2d4002f
Fixes remaining imports per #15319
2015-10-20 07:13:13 -04:00
k8s-merge-robot
c4779fbc4f
Merge pull request #15475 from jijun2/fix-cni_test
...
Auto commit by PR queue bot
2015-10-20 01:30:24 -07:00
k8s-merge-robot
48ced9de86
Merge pull request #15612 from jimmidyson/cadvisor-kubelet
...
Auto commit by PR queue bot
2015-10-19 20:10:21 -07:00
eulerzgy
af355df9a4
modify err log msg
2015-10-20 09:08:27 +08:00
Tim St. Clair
a263c77b65
Refactor liveness probing
...
This commit builds on previous work and creates an independent
worker for every liveness probe. Liveness probes behave largely the same
as readiness probes, so much of the code is shared by introducing a
probeType paramater to distinguish the type when it matters. The
circular dependency between the runtime and the prober is broken by
exposing a shared liveness ResultsManager, owned by the
kubelet. Finally, an Updates channel is introduced to the ResultsManager
so the kubelet can react to unhealthy containers immediately.
2015-10-19 15:15:59 -07:00
Yifan Gu
c4de5b7451
kubelet/rkt: do not remove other systemd service.
2015-10-19 11:23:54 -07:00
k8s-merge-robot
02dd86c136
Merge pull request #15472 from zhengguoyong/del_unnessary_var_definition
...
Auto commit by PR queue bot
2015-10-19 03:33:11 -07:00
k8s-merge-robot
75c977d200
Merge pull request #15596 from zhengguoyong/alias_util_errors_packagename
...
Auto commit by PR queue bot
2015-10-19 02:35:37 -07:00
k8s-merge-robot
09a3871506
Merge pull request #15755 from zhengguoyong/del_capatical_packagename_for_cadvisorApi2
...
Auto commit by PR queue bot
2015-10-18 04:04:11 -07:00
eulerzgy
f8f9afb874
alias local packagename for pkg/util/errors
2015-10-18 09:37:46 +08:00
eulerzgy
760b2c901b
del unnessary var definition
2015-10-18 09:05:47 +08:00
k8s-merge-robot
d3ca12f61b
Merge pull request #15053 from smarterclayton/stdin_once
...
Auto commit by PR queue bot
2015-10-17 00:03:32 -07:00
k8s-merge-robot
70b231231b
Merge pull request #15798 from yifan-gu/rkt_gc_service
...
Auto commit by PR queue bot
2015-10-16 23:32:29 -07:00
k8s-merge-robot
d471318aa8
Merge pull request #15799 from dchen1107/podstatus
...
Auto commit by PR queue bot
2015-10-16 19:32:30 -07:00
Clayton Coleman
e929baf91a
Support stdinOnce, which allows run-once STDIN injection
...
This allows containers to wait for input before startup by listening
on STDIN, and after STDIN is closed, continue running. Matches the
Docker syntax.
2015-10-16 20:33:50 -04:00
k8s-merge-robot
916ddbca65
Merge pull request #14182 from jiangyaoguo/distinguish-registry-unavailable-and-pull-failure
...
Auto commit by PR queue bot
2015-10-16 16:22:22 -07:00
Dawn Chen
6f46780cbf
Add tests to reproduce the issue and verify the fix.
2015-10-16 15:16:07 -07:00
Dawn Chen
1b8f851979
Fix PodPhase issue caused by backoff
2015-10-16 15:16:07 -07:00
Yifan Gu
22467d9d33
kubelet/rkt: Fix a typo in container gc.
2015-10-16 15:07:43 -07:00
k8s-merge-robot
6341e1d3e2
Merge pull request #15658 from yifan-gu/rkt_cli
...
Auto commit by PR queue bot
2015-10-16 14:52:14 -07:00
k8s-merge-robot
0a5299cd63
Merge pull request #15114 from yifan-gu/rkt_log
...
Auto commit by PR queue bot
2015-10-16 14:00:39 -07:00
k8s-merge-robot
535090312f
Merge pull request #13180 from samsabed/backoff_e2e
...
Auto commit by PR queue bot
2015-10-16 13:33:36 -07:00
k8s-merge-robot
4736adee8f
Merge pull request #15621 from mesosphere/sttts-send-initial-set-to-get-seen
...
Auto commit by PR queue bot
2015-10-16 08:04:29 -07:00
k8s-merge-robot
6269e22858
Merge pull request #15194 from MikaelCluseau/wip-issue-15187
...
Auto commit by PR queue bot
2015-10-16 06:46:20 -07:00
k8s-merge-robot
668cb5de48
Merge pull request #14983 from dcbw/cni-fixes
...
Auto commit by PR queue bot
2015-10-16 05:28:12 -07:00
k8s-merge-robot
dc685dfee6
Merge pull request #15260 from yifan-gu/rkt_gc_systemd_service
...
Auto commit by PR queue bot
2015-10-15 22:16:11 -07:00
Mikaël Cluseau
0375743241
hairpin: unless the pod is on the host's network
2015-10-16 16:15:35 +11:00
Mikaël Cluseau
2067641284
hairpin: include command output when unable to query container's interface
2015-10-16 16:06:35 +11:00
eulerzgy
31c09bdcb8
Del capatical local packagename for cadvisorApi
2015-10-16 11:03:50 +08:00
Sam Abed
78979c77ce
backoff e2e tests
...
Signed-off-by: Sam Abed <samsabed@gmail.com>
2015-10-16 13:09:29 +11:00
jijun2
bf6e8cbff7
test: using ioutil.TempDir in unit tests per #15176
...
update
update mode
delete /tmp
update
use ioutil.TempDir instead of static tmp dir
use ioutil.TempDir instead of static tmp dir
2015-10-16 09:21:46 +08:00
Yifan Gu
9d01933e94
kubelet/rkt: garbage collect systemd service files in GarbageCollect().
2015-10-15 18:21:26 -07:00
Yifan Gu
0ef6af25c1
kubelet/rkt: update rkt version.
2015-10-15 18:04:07 -07:00
Jimmi Dyson
a5421270e5
cadvisor bump
2015-10-15 21:06:45 +01:00
eulerzgy
ea86e66fbe
Del capatical local packagename for kubeletUtil
2015-10-15 09:58:10 +08:00
Tim Hockin
2f4c3035be
Change to alpha/beta for bandwidth annotations
2015-10-14 15:33:19 -07:00
Yifan Gu
0a81443056
kubelet/rkt: fetch journal logs in json format.
...
This enables more fine-grained control over the things we want to
output. Also by closing the stdout/stderr of the journalctl process
when user hits `Ctrl-C` after `kubectl logs $POD -f`, this enables
the journalctl process to exit.
2015-10-14 12:02:52 -07:00
Dr. Stefan Schimanski
651f02aec2
Add unit tests for first empty SET
2015-10-14 16:35:25 +02:00
Dr. Stefan Schimanski
7dddec6799
Switch to empty ADD PodUpdate for PodConfigNotificationIncremental mode
2015-10-14 15:38:44 +02:00
Dr. Stefan Schimanski
5cfeb53057
Enforce an initial empty SET PodConfig
...
In PodConfigNotificationIncremental PodConfig mode, when no pods are available
for a source, the Merge function correctly concluded that neither ADD, UPDATE nor
REMOVE updates are to be sent to the kubelet. But as a consequence the kubelet will
not mark that source as seen.
This is usually not a problem for the apiserver source. But it is a problem for
an empty "file" source, e.g. by passing an empty directory to the kubelet for
static pods. Then the file source will never be seen and the kubelet will stay
in its special not-all-source-seen mode.
2015-10-14 14:22:44 +02:00
Wojciech Tyczynski
647aa1bc8c
Unify per-resource List for unversioned client
2015-10-14 08:37:57 +02:00
Dawn Chen
a529f6ccdf
Merge pull request #15512 from yujuhong/mv_pod_manager
...
kubelet: move PodManager and MirrorClient to a subpackage
2015-10-13 16:27:15 -07:00
Andy Goldstein
7d02ea9bb7
Fix race condition for consuming podIP via downward API.
2015-10-13 16:39:11 -04:00
Dawn Chen
535246f364
Merge pull request #15396 from derekwaynecarr/kernel_flags
...
Ensure panic_on_oom disabled
2015-10-13 10:24:50 -07:00
derekwaynecarr
0ec36ae210
Ensure panic_on_oom disabled
2015-10-13 11:24:32 -04:00
Yu-Ju Hong
2c76c55bb9
kubelet: move PodManager and MirrorClient to a subpackage
...
This change moves pod_manager.go and mirror_client.go to a separate package.
Also made necessary, minor changes to facilitate testing.
2015-10-12 16:34:18 -07:00
Avesh Agarwal
8e4a8b7260
Addresses issue #6596 .
...
Removes ForTesting_ReferencesAllowBlankSelfLinks.
Fixes controller's persistentvolumes unit tests.
2015-10-12 19:21:48 -04:00
Dawn Chen
5cab5f68e4
Merge pull request #15174 from yujuhong/syncloop_log
...
kubelet logs update source in the sync loop
2015-10-12 12:59:05 -07:00
Yu-Ju Hong
1c015560be
kubelet logs update source in the sync loop
...
This improve the clarity/debuggability.
2015-10-12 10:18:52 -07:00
feisky
296e44cc08
Delete infra container if network plugin fails
2015-10-12 23:23:17 +08:00
k8s-merge-robot
8580804f77
Merge pull request #15138 from mattmoor/limited-beta-rewrite
...
Auto commit by PR queue bot
2015-10-10 11:41:34 -07:00
k8s-merge-robot
3bd7aafcd2
Merge pull request #15082 from samsabed/restartNever
...
Auto commit by PR queue bot
2015-10-10 11:19:44 -07:00
k8s-merge-robot
02ec1fb33c
Merge pull request #13885 from smarterclayton/websocket_exec
...
Auto commit by PR queue bot
2015-10-10 09:52:01 -07:00
Mike Danese
392f33e417
Merge pull request #14054 from mikedanese/register-master
...
register master kubelet with the apiserver
2015-10-09 17:12:37 -07:00
Yifan Gu
ba68b095a9
kubelet/rkt: enable getting logs for exited pods.
2015-10-09 12:01:34 -07:00
Clayton Coleman
363b616908
Expose exec and logs via WebSockets
...
Not all clients and systems can support SPDY protocols. This commit adds
support for two new websocket protocols, one to handle streaming of pod
logs from a pod, and the other to allow exec to be tunneled over
websocket.
Browser support for chunked encoding is still poor, and web consoles
that wish to show pod logs may need to make compromises to display the
output. The /pods/<name>/log endpoint now supports websocket upgrade to
the 'binary.k8s.io' subprotocol, which sends chunks of logs as binary to
the client. Messages are written as logs are streamed from the container
daemon, so flushing should be unaffected.
Browser support for raw communication over SDPY is not possible, and
some languages lack libraries for it and HTTP/2. The Kubelet supports
upgrade to WebSocket instead of SPDY, and will multiplex STDOUT/IN/ERR
over websockets by prepending each binary message with a single byte
representing the channel (0 for IN, 1 for OUT, and 2 for ERR). Because
framing on WebSockets suffers from head-of-line blocking, clients and
other server code should ensure that no particular stream blocks. An
alternative subprotocol 'base64.channel.k8s.io' base64 encodes the body
and uses '0'-'9' to represent the channel for ease of use in browsers.
2015-10-09 14:33:40 -04:00
Yu-Ju Hong
ed382ec0a0
Merge pull request #15386 from yujuhong/rename_kubelettypes
...
Rename imported package local name kubeletTypes to kubetypes
2015-10-09 11:08:30 -07:00
k8s-merge-robot
96a2a95dee
Merge pull request #15276 from yifan-gu/rkt_probe
...
Auto commit by PR queue bot
2015-10-09 10:28:08 -07:00
Yu-Ju Hong
a3e60cc32e
Rename imported package local name kubeletTypes to kubetypes
...
According to the naming guidelines, package name should not include mixedCaps.
2015-10-09 10:24:31 -07:00
k8s-merge-robot
ac6122c562
Merge pull request #15274 from timstclair/results-manager
...
Auto commit by PR queue bot
2015-10-09 10:05:15 -07:00
k8s-merge-robot
273c9ce503
Merge pull request #15177 from timstclair/restart-policy
...
Auto commit by PR queue bot
2015-10-09 09:41:22 -07:00
k8s-merge-robot
45cca144cb
Merge pull request #15167 from yujuhong/sources_seen
...
Auto commit by PR queue bot
2015-10-09 08:35:40 -07:00
k8s-merge-robot
44699f5852
Merge pull request #15238 from mpuncel/mpuncel/cleanup
...
Auto commit by PR queue bot
2015-10-09 08:12:17 -07:00
k8s-merge-robot
b793c3edf1
Merge pull request #14700 from liggitt/kubelet_authz
...
Auto commit by PR queue bot
2015-10-09 03:01:43 -07:00
k8s-merge-robot
538cf72208
Merge pull request #15051 from feiskyer/kubelet/garbage-collection
...
Auto commit by PR queue bot
2015-10-09 02:11:47 -07:00
Jordan Liggitt
9d6b52881d
Add authentication/authorization interfaces to kubelet, always include /metrics with /stats
2015-10-09 03:10:00 -04:00
Mike Danese
fa60bbe8e6
add flag to kubelet to ignore the cidr passed down by the apiserver on the master
2015-10-08 21:21:19 -07:00
feisky
fb04edea3a
Replace rkt --grace-period and --expire-prepared with gcPolicy.MinAge
2015-10-09 06:57:10 +08:00
feisky
d624c7de51
Pass the ContainerGCPolicy in Runtime.GarbageCollect
2015-10-09 06:57:10 +08:00
feisky
69867fb502
Refactor container gc tests
2015-10-09 06:57:09 +08:00
feisky
4c8a836260
Move original container gc to docker runtime
2015-10-09 06:57:09 +08:00
feisky
35cf8ab7d4
Use runtime instread of dockerclient in container gc
2015-10-09 06:54:38 +08:00
Yu-Ju Hong
098ab05997
kubelet: move common types to kubelet/types
...
This would faciliate tasks such as moving code in pkg/kubelet to sub packages.
2015-10-08 14:38:01 -07:00
Yifan Gu
2c318bfee2
kubelet/rkt: return util/exec.ExitError if exec probing fails.
...
This enables the prober to return probe.Failure instead of
probe.Unknown.
2015-10-08 14:14:01 -07:00
Robert Bailey
f828c9a49c
Merge pull request #15185 from yujuhong/fix_annotation
...
kubelet: fix mirror pod creation/deletion
2015-10-08 14:07:45 -07:00
jiangyaoguo
af46c69553
Distinguish image registry unavailable and pull failure
2015-10-09 01:16:31 +08:00
Piotr Szczesniak
726f1e17c4
Merge pull request #14173 from runningwild/PR0
...
If an isolator's request is nil, populate it with the limit and vice versa
2015-10-08 13:07:08 +02:00
Piotr Szczesniak
95b293c615
Merge pull request #13516 from samsabed/backoff-image-reason
...
backoff image pulling on failure
2015-10-08 13:05:32 +02:00
Tim St. Clair
9b8bc50357
Generalize readinessManager to handle liveness
2015-10-07 16:40:30 -07:00
Dan Williams
823242d9a8
Add some more debugging to the CNI testcase
...
Let's attempt to find out why it's failing some small percentage of the time.
2015-10-07 17:24:44 -05:00
Tim St. Clair
551eff63b8
Use strong type for container ID
...
Change all references to the container ID in pkg/kubelet/... to the
strong type defined in pkg/kubelet/container: ContainerID
The motivation for this change is to make the format of the ID
unambiguous, specifically whether or not it includes the runtime
prefix (e.g. "docker://").
2015-10-07 10:58:05 -07:00
Michael Puncel
4921a62f3a
Fix comment typo and remove unnecessary line
2015-10-07 09:53:27 -07:00
Dawn Chen
092dddd12c
Merge pull request #15087 from derekwaynecarr/kernel_overcommit
...
Kubelet sets kernel overcommit_memory flag
2015-10-07 09:47:47 -07:00
Derek Carr
87fe1f4af8
Merge pull request #13939 from pmorie/pod-sc-minimal
...
Add PodSecurityContext and backward compatibility tests
2015-10-07 09:56:58 -04:00
Sam Abed
fdf712cd84
back-off image pull on failure
...
Signed-off-by: Sam Abed <samabed@gmail.com>
2015-10-07 21:12:42 +11:00
k8s-merge-robot
348f0ca335
Merge pull request #14686 from yifan-gu/rkt_gc
...
Auto commit by PR queue bot
2015-10-07 00:15:48 -07:00
k8s-merge-robot
5979655da1
Merge pull request #14949 from brendandburns/flakes10
...
Auto commit by PR queue bot
2015-10-06 21:01:33 -07:00
Sam Abed
e20d599ace
Apply pod restart policy to Containers that fail to start. Fix Reason and Message for succeeding or failing containers
...
Signed-off-by: Sam Abed <samsabed@gmail.com>
2015-10-07 12:20:28 +11:00
Matt Moore
eeb4eeb17c
Move pause and fluentd-elasticsearch to GCR v2.
...
This scopes down the initially ambitious PR:
https://github.com/kubernetes/kubernetes/pull/14960 to replace just
`pause` and `fluentd-elasticsearch` to come through `beta.gcr.io`.
The v2 versions have been pushed under new tags, `pause:2.0` and
`fluentd-elastisearch:1.12`.
NOTE: `beta.gcr.io` will still serve images using v1 until they are repushed with v2. Pulls through `gcr.io` will still work after pushing through `beta.gcr.io`, but will be served over v1 (via compat logic).
2015-10-06 16:39:07 -07:00
Yu-Ju Hong
53e65b0826
kubelet: fix mirror pod creation/deletion
...
When annotating the mirror pod, make a new copy of the annotations map from the
static pod, so that the change wouldn't be in the static pod.
2015-10-06 14:45:44 -07:00
Tim St. Clair
f67879eac7
Check pod RestartPolicy before restarting unhealthy containers
2015-10-06 13:17:45 -07:00
derekwaynecarr
970c369f31
Kubelet sets kernel overcommit_memory flag
2015-10-06 14:28:46 -04:00
Yu-Ju Hong
5abdfcdfe6
kubelet: fix all sources ready condition
...
The current implementation considers a source seen when it receives a SET at
kubelet/config/config.go. However, the main kubelet sync loop may not have
received the pod update from the source via the channel. This change ensures
that kubelet would consider all sources are ready only after the sync loop has
seen all the sources.
2015-10-06 10:13:04 -07:00
Paul Morie
227dd82119
Add PodSecurityContext and backward compatibility tests
2015-10-05 21:05:27 -04:00
Alex Robinson
99936383b0
Merge pull request #15079 from gmarek/fix-kubemark
...
Turn on smarter FakeDockerClient in HollowNode.
2015-10-05 17:00:49 -07:00
Yifan Gu
b42d2311c3
kubelet/rkt: add container/image gc for rkt.
2015-10-05 14:22:19 -07:00
Alex Robinson
2218ad0f86
Merge pull request #14845 from derekwaynecarr/kubectl_besteffort
...
Fix missing display of BestEffort resources in kubectl describe
2015-10-05 13:40:03 -07:00
Alex Robinson
d8120f5425
Merge pull request #14221 from timstclair/readiness-workers
...
Refactor readiness probing
2015-10-05 13:26:54 -07:00
gmarek
22b318fc5c
Turn on smarter FakeDockerClient in HollowNode.
2015-10-05 21:36:54 +02:00
derekwaynecarr
f062a29e34
Fix missing display of BestEffort resources in kubectl describe
2015-10-05 13:38:04 -04:00
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
Yu-Ju Hong
fb270779b5
kubelet: fix the config unit tests
2015-09-14 11:07:27 -07:00
Huamin Chen
adf59896e0
when kubelet removes pod dir, it should skip those that still have unmounted volumes
...
Signed-off-by: Huamin Chen <hchen@redhat.com>
2015-09-14 13:50:08 -04:00
k8s-merge-robot
83fc0b783f
Merge pull request #13923 from wojtek-t/fix_rv_0_errors
...
Auto commit by PR queue bot
2015-09-14 10:21:41 -07:00
Jeff Lowdermilk
e25ae7fdb2
Merge pull request #13833 from caesarxuchao/central-latest
...
[WIP] Making a generic latest package
2015-09-14 09:26:58 -07:00
Wojciech Tyczynski
5da52558e6
Fix watch with RV=0 in Kubelet.
2015-09-14 16:45:58 +02:00
Tamer Tas
6908790410
Add a default value to PodConfigNotificationMode
2015-09-14 15:00:01 +03:00
tummychow
a21c52a766
Move util/validation files to their own package
2015-09-13 00:46:52 -07:00
k8s-merge-robot
960b9e9564
Merge pull request #13867 from JanetKuo/qos-policy-bug
...
Auto commit by PR queue bot
2015-09-11 19:13:18 -07:00
Chao Xu
0b6fd8c5c4
fixing tests
2015-09-11 17:33:22 -07:00
Chao Xu
dd6c121d7f
massive changes
2015-09-11 17:31:47 -07:00
Yu-Ju Hong
2816c9df78
config_test: clean up unused function arguements
2015-09-11 17:18:29 -07:00
Yu-Ju Hong
69c3aa0872
Fix source annotation in kubelet
...
kubelet relies on source annotation to distinguish pods from different sources.
It should always annotate the source when receiving the pod to avoid any
confusion. This commit fixes that and also make sure we don't overwrite the
first seen time.
2015-09-11 14:52:16 -07:00
Mikaël Cluseau
b76abf10cc
hairpin: fix tests
2015-09-12 08:43:45 +11:00
Mikaël Cluseau
1ab520a59b
pkg/util/exec: allow mocking of LookPath
2015-09-12 08:43:45 +11:00
Mikaël Cluseau
99a1cfa8ff
hairpin support
2015-09-12 08:43:45 +11:00
k8s-merge-robot
6f01200188
Merge pull request #13727 from jiangyaoguo/fix-reason-reporting-in-kubelet
...
Auto commit by PR queue bot
2015-09-11 12:32:20 -07:00
Tim St. Clair
1f91fffb57
Move kubelet.statusManager to status.Manager
...
This refactor is in preparation for moving more state handling to the
status manager. It will become the canonical cache for the latest
information on running containers and probe status, as part of the
prober refactoring.
2015-09-11 12:22:01 -07:00
Janet Kuo
452ebed92b
Fix the bug that qos class determination be incorrect with small numbers
2015-09-11 10:26:44 -07:00
k8s-merge-robot
bff6ee8e4a
Merge pull request #12695 from JanetKuo/kubectl-describe-pod-podstatus
...
Auto commit by PR queue bot
2015-09-11 08:08:32 -07:00
k8s-merge-robot
bfc60709b1
Merge pull request #13468 from yifan-gu/rkt_doc
...
Auto commit by PR queue bot
2015-09-10 20:32:08 -07:00
jiangyaoguo
62c0c35307
Fix reporting reason in kubelet
...
1. Make reason field of StatusReport objects in kubelet in CamelCase format.
2. Add Message field for ContainerStateWaiting to describe detail about Reason.
3. Make reason field of Events in kubelet in CamelCase format.
4. Update swagger,deep-copy and so on.
2015-09-11 10:01:08 +08:00
Janet Kuo
edc75cd565
Fix the bug that determining guaranteed qos won't work well with small numbers
2015-09-10 18:21:51 -07:00
Janet Kuo
22a794cc22
List resource QoS tier of each container when describing pods; Re-order resource table
2015-09-10 18:21:50 -07:00
Daniel Smith
b225c1d47a
Run gofmt (separate commit for easy rebases)
2015-09-10 17:17:59 -07:00
Daniel Smith
15b30b8b09
Move version agnostic parts of client
...
pkg/client/unversioned/cache -> pkg/client/cache
pkg/client/unversioned/record -> pkg/client/record
2015-09-10 17:17:59 -07:00
k8s-merge-robot
ee7168d868
Merge pull request #13815 from robertabbott/abbott/kubelet_get_instead_of_list
...
Auto commit by PR queue bot
2015-09-10 15:59:01 -07:00
Yifan Gu
e7b9c50ba1
kubelet/rkt: add support for different stage1 image.
...
Also enable grace stop for service files.
2015-09-10 14:58:03 -07:00
tummychow
78ce5da988
Move util.StringSet into its own package
...
A lot of packages use StringSet, but they don't use anything else from
the util package. Moving StringSet into another package will shrink
their dependency trees significantly.
2015-09-10 12:04:15 -07:00
Bobby Abbott
9a5f43e16d
Kubelet#GetNode now uses GetNodeInfo instead of List
...
Both GetNode and the cache.ListWatch listfunc in the
kubelet package call List unnecessary.
GetNodeInfo is sufficient for GetNode and makes looping
through a list of nodes to check for a matching name
unnecessary.
resolves #13476
2015-09-10 10:50:41 -07:00
Chao Xu
002dcc6343
Merge pull request #13737 from wojtek-t/switch_to_node_in_registry
...
Rename "minion" to "node" in few places.
2015-09-09 17:49:22 -07:00
Wojciech Tyczynski
cd1ac360de
Rename "minion" to "node" in few places.
2015-09-09 16:18:23 +02:00
jiangyaoguo
1460a1fb9e
Rate limit events in kubelet
...
1. Add EvnetRecordQps and EventBurst parameter in kubelet.
2. If EvnetRecordQps and EventBurst was set, rate limit events in kubelet
with a independent ratelimiter as setted.
2015-09-09 16:57:21 +08:00
Wojciech Tyczynski
b85d0557b4
Revert #13052
2015-09-08 09:40:12 +02:00
feihujiang
d713826aa9
Add pod name to error message when getting logs of a container
2015-09-07 17:03:54 +08:00
Harry Zhang
7b2e2e5649
Fix tests and clear fmt mess in manager.go
2015-09-05 04:52:51 +00:00
k8s-merge-robot
2e2def36a9
Merge pull request #13581 from caesarxuchao/APIGroup-testapi-2
...
Auto commit by PR queue bot
2015-09-04 20:38:45 -07:00
Chao Xu
9fc79e9d99
refactor testapi and test scripts to prepare for multiple API groups.
2015-09-04 18:01:32 -07:00
k8s-merge-robot
e6e69e31ec
Merge pull request #13363 from mesosphere/abort-kubelet-syncloop
...
Auto commit by PR queue bot
2015-09-04 17:45:32 -07:00
k8s-merge-robot
24430525ac
Merge pull request #13334 from pedro-r-marques/kubelet_annotation_update
...
Auto commit by PR queue bot
2015-09-04 17:07:31 -07:00
Quinton Hoole
e188ea6a61
Merge pull request #13202 from jimmidyson/prometheus-with-no-cadvisor-port
...
Ensure container metrics are registered with prometheus even without cadvisor http server
2015-09-04 13:58:31 -07:00
James DeFelice
de064f4254
fix kubelet syncLoop busy loop upon close of updates chan
2015-09-04 17:56:02 +00:00
Andy Goldstein
c83786979c
Various exec fixes
...
If stdin is noninteractive, the io.Copy from stdin to remoteStdin will
unblock when it finishes reading from stdin. In this case, make sure to
close remoteStdin so the server knows the client won't be sending any
more data. This ensures that the remote process terminates. For example:
echo foo | kubectl exec -i <pod> -- cat
Without this change, the `cat` process never terminates and `kubectl
exec` hangs.
Fix interactive exec sessions hanging after you type 'exit'.
Add e2e test to cover noninteractive stdin: `echo a | kubectl exec -i <pod>
cat`
Add e2e test to cover psuedo-interactive stdin: `kubectl exec -i <pod> bash`
Prep for sending multiple data frames over multiple streams in remote command
test, which is more likely to find flakes (requires bump of spdystream
once an issue with the frame worker queues not being fully drained when
a goaway frame is received).
2015-09-04 10:40:53 -04:00
Abhi Shah
c9f2d3151b
Merge pull request #13155 from derekwaynecarr/enforce_limits
...
Map cpu limits to cpu-quota in docker run
2015-09-03 16:28:04 -07:00
Abhi Shah
d923e61dda
Merge pull request #13397 from yujuhong/housekeeping
...
kubelet: define the housekeeping period
2015-09-03 15:46:29 -07:00
derekwaynecarr
5dc74e8dbf
Add support for CFS quota in kubelet
2015-09-03 13:44:28 -04:00
markturansky
0e7f73ad67
expand volume.Spec to include full Volume and PV
2015-09-03 08:57:32 -04:00
Yu-Ju Hong
9cdb004851
kubelet: fix erratic restart count caused per-container restart backoff
2015-09-02 18:50:42 -07:00
Abhi Shah
067e76b509
Merge pull request #13348 from thockin/kubelet-masq-rule
...
Don't name 'eth0' in MASQUERADE rule
2015-09-02 09:54:31 -07:00
Brendan Burns
ac958e5320
Merge pull request #12513 from brendandburns/tc2
...
integrate bandwidth shaping and the kubelet.
2015-09-02 09:44:10 -07:00
k8s-merge-robot
f5c2d90c3a
Merge pull request #12293 from deads2k/testclient-specific-reaction
...
Auto commit by PR queue bot
2015-09-02 09:18:24 -07:00
k8s-merge-robot
cc811b3519
Merge pull request #13473 from yujuhong/check_volumes
...
Auto commit by PR queue bot
2015-09-02 07:32:57 -07:00
Marcin Wielgus
3e9932557d
Merge pull request #13052 from pmorie/podip-fix
...
Fix race condition for consuming podIP via downward API
2015-09-02 16:04:01 +02:00
Yu-Ju Hong
08ec796995
kubelet: remove orphaned pod directories properly
...
PR #13293 added a safety check to not remove a pod directory if the child
volumes directory is not empty. This logic is faulty because kubelet may have
directory structures podUID/volumes/volumeKind/volumeName. E.g.,
`056db95d-50ee-11e5-a2e4-42010af0ba1d/volumes/kubernetes.io~empty-dir/default-token-al3r2`
This change fixes that by properly listing all volumes under a pod.
2015-09-01 15:39:17 -07:00
Brendan Burns
64717962cf
Merge pull request #13211 from ashcrow/kubelet-disk-manager-tests
...
test: improved kubelet disk_manager coverage.
2015-09-01 10:10:07 -07:00
Brendan Burns
43e7c9b211
Merge pull request #13367 from spothanis/cinder
...
Cinder Volume Plugin
2015-09-01 10:05:15 -07:00
deads2k
7e180c258d
update testclient for delegating reaction chain
2015-09-01 12:58:35 -04:00
k8s-merge-robot
5331a26c5b
Merge pull request #13293 from yujuhong/pod_dir
...
Auto commit by PR queue bot
2015-09-01 04:59:55 -07:00
k8s-merge-robot
49475c3431
Merge pull request #13061 from yifan-gu/rkt_patch_events
...
Auto commit by PR queue bot
2015-09-01 04:10:18 -07:00
Yu-Ju Hong
13b268b378
kubelet: define the minimum housekeeping period
...
Before, kubelet performs global cleanup tasks every iteration. After the
PR #13003 , kubelet performs the tasks on every sync internval (10 seconds).
This PR decouples the housekeeping period with the sync internval to ensure
that kubelet cleans up promptly, while not too often (no more than once every
minimum housekeeping period).
2015-08-31 17:28:20 -07:00
Paul Morie
4ff66bd70a
Fix race exposing pod IP via downward API
2015-08-31 19:18:58 -04:00
Harry Zhang
18315db025
Allow multiple host ports map to the same port in container
2015-08-31 15:22:30 +08:00
Brendan Burns
9f3ef68ebc
integrate bandwidth shaping and the kubelet.
2015-08-30 22:24:09 -07:00
k8s-merge-robot
4a7115d272
Merge pull request #11955 from pedro-r-marques/flag_resolv_conf
...
Auto commit by PR queue bot
2015-08-30 21:03:54 -07:00
Sreekanth Pothanis
f5da6b34ce
Cinder Volume Plugin
2015-08-30 19:56:27 -07:00
k8s-merge-robot
093614ec32
Merge pull request #13320 from yujuhong/fix_restarts
...
Auto commit by PR queue bot
2015-08-28 23:00:11 -07:00
Tim Hockin
1aca401813
Don't name 'eth0' in MASQUERADE rule
...
This causes endless loops of adding duplicate rules on machines without "eth0".
2015-08-28 22:32:30 -07:00
Pedro Roque Marques
bf170a688c
Update annotations in the kubelet.
...
When the pod annotations are updated in the apiserver, update the pod.
Annotations may be used to convey attributes that are required to the
pod execution, such as networking parameters.
2015-08-28 15:50:13 -07:00
Sami Wagiaalla
ccd0fcd1f9
Rmove Hostname health check
...
The health check is no longer needed since health checks are no longer
run by master but updated by the kubelet; so a host with the incorrect
host name will not be updated and show 'NotReady' status
Signed-off-by: Sami Wagiaalla <swagiaal@redhat.com>
2015-08-28 16:53:02 -04:00
Yu-Ju Hong
f707ca08d5
Fix incorrect restart count for docker containers
2015-08-28 11:54:30 -07:00
Prashanth B
05b205bab6
Revert "Volume Plugin for Cinder; Openstack Block Storage"
2015-08-28 10:56:24 -07:00
Prashanth B
8d0d54ffed
Merge pull request #6689 from spothanis/cinder-vol-plugin
...
Volume Plugin for Cinder; Openstack Block Storage
2015-08-28 10:47:31 -07:00
Yu-Ju Hong
8774f6efa2
kubelet: don't remove any pod directory with non-empty volumes
...
If the volumes directory is not empty, it implies that volumes may not have
been properly cleaned up yet. Do not attempt to remove the pod directory.
2015-08-27 22:18:51 -07:00
Yu-Ju Hong
697197d383
Kubelet: do not remove pod directory if any container is still running
...
If there are any running container in the pod, we cannot remove the volume.
Therefore, we should not attempt to remove the pod directory.
2015-08-27 18:19:13 -07:00
Steve Milner
3181e5b913
test: improved kubelet disk_manager coverage.
2015-08-27 15:54:45 -04:00
Pedro Roque Marques
99b1da848d
Add kubelet '--resolv-conf' flag.
...
Allow the user to specify the resolver configuration file that is used
to determine the default DNS parameters. This defaults to the system's
/etc/resolv.conf.
2015-08-26 15:41:36 -07:00
Yu-Ju Hong
c7afae75f5
Merge pull request #13103 from yujuhong/restart_count
...
Kubelet: fix container restart counts
2015-08-26 15:13:10 -07:00
Yu-Ju Hong
d839ab2024
Merge pull request #12940 from Miciah/Warning-to-Warningf
...
glog.Warning -> glog.Warningf
2015-08-26 13:36:05 -07:00
Yifan Gu
67e1589a08
kubelet/rkt: add created/started/failed/killing events.
...
Also improve the logging for rkt command line commands.
2015-08-26 10:39:10 -07:00
Yu-Ju Hong
c237ac4c84
Merge pull request #13003 from yujuhong/decouple_workers
...
kubelet: trigger pod workers independently
2015-08-26 09:53:25 -07:00
Jimmi Dyson
3a6701c85f
Ensure container metrics are registered with prometheus even without
...
cadvisor http server
Fixes #13200
2015-08-26 13:35:32 +01:00
Yifan Gu
6ced66249d
kubelet/dockertools: clear container reference when killing a container.
2015-08-25 18:22:08 -07:00
Yu-Ju Hong
b906e34576
kubelet: trigger pod workers independently
...
Currently, whenever there is any update, kubelet would force all pod workers to
sync again, causing resource contention and hence performance degradation.
This commit flips kubelet to use incremental updates (as opposed to snapshots).
This allows us to know what pods have changed and send updates to those pod
workers only. The `SyncPods` function has been replaced with individual
handlers, each handling an operation (ADD, REMOVE, UPDATE). Pod workers are
still triggered periodically, and kubelet performs periodic cleanup as well.
This commit also spawns a new goroutine solely responsible for killing pods.
This is necessary because pod killing could hold up the sync loop for
indefinitely long amount of time now user can define the graceful termination
period in the container spec.
2015-08-25 17:52:01 -07:00
Yu-Ju Hong
655645eb9c
Merge pull request #13041 from yifan-gu/rkt_patch_fix
...
kubelet/rkt: merge environments instead of overriding.
2015-08-25 16:58:00 -07:00
Yu-Ju Hong
3bc2157889
Merge pull request #13100 from pweil-/cap-priv-sources
...
use privileged source object
2015-08-25 16:10:50 -07:00
Sreekanth Pothanis
c841a20361
Cinder Volume Plugin
2015-08-25 15:13:56 -07:00
Yifan Gu
7767dafb4d
kubelet/rkt: include the pod restart count in service file.
...
Also remove the service file when the pod is killed.
2015-08-25 13:59:18 -07:00
Yifan Gu
763ffdb1fe
kubelet/rkt: merge environments instead of overriding.
...
Merge the environments in container spec and in the image
manifest. Also allow empty app in image manifest.
2015-08-25 13:10:58 -07:00
Yu-Ju Hong
9f508e9422
Merge pull request #13076 from invenfantasy/master
...
Cleanup deprecated Forever function
2015-08-25 10:07:10 -07:00
Nikhil Jindal
8846c841a8
Merge pull request #12648 from samsabed/crashloop
...
back off restarts of crashlooping containers
2015-08-24 18:54:13 -07:00
Paul Weil
709e654686
use privileged source object
2015-08-24 16:53:43 -04:00
Yu-Ju Hong
1e26cdfb67
kubelet: fix container restart counts
...
This commit ensures that the container restart count increments monotonically
when there is no kubelet restarts.
2015-08-24 12:50:05 -07:00
Nikhil Jindal
a1c5f3f45d
Merge pull request #12876 from yujuhong/pod_status
...
kubelet: switch to using pod UID as the key in status manager
2015-08-24 10:39:02 -07:00
Sam Abed
995cb15bb6
back off restarts of crashlooping containers
...
Signed-off-by: Sam Abed <samabed@gmail.com>
2015-08-24 21:43:17 +10:00
caogaojin
60cb4406e9
Cleanup deprecated Forever function
...
Since util.Forever function has been deprecated, we should cleanup these
pieces of code.
2015-08-24 10:31:59 +08:00
tamnd
906b279080
Support new docker config format for private registries
2015-08-22 15:37:25 +07:00
Zach Loafman
73d105e22c
Merge pull request #12959 from smarterclayton/handle_pods_in_kubelet
...
Support graceful termination in the Kubelet (5/7)
2015-08-21 16:13:21 -07:00
Yifan Gu
a2b148b27b
kubelet/rkt: fix rkt version parsing.
...
Use SemVer to parse the version string.
2015-08-21 10:45:11 -07:00
Clayton Coleman
f5c4a3e7a6
Handle graceful termination in the Kubelet
...
Supports pods that are gracefully deleted on the server being
handled in the Kubelet
preStop is limited to the grace period of the pod in execution.
2015-08-21 10:18:21 -04:00
k8s-merge-robot
44c76d5319
Merge pull request #12957 from smarterclayton/handle_terminating_pods
...
Auto commit by PR queue bot
2015-08-20 21:47:00 -07:00
Saad Ali
9c29733435
Merge pull request #12938 from yifan-gu/rkt_patch_container_log
...
kubelet/rkt: Add support for fetching per container log.
2015-08-20 17:27:49 -07:00
Saad Ali
1db153cee3
Merge pull request #12895 from lvlv/uts
...
use host uts namespace when pod.Spec.HostNetwork is true
2015-08-20 17:26:03 -07:00
Saad Ali
a90b67f276
Merge pull request #12880 from yifan-gu/pod_status
...
kubelet: refactor kubecontainer.Pod, remove PodStatus from it.
2015-08-20 17:25:29 -07:00
Saad Ali
9b01580946
Merge pull request #12872 from runningwild/master
...
Fix several problems with using rkt on gce
2015-08-20 15:46:16 -07:00
Saad Ali
3f66648ada
Merge pull request #12832 from yifan-gu/rkt_patch_img
...
kubelet/rkt: update image related interfaces.
2015-08-20 14:32:55 -07:00
Yifan Gu
045a164362
kubelet/rkt: update image related interfaces.
...
Add RemoveImage(), ListImages().
Update PullImage(), IsImagePresent().
2015-08-20 11:16:18 -07:00
Clayton Coleman
02dbb95447
Add TerminationGracePeriodSeconds to API
...
Set defaulting for pod spec
2015-08-20 11:03:38 -04:00
Saad Ali
f396a7116d
Merge pull request #12811 from mvdan/kubelet-restful
...
kubelet: Switch to restful for the REST api endpoints
2015-08-19 16:48:50 -07:00
Saad Ali
fb18b09306
Merge pull request #12885 from dchen1107/docker
...
Leave process 1 at root cgroup
2015-08-19 14:56:52 -07:00
Miciah Masters
8aa299da90
glog.Warning -> glog.Warningf
...
Fix three places where glog.Warning is used with a formatted string.
2015-08-19 16:22:28 -04:00
Yifan Gu
710c34a362
kubelet/rkt: Add support for fetching per container log.
2015-08-19 12:13:04 -07:00
Jonathan Wills
80e799fc0c
Allow configuring the rkt binary in a kubelet with a flag.
...
This is necessary because coreos comes with rkt installed, and if we want to use a different version
we need some way to avoid the default one.
2015-08-19 09:42:13 -04:00
Lv Lv
7cf9ee19c7
add test for utsMode change
2015-08-19 16:56:19 +08:00
Lv Lv
0b90dfba3a
use host uts namespace when pod.Spec.HostNetwork is true
2015-08-19 13:02:10 +08:00
Robert Bailey
08e6a43c1d
Revert "Merge pull request #9165 from smarterclayton/graceful"
...
This reverts commit 4f856b595d
, reversing
changes made to d78525a83b
.
Conflicts:
pkg/kubelet/status_manager.go
2015-08-18 17:34:49 -07:00
Yifan Gu
69f796f234
kubelet: refactor kubecontainer.Pod, remove PodStatus from it.
2015-08-18 16:27:22 -07:00
Dawn Chen
8b3937c9bf
Leaving process 1 at root cgroup.
2015-08-18 16:21:28 -07:00
Dawn Chen
2339a7796f
Remove stale comment.
2015-08-18 16:07:15 -07:00
Yu-Ju Hong
0c84b837cf
kubelet: switch to using pod UID as the key in status manager
...
We chose to use podFullName (name_namespace) as key in the status manager
because mirror pod and static pod share the same status. This is no longer
needed because we do not store statuses for static pods anymore (we only
store statuses for their mirror pods). Also, reviously, a few fixes were
merged to ensure statuses are cleaned up so that a new pod with the same
name would not resuse an old status.
This change cleans up the code by using UID as key so that the code would
become less brittle.
2015-08-18 14:39:02 -07:00
Robert Bailey
11d5712278
Merge pull request #12736 from deads2k/relax-pull-secret-constraints
...
tolerate missing image pull secrets:
2015-08-18 11:48:01 -07:00
Daniel Martí
7862ed3656
kubelet: Switch to restful for the REST api endpoints
2015-08-18 11:28:34 -07:00
Kris Rousey
ae6c64d9bb
Moving everyone to unversioned client
2015-08-18 10:23:03 -07:00
Clayton Coleman
780accb3ba
Kubelet should garbage collect dead pods
...
The sync loop should check for terminated pods that are no longer
running and clear them. The status loop should never write status
if the pod UID changes. Mirror pods should be deleted immediately
rather than gracefully.
2015-08-18 09:08:44 -04:00
Clayton Coleman
89f1f3b1b8
Alter graceful deletion to not use TTL
...
Avoid TTL by deleting pods immediately when they aren't
scheduled, and letting the Kubelet delete them otherwise.
Ensure the Kubelet uses pod.Spec.TerminationGracePeriodSeconds
when no pod.DeletionGracePeriodSeconds is available.
2015-08-18 09:08:43 -04:00
Clayton Coleman
b842a7dd15
Revert "Revert "Gracefully delete pods from the Kubelet""
...
This reverts commit 98115facfd
.
2015-08-18 08:57:02 -04:00
Brendan Burns
a9580a0ad0
Merge pull request #12595 from smarterclayton/add_pod_status_ip
...
Add status.podIP as a valid downward API target
2015-08-14 20:29:50 -07:00
Brendan Burns
eb8b1aa87e
Merge pull request #12694 from yifan-gu/rkt_patch
...
kubelet/rkt: minor updates to match rkt v0.7.0.
2015-08-14 20:27:30 -07:00
Clayton Coleman
01f3785426
Add status.podIP as a valid downward API target
...
Getting the public IP a container is supposed to use is O(hard),
and usually involves ugly gyrations in python or with interfaces.
Using the downward API means that the IP Kube is announcing to
other endpoints is also visible inside the container for pods to
identify themselves.
2015-08-14 17:51:55 -04:00
deads2k
c24d176f65
tolerate missing image pull secrets:
2015-08-14 12:51:28 -04:00
xiejunan
f5446f2aa3
fix error in findPortByName
...
using ContainerPort instead of HostPort
2015-08-14 14:00:05 +08:00
Yifan Gu
558e692f93
kubelet/rkt: minor updates to match rkt v0.7.0.
2015-08-13 18:16:12 -07:00
Yifan Gu
d70a30c069
kubelet: refactor kubelet.Runtimehooks to container.ImagePuller.
2015-08-12 16:28:25 -07:00
jiangyaoguo
9ab4a46b9d
Keep event reason in kubelet consistent with others
2015-08-12 19:00:09 +08:00
Piotr Szczesniak
1df0267f4a
Merge pull request #12551 from eparis/underscore-to-dash
...
Update code and docs to use - in flag names instead of _
2015-08-12 07:16:31 +02:00
Yu-Ju Hong
56f4605f47
kubelet: refactor SyncPods for better readability
...
Eventually we would like to replace the all-encompassing SyncPods function with
more well-defined, smaller functions. This would not only help with the
readability and profiling of the code, it'd also set in motion for the plans to
trigger pod worker individually based on the content of the pod updates.
This commit serves as the first step of that, while avoiding breaking all unit
tests by preserving the SyncPods function for the time being.
2015-08-11 16:40:26 -07:00
Kris Rousey
565189f5b8
Correcting all go vet errors
2015-08-11 13:55:37 -07:00
Eric Paris
5aa495cdad
Update code to use - in flag names instead of _
2015-08-11 16:31:52 -04:00
Filip Grzadkowski
999eff1b7f
Merge pull request #12510 from markturansky/improve_failed_mount_msg
...
Removed spew from failed volume mount event
2015-08-11 12:35:02 +02:00
Filip Grzadkowski
3f7b54cbdb
Merge pull request #11669 from pweil-/sc-nonroot
...
add non-root directive to SC and kubelet checking
2015-08-11 10:30:53 +02:00
markturansky
0b72bb2458
removed spew from event error
2015-08-10 23:16:15 -04:00
Alex Robinson
e899a36de8
Merge pull request #12491 from yifan-gu/bump_appc
...
Godeps: bump appc/spec to v0.6.1+git.
2015-08-10 16:38:49 -07:00
Alex Robinson
20c189d752
Merge pull request #12471 from peter-edge/docker-new-client-from-env
...
Use docker.NewClientFromEnv for creation of docker.Client
2015-08-10 14:22:21 -07:00
Yifan Gu
7e5cfd137a
Godeps: bump appc/spec to v0.6.1+git.
2015-08-10 11:21:28 -07:00
Paul Weil
e490c20c22
add non-root directive to SC and kubelet checking
2015-08-10 13:30:34 -04:00
Tamer Tas
f5d5befe17
Add documentation for pkg/kubelet/rkt
2015-08-10 19:34:36 +03:00
Marek Grabowski
5f9cefc1d8
Merge pull request #12441 from vlajos/typofixes-vlajos-20150807
...
typofix - https://github.com/vlajos/misspell_fixer
2015-08-10 16:33:52 +02:00
Marek Grabowski
8580e17ff1
Merge pull request #12374 from wulonghui/wulonghui-patch-1
...
Add NodeInternalIP for Node's Addresses when cloud provider is nil
2015-08-10 15:01:00 +02:00
peter-edge
0458d707ac
use docker.NewClientFromEnv for creation of docker.Client
2015-08-10 13:29:56 +02:00
Marek Grabowski
e034712456
Merge pull request #11788 from HaiyangDING/ImproveClarityResource
...
Improve clarity around PodFitsResource(issue#11453)
2015-08-10 09:56:32 +02:00
Veres Lajos
9f77e49109
typofix - https://github.com/vlajos/misspell_fixer
2015-08-08 22:31:48 +01:00
Satnam Singh
4ece39ac20
Merge pull request #9452 from yifan-gu/img_pulling
...
kubelet: Add 'image pulling' event. Refactor dockerManager.createPodInfraContainer()
2015-08-07 15:23:24 -07:00
Satnam Singh
bee48f4ce5
Merge pull request #12035 from AnanyaKumar/requests
...
Add support for request
2015-08-07 14:27:34 -07:00
Satnam Singh
950ec96db0
Merge pull request #12182 from AnanyaKumar/qos-node
...
Add QoS support on node
2015-08-07 14:27:02 -07:00
Yifan Gu
053db8dba7
kubelet/dockertools: Refactor image pulling for pod infra container.
...
Replace the trunk of pull image code with dockerManagner.pullImage().
Also add tests to verify the image pulling/pulled events.
2015-08-07 11:42:04 -07:00
Ananya Kumar
6ef3de1d5f
Add QoS support on node
2015-08-07 11:18:16 -07:00
Yifan Gu
eb0fb43453
kubelet: Add image pulling event.
...
Since it takes a while (1-2mins) for kubelet to pulling a big image
(>500MB). Just showing "Pending" for pod status is not very helpful.
This commit introduces a "pulling" event, and inserts it before the
kubelet starts to pull an image.
2015-08-07 10:50:39 -07:00
dinghaiyang
dab7280ae4
Improve clarity around PodFitsResource by showing pods limits in kubectl describe node
2015-08-07 16:58:11 +08:00
wulonghui
b50e736184
Add NodeInternalIP for Node's Addresses when cloud provider is nil
2015-08-07 09:08:56 +08:00
Rajat Chopra
1ce6d80a89
ipv6 test
2015-08-06 15:46:05 -07:00
Rajat Chopra
58a742e667
status hook for the container network
2015-08-06 15:46:04 -07:00
Wojciech Tyczynski
29aaf1a4d2
Merge pull request #12168 from brendandburns/stdin2
...
Support Stdin and TTY in the kubelet
2015-08-06 13:45:59 +02:00
Brendan Burns
901a04a3d6
Add support for interactive contaienrs to the kubelet
2015-08-05 22:14:56 -07:00
Mike Danese
fe6b15ba2f
rewrite all links to issues to k8s links
2015-08-05 21:11:11 -07:00
Ananya Kumar
ef1e576810
Add support for request
2015-08-05 19:00:19 -07:00
Mike Danese
17defc7383
run gofmt on everything we touched
2015-08-05 17:52:56 -07:00
Mike Danese
8e33cbfa28
rewrite go imports
2015-08-05 17:30:03 -07:00
deads2k
182885e897
make testclient more precise
2015-08-04 13:35:59 -04:00
Mike Danese
a23ee556ad
Merge pull request #11999 from brendandburns/attach2
...
Add support for attach to kubectl
2015-07-31 12:51:08 -07:00
Piotr Szczesniak
41de62b465
Merge pull request #12022 from piosz/cadvisor
...
Update cadvisor dependency
2015-07-31 05:56:36 +02:00
Mike Danese
9582c7e54e
Merge pull request #12024 from a-robinson/metadata
...
Support passing a header to the manifest URL in the kubelet.
2015-07-30 13:46:22 -07:00
Brendan Burns
e8e756a719
Add pod/attach to the APIServer.
2015-07-30 10:55:53 -07:00
Alex Robinson
a9f0c4683f
Limit the logging from kubelet attempting to read its manifest URL.
...
Without this, it logs an error every 20 seconds if nothing is at the
provided URL.
2015-07-30 17:47:33 +00:00
Alex Robinson
cf011cad55
Support passing a header to the manifest URL in the kubelet.
...
Needed to support using GCE's v1 metadata API, which requires passing
the header "Metadata-Flavor: Google".
2015-07-30 17:11:27 +00:00
Piotr Szczesniak
7e305c43f0
Set maxHousekeepingInterval to 15 seconds.
2015-07-30 16:44:45 +02:00
Mike Danese
1b84fb7d74
make testclient threadsafe by guarding internal state with accessors
2015-07-29 16:17:17 -07:00
Mike Danese
f18b09963e
Merge pull request #11766 from deads2k/kubelet-prefers-ipv4
...
make kubelet prefer ipv4 address if available
2015-07-29 10:33:23 -07:00
deads2k
2c06f11052
make kubelet prefer ipv4 address if available
2015-07-28 15:45:57 -04:00
Brendan Burns
64be76c14d
Add support for Attach to the kubelet.
...
This is a pre-cursor to supporting 'kubectl attach ...' and 'kubectl run -it ...'
2015-07-27 21:48:55 -07:00
Marek Grabowski
00cd52dd68
Merge pull request #10656 from krousey/timeouts
...
Adding proper timeouts.
2015-07-27 10:56:58 +02:00
Mike Danese
b51b4e740f
Merge pull request #10639 from caseydavenport/master
...
Allow specification of a network plugins directory when starting kubelet
2015-07-24 11:09:11 -07:00
Vish Kannan
136d53466a
Merge pull request #10892 from nikhiljindal/beta1
...
Removing references to pre v1beta3 apis in code
2015-07-23 17:05:43 -07:00
Casey D
aeb7dc6b30
Allow specification of network plugins directory when starting kubelet
2015-07-23 11:21:39 -07:00
Wojciech Tyczynski
6524cd5e2a
Merge pull request #11562 from MikaelCluseau/master
...
realContainerGC reports warning when err is nil
2015-07-23 13:39:24 +02:00
Vish Kannan
4421b3dfdd
Merge pull request #10821 from jimmidyson/gc-container-volumes
...
Fixes #10803 : Delete Docker container volumes on GC
2015-07-22 16:02:03 -07:00
Mikaël Cluseau
aff10f57bb
realContainerGC reports warning when err is nil
2015-07-20 14:11:52 +11:00
Kris Rousey
1d033b9912
Adding proper timeouts.
2015-07-10 14:42:59 -07:00
Rohit Jnagal
affba42a05
Merge pull request #10958 from cjcullen/racefix
...
Remove race in setting/reading kubelet.podCIDR
2015-07-10 10:09:44 -07:00
CJ Cullen
da0bc5f690
Remove race in setting/reading kubelet.podCIDR
2015-07-08 14:58:14 -07:00
nikhiljindal
fc4da6844e
removing references to pre v1beta3 apis
2015-07-08 13:51:43 -07:00
Jimmi Dyson
8e482462fb
Fixes #8945 : Cleanup log symlinks on remove & dead log symlinks
2015-07-08 08:43:59 +01:00
Jimmi Dyson
159c3c87de
Fixes #10803 : Delete Docker container volumes on GC
2015-07-07 13:11:28 +01:00
Yu-Ju Hong
b9cc548799
Merge pull request #10763 from bprashanth/timer_leak
...
Don't leak tickers during an exec probe
2015-07-06 11:59:24 -07:00
Yu-Ju Hong
b58e7c8c2d
Merge pull request #10655 from dchen1107/cadvisor
...
Set minimal shares for containers with no cpu specified
2015-07-06 11:38:54 -07:00
Prashanth Balasubramanian
33e2f7cb8b
Don't leak tickers in the exec probe
2015-07-05 17:52:52 -07:00
Justin Santa Barbara
fca7822800
Misc (non-code) spelling fixes
2015-07-04 10:39:37 -04:00
Dawn Chen
9ce11545c0
Explicitly configure master component containers and nginx with 200m each.
2015-07-02 10:46:39 -07:00
Nikhil Jindal
204b90e697
Merge pull request #10593 from lavalamp/kubeletRegister
...
Fix node not rejoining cluster on reboot
2015-07-02 10:39:17 -07:00
Wojciech Tyczynski
ef41ceb3e4
Merge pull request #10646 from yujuhong/reduce_noise
...
Kubelet: stop logging "Error on reading termination-log..." messages
2015-07-02 09:32:27 +02:00
Dawn Chen
4b85e02504
Set minimal shares for containers with no cpu specified
2015-07-01 21:17:07 -07:00
Zach Loafman
700a6441de
Merge pull request #10313 from yujuhong/kubelet_delete
...
Add an e2e test to verify that pods are deleted on nodes
2015-07-01 16:47:30 -07:00
nikhiljindal
274792d7bb
Stop exposing v1beta3 by default
2015-07-01 14:38:02 -07:00
Yu-Ju Hong
d6ff297a1f
Kubelet: stop logging "Error on reading termination-log..." messages
...
If a pod was deleted and the associated volumes/directory were removed, there
could be a window where the pod worker is still active. If the pod worker tries
to inspect the logs, such an error would be logged. Since the pod has been
deleted, such error messages are meaningless.
This change stops logging this error, but stores the error string in the pod
status. The pod status will be updated for pods that are still alive, and will
be discarded eventually for deleted pods.
2015-07-01 14:20:42 -07:00
Zach Loafman
9363285b4a
Merge pull request #10320 from yujuhong/kubelet_logging
...
Kubelet: add and modify some logging messsages
2015-07-01 14:16:23 -07:00
Daniel Smith
5911a12b14
Fix node not rejoining cluster on reboot
...
Also improve logging. Fixes #10368 .
GCE's external ID apparently can change after a reboot.
2015-07-01 10:21:24 -07:00
Yu-Ju Hong
de75a42cb2
Add a kubelet /runningpods endpoint
...
/runningpods returns a list of pods currently running on the kubelet. The list
is composed by examining the container runtime, and may be different from the
desired pods to run known by kubelet.
This is useful for tests to verify that pods are indeed deleted on nodes.
2015-06-29 11:29:23 -07:00
Prashanth Balasubramanian
029e0ad350
Kubelet doesn't fight apiserver for cputime on the master.
2015-06-28 19:53:35 -07:00
Robert Bailey
0048eae8eb
Merge pull request #9965 from stevekuznetsov/skuznets/allow-https
...
Allowing for HTTPS Probes
2015-06-26 10:43:37 -07:00
Steve Kuznetsov
3008ff6150
Changed HTTPGetAction to allow user-defined schemes
2015-06-25 16:59:12 -04:00
Maxwell Forbes
1904d4e1ce
Merge pull request #10330 from brendandburns/addon
...
Use the namespace of the pod when creating the mirror.
2015-06-25 10:04:25 -07:00
Maxwell Forbes
2bb4cf3f8f
Merge pull request #10266 from ArtfulCoder/kubelet_resolv
...
update docker's resolv.conf file with options ndots:5
2015-06-25 09:54:36 -07:00
Abhishek Shah
23caf446ae
update docker's resolv.conf file with options ndots:5
2015-06-24 23:33:58 -07:00
Brendan Burns
c669fe300c
Use the namespace of the pod when creating the mirror.
2015-06-24 21:49:40 -07:00
Maxwell Forbes
3afda5d566
Merge pull request #10312 from dchen1107/cleanup
...
Take 2: Fix the race between configuring cbr0 and restarting static pods
2015-06-24 17:59:50 -07:00
Maxwell Forbes
28946766a3
Merge pull request #9807 from krousey/container_manifest
...
Removing ContainerManifest
2015-06-24 17:55:29 -07:00
Dawn Chen
710fb4e413
add iptables rule for MASQUERADE for egress
2015-06-24 17:19:57 -07:00
Yu-Ju Hong
f7fd7e9687
Kubelet: add and modify some logging messsages
...
This helps debug #6651
2015-06-24 16:29:19 -07:00
Maxwell Forbes
befe545033
Merge pull request #10253 from yifan-gu/log
...
kubelet/status_manager: Small logging fix.
2015-06-24 15:01:40 -07:00
Kris Rousey
d13421e084
Removing ContainerManifest
2015-06-24 11:31:34 -07:00
Dawn Chen
6ddfa512de
Revert "Revert "Fix the race between configuring cbr0 and restarting static pods""
...
This reverts commit fd0a95dd12
.
2015-06-24 11:10:10 -07:00
Piotr Szczesniak
fd0a95dd12
Revert "Fix the race between configuring cbr0 and restarting static pods"
2015-06-24 09:56:49 +02:00
Jeff Lowdermilk
f4e7b5480d
Merge pull request #10249 from mikedanese/unlink-test-libs
...
unlink testlibs from kube-apiserver and kubelet, remove test flags
2015-06-23 17:16:31 -07:00
Jeff Lowdermilk
50d50a3cb8
Merge pull request #10211 from dchen1107/cleanup
...
Fix the race between configuring cbr0 and restarting static pods
2015-06-23 17:09:01 -07:00
Dawn Chen
9dbe6fe4e4
Added more comments.
2015-06-23 16:28:41 -07:00
Jeff Lowdermilk
d212ea17cd
Merge pull request #10182 from bprashanth/kubelet_status
...
Fix kubelet deadlock
2015-06-23 15:40:49 -07:00
Yifan Gu
384f022681
kubelet/status_manager: small logging fix.
2015-06-23 13:49:34 -07:00
Dawn Chen
23200d303f
Fix several issues on running syncPods until network is configured.
...
Also fixed unittests and compiling.
2015-06-23 12:11:19 -07:00
Mike Danese
06c35a177c
unlink testlibs from kube-apiserver and kubelet
2015-06-23 12:04:05 -07:00
Brendan Burns
192ffdfb25
Fix the container bridge so that it can create cbr0
...
Fix the kubelet so that it tries to sync status, even if Docker is down
2015-06-22 23:18:01 -07:00
Prashanth Balasubramanian
af175cc00b
Add a pod status equality method to the status manager.
2015-06-22 13:49:49 -07:00
Jeff Lowdermilk
b7583b799f
Merge pull request #10151 from brendandburns/explore
...
Remove some dead code.
2015-06-22 12:02:05 -07:00
Jeff Lowdermilk
85770295c2
Merge pull request #10004 from ArtfulCoder/kubelet_health
...
Augmented kubelet healthz with syncLoop check.
2015-06-22 10:53:05 -07:00
Prashanth Balasubramanian
5f61392e6f
Add logging to debug container runtime failures
2015-06-22 10:22:35 -07:00
Prashanth Balasubramanian
64ad3e17ad
Fix deadlock
2015-06-22 10:22:35 -07:00
Prashanth Balasubramanian
4b990d128a
Don't flood the status manager with updates from multi-container pods
2015-06-22 10:22:28 -07:00
Anastasis Andronidis
101739a6be
Added Reason in PodStatus
2015-06-21 17:05:34 +02:00
Brendan Burns
26b682d6a0
Remove some dead code.
2015-06-19 21:32:13 -07:00
Abhishek Shah
3556993179
Augmented kubelet healthz with syncLoop check.
...
Monit uses read-only port for health monitoring.
2015-06-19 18:14:01 -07:00
Satnam Singh
2012238204
Merge pull request #9457 from yujuhong/seen
...
Kubelet: record the initial pod processing latency
2015-06-19 15:24:16 -07:00
Yu-Ju Hong
f96a8d0935
Kubelet: record the initial pod processing latency
...
Add a new latency metric for the time from seeing the pod for the first time
to starting a pod worker for it.
Also, change PodStartLatency to include this initial processing latency.
2015-06-19 12:07:55 -07:00
Yifan Gu
40e46bbb37
kubelet: Remove newTestKubeletWithFakeRuntime() and other depreciated functions.
...
This cleans up the kubelet tests. Almost no docker specified tests now.
2015-06-19 10:28:27 -07:00
Yifan Gu
91e198cb70
kubelet: Move TestSyncPodWithTerminationLog() to dockertools package.
...
Update the fakeOptionGenerator to create the pod container directory,
so that fake docker client can see and record the termination log path.
2015-06-19 10:28:27 -07:00
Yifan Gu
6ddffdd736
kubelet: Move TestPortForwardNoSuchContainer() to dockertools package.
...
Also refactor TestPortForward() to be neutral to container runtime.
2015-06-19 10:28:27 -07:00
Satnam Singh
e584629272
Merge pull request #10048 from rajatchopra/master
...
Assign host's IPAddress to podIP when pod shares the host's network
2015-06-19 08:16:24 -07:00
Satnam Singh
d06a460007
Merge pull request #10066 from dchen1107/clean
...
Make kubelet first acknowledge time of a pod as Pod.Status.StartTime.
2015-06-19 08:05:15 -07:00
Dawn Chen
1145e4b80a
Make kubelet first acknowledge time of a pod as Pod.Status.StartTime.
2015-06-18 15:54:48 -07:00
Satnam Singh
4c13f8957d
Merge pull request #10057 from justinsb/aws_id_as_name_2
...
Fix of reverted #9728
2015-06-18 14:07:21 -07:00
Justin Santa Barbara
27b02d0913
Fix kubelet unit test; populate NodeName
...
When we build a Kubelet directly we need to populate NodeName
as well as hostname, because we bypass the functions that normally
do this for us.
2015-06-18 12:40:55 -07:00
Justin Santa Barbara
df87470ecf
Allow cloud providers to return a node identifier different from the hostname
2015-06-18 12:40:05 -07:00
Justin Santa Barbara
dee8d4b90b
For kubelet, differentiate between the nodeName and the hostname
...
This will allow us to use a nodeName that is not the hostname,
for example on clouds where the hostname is not the natural identifier
for a node.
2015-06-18 12:40:01 -07:00
Rajat Chopra
a6a57de646
Assign host's IPAddress to podIP when pod shares the host's network
2015-06-18 11:30:59 -07:00
Satnam Singh
e4f5529a2d
Revert "Allow nodename to be != hostname, use AWS instance ID on AWS"
2015-06-18 11:27:55 -07:00
Brendan Burns
51fb753e11
Update the kubelet to ignore syncing Pods until the container runtime is up.
2015-06-18 10:27:04 -07:00
Satnam Singh
790ca2344f
Merge pull request #9728 from justinsb/aws_id_as_name
...
Allow nodename to be != hostname, use AWS instance ID on AWS
2015-06-18 10:17:39 -07:00
Saad Ali
544b16d873
Merge pull request #9750 from rjnagal/ux
...
Update cadvisor dependency.
2015-06-17 14:22:38 -07:00
Dawn Chen
32d5f463d2
Add a sanity check to memory limit for /docker-daemon, and allocate
...
at least 150Mi at least.
2015-06-17 12:51:11 -07:00
Dawn Chen
ca95eb75e9
Configured resource-only container /docker-daemon with 70% of node memory
...
capacity. This is a workaround to docker memory leakage issue.
2015-06-17 11:40:30 -07:00
Saad Ali
d5e00d3990
Merge pull request #9523 from bprashanth/kl_stats
...
Scrape /metrics of kubelets from e2e tests
2015-06-17 11:30:28 -07:00
gmarek
c2c1045e09
Add startup latency e2e "test"
2015-06-17 17:40:07 +02:00
Justin Santa Barbara
efaead81dc
Allow cloud providers to return a node identifier different from the hostname
2015-06-17 00:40:43 -04:00
Justin Santa Barbara
c28cdfbd43
For kubelet, differentiate between the nodeName and the hostname
...
This will allow us to use a nodeName that is not the hostname,
for example on clouds where the hostname is not the natural identifier
for a node.
2015-06-17 00:40:43 -04:00
Saad Ali
43889c612c
Merge pull request #9918 from caesarxuchao/common_test
...
remove references to v1beta1 in common_test.go
2015-06-16 18:59:19 -07:00
Saad Ali
cc5756b2fc
Merge pull request #9809 from bprashanth/stats_cache
...
Use runtime cache to serve container /stats requests
2015-06-16 18:51:53 -07:00
Chao Xu
b093af57ba
cleanse common_test.go of v1beta1
2015-06-16 17:22:35 -07:00
Saad Ali
6ada940e7f
Merge pull request #9706 from hurf/shorten_id
...
Shorten container ID in events
2015-06-16 15:58:30 -07:00
Saad Ali
f82accda25
Merge pull request #9582 from mnagy/fix_quoting
...
Quote integers correctly
2015-06-16 15:55:58 -07:00
Andy Goldstein
7748a02e37
Eliminate possible infinite loop in exec
...
If a user starts an exec session with a shell and leaves it idle long
enough, they will eventually hit the Kubelet's HTTP server's read/write
timeout of 5 minutes. At this time, the StartExec call to Docker exits,
but if the user requested a TTY, the exec'd process does not exit.
After StartExec finishes, we try to determine the exit code of the
exec'd process, but in this case, we'll never get it. This change exits
the loop after 5 tries if the process is still running.
2015-06-16 15:44:09 -04:00
Prashanth Balasubramanian
831d7a36d0
Scrape /metrics of kubelets from e2e tests
2015-06-16 09:50:40 -07:00
Dawn Chen
80c48aedb2
Merge pull request #9824 from dchen1107/clean
...
explicitly applying oom_score_adj(0) to processes of user containers
2015-06-15 17:06:48 -07:00
Dawn Chen
14f78b74cc
Fix the unittests cause by applying oom_score_adj (0) to the user containers.
2015-06-15 16:16:34 -07:00
Dawn Chen
f6f9372d1a
Apply oom_score_adj (0) to PID of user containers by default.
2015-06-15 16:16:34 -07:00
Fabio Yeon
bb5d2101a1
Merge pull request #9765 from brendandburns/fix-kubelet
...
Fix a bug where the network container could be torn down before other pods
2015-06-15 15:09:01 -07:00
Fabio Yeon
5f361c17af
Merge pull request #9759 from mikedanese/actually-fix-logging
...
Fix excessively verbose logging in master's kubelet
2015-06-15 13:35:33 -07:00
Prashanth Balasubramanian
d761b1d4d7
Use runtime cache to serve container /stats requests
2015-06-15 12:39:25 -07:00
Rohit Jnagal
6849b381dc
Update cadvisor dependency.
...
Godep also decided to remove unused appengine dependency.
2015-06-15 19:11:55 +00:00
hurf
d58768b351
Shorten container ID in events
...
Log only first 12 characters of container ID in events.
2015-06-15 17:01:27 +08:00
Brendan Burns
aac696d44c
Fix a bug where the network container could be torn down before other pods.
...
This can break PreStop that hits localhost in the pod.
2015-06-12 21:18:40 -07:00
Mike Danese
64482907ab
cover more codepaths that hit GetNode in standalone, as well as create better error message when we actually do hit GetNode() which is likely a programmer/config error
2015-06-12 17:45:17 -07:00
Abhi Shah
cdef8ae844
Merge pull request #9749 from dchen1107/podstatus
...
Add logging at RunInContainer for future debugging docker exec issues.
2015-06-12 17:10:12 -07:00
Dawn Chen
c1d1a01087
Add logging at RunInContainer for future debugging docker exec issues.
2015-06-12 16:38:24 -07:00
Dawn Chen
b1bbf653ab
Merge pull request #9680 from mikedanese/fix-readiness-probe
...
Fix ReadinessProbe: seperate readiness and liveness in the code
2015-06-12 16:10:21 -07:00
Abhi Shah
3ce7fe8310
Merge pull request #9722 from mikedanese/host-ip-spam
...
Fix spammy GetHostIP error log in kubelet
2015-06-12 15:26:54 -07:00
Abhi Shah
928971cea4
Merge pull request #9710 from mesosphere/public-get-phase
...
export kubelet.GetPhase
2015-06-12 13:46:35 -07:00
Mike Danese
5896ac9e07
skip GetHostIP call on standalone mode kubelet to fix spammy log statement
2015-06-12 11:37:53 -07:00
Abhi Shah
52db576617
Merge pull request #8882 from mesosphere/upstream_k8sm
...
Upstream Kubernetes-Mesos framework
2015-06-12 06:36:20 -07:00
James DeFelice
3cf7739b42
export kubelet.GetPhase
2015-06-12 11:11:53 +00:00
Prashanth Balasubramanian
b5ed0e9b13
Dont generatePodStatus twice for new pods
2015-06-11 17:18:16 -07:00
Mike Danese
35771acdfa
seperate readiness and liveness in the code
2015-06-11 15:09:27 -07:00
James DeFelice
7d66559725
added comments at the top of native k8s files which, if changed, might affect some of the k8sm code
2015-06-10 20:31:22 +00:00
Martin Nagy
ff2b5b78fa
Quote integers correctly
2015-06-10 17:50:58 +02:00
krousey
f62a2a1bb6
Merge pull request #9451 from cjcullen/mig
...
Use Node IP Address instead of Node.Name in minion.ResourceLocation.
2015-06-09 15:52:12 -07:00
krousey
f413f30bea
Merge pull request #9424 from mesosphere/export-generate-pod-status
...
add GetRuntime() to Kubelet for easier integration with 3rd party kubele…
2015-06-09 14:17:30 -07:00
krousey
dd1f4f392f
Merge pull request #9425 from mesosphere/update-testify-dep
...
Update github.com/stretchr/testify rev to 7e4a149
2015-06-09 11:59:00 -07:00
James DeFelice
257bc9b1a3
add GetRuntime() to simplify integration with 3rd party kubelet extensions like kubernetes-mesos
2015-06-09 13:27:34 +00:00
CJ Cullen
2d85e4a094
Use Node IP Address instead of Node.Name in minion.ResourceLocation.
...
Refactor GetNodeHostIP into pkg/util/node (instead of pkg/util to break import cycle).
Include internalIP in gce NodeAddresses.
2015-06-08 16:58:00 -07:00
Tomás Senart
2a3ffe4038
kubelet: Use assert.EqualValues instead of assert.Equal
...
The last update to github.com/stretchr/testify makes `assert.Equal`
consider the type of its arguments. This commit makes this test pass
again by only testing for value equality using `assert.EqualValues`.
2015-06-08 22:01:48 +02:00
krousey
66d2e1cb92
Merge pull request #9358 from dchen1107/podstatus
...
Passing memory swap limit -1 by default. Docker remote API never chec…
2015-06-08 10:19:28 -07:00
Dawn Chen
f714020a7a
Passing memory swap limit -1 by default. Docker remote API never check if memory
...
swap is enabled by kernel or not, instead by default to set the limit to
memory * 2, and return API error 500 if swap is not enabled.
2015-06-05 18:12:05 -07:00
Prashanth Balasubramanian
99f8ddf304
Enable profiling endpoints for kubelet
2015-06-05 12:50:57 -07:00
Dawn Chen
636b40ffa1
Filtered out unfriendly error from docker when registry is not reachable(code: 502, 503, 504)
2015-06-05 11:29:35 -07:00
Yifan Gu
f197a9db4e
kubelet: Minor refactors.
...
Remove some TODOs.
Unexport DockerManager.Puller and DockerManager.PodInfraContainerImage.
Add "docker" for all "go-dockerclient" imports.
2015-06-04 16:08:45 -07:00
Yu-Ju Hong
46e29cfb70
Kubelet: fix the warning message
2015-06-04 11:07:08 -07:00
Brian Grant
656fa7bea1
Merge pull request #9225 from caesarxuchao/add-v1-tests-general
...
Add v1 tests
2015-06-03 22:18:21 -07:00
Chao Xu
ca72165b20
remove most references to api.PreV1Beta3
2015-06-03 20:09:03 -07:00
Brian Grant
f72fa67924
Revert "Use Node IP Address instead of Node.Name in minion.ResourceLocation."
2015-06-03 18:19:22 -07:00
Chao Xu
97b29c7fe6
in pkg/kubelet/config/commont_test.go, remove check for v1beta1, add test cases for all registered version
2015-06-03 16:07:00 -07:00
Daniel Smith
3f454b7599
remove ro refs from more places
2015-06-03 15:41:09 -07:00
Chao Xu
d52cef11a4
add v1 tests to hack/test-go; let default value of Container.SecurityContext to be nil
2015-06-03 09:50:41 -07:00
Brian Grant
36a4ece87a
Merge pull request #9080 from thockin/dns-new-search-kubelet
...
Insert 'svc' into the DNS search paths
2015-06-02 22:54:07 -07:00
Brian Grant
d4acb1d676
Merge pull request #9155 from cjcullen/mig
...
Use Node IP Address instead of Node.Name in minion.ResourceLocation.
2015-06-02 22:51:20 -07:00
Brian Grant
be2547bc39
Merge pull request #9149 from vmarmol/docker-errors
...
Kubelet: Add metric for tracking Docker error count
2015-06-02 22:50:50 -07:00
CJ Cullen
4e5d0da839
Use Node IP Address instead of Node.Name in minion.ResourceLocation.
...
Refactor GetNodeHostIP into pkg/util/node (instead of pkg/util to break import cycle).
Include internalIP in gce NodeAddresses. Remove NodeLegacyHostIP
2015-06-02 20:01:49 -07:00
Victor Marmol
6b0d3d8df0
Add DockerErrors metric in the Kubelet.
...
Allows the tracking of errors by Docker operation.
2015-06-02 17:38:09 -07:00
Victor Marmol
1a805c711a
Refactoring handling of latency recording.
2015-06-02 17:29:13 -07:00
Yu-Ju Hong
64aa958efb
Make PodList span multiple lines for readability
2015-06-02 15:03:38 -07:00
Yu-Ju Hong
55f7b9b9b1
Adapt most CommandRunner tests to use FakeRuntime
2015-06-02 15:03:38 -07:00
Yu-Ju Hong
b3197bb49b
Switch more tests from newTestKubelet to newTestKubeletWithFakeRuntime
2015-06-02 15:03:38 -07:00
Yu-Ju Hong
d4034f9c43
Move more docker-specific tests to dockertools/manager_test.go
2015-06-02 15:03:33 -07:00
Filip Grzadkowski
98115facfd
Revert "Gracefully delete pods from the Kubelet"
2015-06-02 23:40:05 +02:00
Brian Grant
8a9700b2ba
Merge pull request #8864 from ncdc/pluggable-docker-exec
...
Add support for pluggable Docker exec handlers
2015-06-02 14:13:06 -07:00
Brian Grant
0a28edf6e7
Merge pull request #8698 from vmarmol/with-limits
...
Reserve node resources for node services
2015-06-02 13:05:29 -07:00
Tim Hockin
a826529573
Insert 'svc' into the DNS search paths
...
Fixes #8569 .
This requires the DNS server to be running kube2sky v1.6 or higher (part of
release 0.18). Users with older kube2sky MUST NOT update to this kubelet until
they upgrade DNS. Versions of kube2sky >= 1.6 support both old and new style
names. Old style names are deprectaed and will be removed around the time of
kubernetes v1.0 release.
2015-06-01 17:02:17 -07:00
Clayton Coleman
72ee028cab
Gracefully delete pods from the Kubelet
...
This commit wires together the graceful delete option for pods
on the Kubelet. When a pod is deleted on the API server, a
grace period is calculated that is based on the
Pod.Spec.TerminationGracePeriodInSeconds, the user's provided grace
period, or a default. The grace period can only shrink once set.
The value provided by the user (or the default) is set onto metadata
as DeletionGracePeriod.
When the Kubelet sees a pod with DeletionTimestamp set, it uses the
value of ObjectMeta.GracePeriodSeconds as the grace period
sent to Docker. When updating status, if the pod has DeletionTimestamp
set and all containers are terminated, the Kubelet will update the
status one last time and then invoke Delete(pod, grace: 0) to
clean up the pod immediately.
2015-06-01 19:23:59 -04:00
Andy Goldstein
2a0d7ebb11
Add support for pluggable Docker exec handlers
...
Add support for pluggable Docker exec handlers. The default handler is
now Docker's native exec API call. The previous default, nsenter, can be
selected by passing --docker-exec-handler=nsenter when starting the
kubelet.
2015-06-01 16:59:59 -04:00
Victor Marmol
7283e662b5
Introduce SystemContainer to Kubelet ContainerManager.
...
This generalizes the handling of containers in the
ContainerManager.
Also introduces the ability to determine how much
resources are reserved for those system containers.
2015-05-29 17:32:34 -07:00
Kris
f4e2c738f6
Delete deprecated API versions
...
pkg/service:
There were a couple of references here just as a reminder to change the
behavior of findPort. As of v1beta3, TargetPort was always defaulted, so
we could remove findDefaultPort and related tests.
pkg/apiserver:
The tests were using versioned API codecs for some of their encoding
tests. Necessary API types had to be written and registered with the
fake versioned codecs.
pkg/kubectl:
Some tests were converted to current versions where it made sense.
2015-05-29 17:17:35 -07:00
Rohit Jnagal
233ce46b83
Merge pull request #8923 from caesarxuchao/TerminationToTerminated
...
Update ContainerState.Termination to ContainerState.Terminated
2015-05-29 14:51:09 -07:00
Rohit Jnagal
50b9d6284a
Merge pull request #8681 from vmarmol/system-container
...
Create a system container
2015-05-29 09:41:06 -07:00
Chao Xu
2f6e5e2e08
Update ContainerState.Termination to ContainerState.Terminated in pkg/api/types.go and pkg/api/v1/types.go
2015-05-28 17:18:24 -07:00
Tim Hockin
bade36c7dd
Merge pull request #8826 from markturansky/b2d_fix
...
Fixed setNodeStatus to allow running on pods on OS X
2015-05-28 16:54:42 -07:00
Tim Hockin
4318ca5a8b
Rename 'portal IP' to 'cluster IP' most everywhere
...
This covers obvious transforms, but not --portal_net, $PORTAL_NET and
similar.
2015-05-28 16:10:44 -07:00
Tim Hockin
32bb3ae8f1
Merge pull request #7775 from simon3z/cloud-provider-id
...
api: add the ProviderID attribute to NodeSpec
2015-05-28 15:54:00 -07:00
Tim Hockin
081ab3abac
Merge pull request #8853 from caesarxuchao/HostToNodeName
...
update PodSpec.Host to PodSpec.NodeName
2015-05-28 15:50:12 -07:00
Tim Hockin
3830c068b9
Merge pull request #8883 from yujuhong/kubelet_unittest2
...
Kubelet: clean up more unit tests
2015-05-28 15:00:02 -07:00
Chao Xu
9c1153322e
update PodSpec.Host to PodSpec.NodeName in /pkg/api/types.go and /pkg/api/v1beta3/types.go
2015-05-28 14:10:06 -07:00
Federico Simoncelli
2a89428d44
api: add the ProviderID attribute to NodeSpec
...
Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-05-28 13:01:58 -04:00
markturansky
8aa3cb22b5
added pod capacity to node.Status when cadvisor unavailable. defaults to kubelet's pod list length
2015-05-28 10:53:08 -04:00
Tim Hockin
c40dd59130
Merge pull request #8885 from lavalamp/no-ro-kubelettest
...
remove RO port from kubelet test
2015-05-27 16:25:33 -07:00
Brendan Burns
2ec4b409e1
Make exec more consistent with the rest of the kubectl commands.
2015-05-27 15:47:32 -07:00
Daniel Smith
ddcd2c89de
remove RO port from kubelet test
2015-05-27 13:46:32 -07:00
Yu-Ju Hong
d9339fedbe
Modify more tests to use FakeRuntime in kubelet_test.go
2015-05-27 13:01:45 -07:00
Yu-Ju Hong
697312bcd7
Migrate more docker-specific tests to dockertools/manager_test.go
2015-05-27 12:42:59 -07:00
Yu-Ju Hong
044894665d
Delete TestSyncPodsDeletes in kubelet_test.go
...
This test verifies that kubelet doesn't kill non-kubelet-managed containers.
This is obsolete now since container runtime provides only the KillPod
function, and has no support for killing a container.
2015-05-27 10:02:52 -07:00
Yu-Ju Hong
ef5bef914f
Kubelet: switch cadvisor-related unit tests to use FakeRuntime
2015-05-27 09:58:50 -07:00
Paul Morie
8b338860aa
Make kubelet expand var refs in cmd, args, env
2015-05-27 00:13:57 -04:00
Victor Marmol
9a2630ac6e
Make system container name configurable.
2015-05-26 20:49:55 -07:00
Victor Marmol
ddec34a000
Have the ContainerManager create a system container.
...
The system container is a resource-only container which contains all
non-kernel processes that are not already part of a container. This will
allow monitoring of their resource usage and limiting it (eventually).
2015-05-26 20:49:55 -07:00
Saad Ali
9ca4fb40dc
Merge pull request #8844 from yujuhong/kubelet_unittest
...
Kubelet: clean up unit tests
2015-05-26 18:29:48 -07:00
Yu-Ju Hong
9a71fb9373
Kubelet: clean up kubelet_test.go
...
* Start using FakeRuntime to replace FakeDockerClient in unit tests.
* Move and adapt docker-specific tests (e.g. creating/deleting infra
containers) to manager_test.go in dockertools.
2015-05-26 17:11:24 -07:00
Yu-Ju Hong
8ea88d58d4
Kubelet: make FakeRuntime implement Runtime
...
We should start using FakeRuntime in kubelet_test.go. First, make it implement
Runtime correctly.
2015-05-26 16:49:46 -07:00
CJ Cullen
197115853e
Report node.Ready == false until cbr0 is configured correctly
2015-05-26 10:48:29 -07:00
Robert Bailey
3302628db3
Fix kubelet tests for systems without functional dns to look up localhost.
2015-05-22 14:32:51 -07:00
Dawn Chen
677a4aa1a7
Merge pull request #8164 from cjcullen/cloudprovider
...
Route creation reconciler loop.
2015-05-22 12:27:50 -07:00
Tim Hockin
a29240f2c5
reduce verbosity of log line
2015-05-21 13:09:18 -07:00
David Oppenheimer
6b428ef1a8
Merge pull request #7170 from simon3z/node-events
...
Node events recording fixes
2015-05-21 12:54:38 -07:00
Dawn Chen
017fb6a818
Merge pull request #8575 from yifan-gu/kube_refactor
...
Minor kubelet/rkt refactors
2015-05-21 09:37:31 -07:00
Dawn Chen
0710976d43
Merge pull request #8490 from thockin/diff-proto
...
Allow same-hostport-different-protocol
2015-05-21 09:16:16 -07:00
Dawn Chen
9a5b05312f
Merge pull request #8238 from thockin/probe-logs
...
Better kubelet logging for probes
2015-05-21 09:11:11 -07:00
Federico Simoncelli
fefc65164a
kubelet: fix node ready condition logic
...
Fixes #8585
Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-05-20 20:03:57 -04:00
Federico Simoncelli
2f503c57a5
nodecontroller: improve node status event recording
...
This patch substitutes the misleading reason "unknown" for the event
recording. For symmetry with kubelet's message "online" the conditions
Unknown and False are reported as "offline".
Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-05-20 18:46:01 -04:00
CJ Cullen
bf646abf8d
Revert "Revert "Modify nodes to register directly with the master.""
...
This reverts commit c53786ab31
.
2015-05-20 14:21:03 -07:00
Quinton Hoole
c53786ab31
Revert "Modify nodes to register directly with the master."
2015-05-20 13:47:51 -07:00
Yifan Gu
6a5681e0fe
kubelet: Move HashContainer to kubelet/container package.
2015-05-20 12:08:32 -07:00
Tim Hockin
9117a757e2
Revert "Introduce an 'svc' segment for DNS search"
2015-05-20 09:04:15 -07:00
Tim Hockin
75617e8760
Better kubelet logging for probes
...
Log when we actually run probes and event when they fail. Print the output of
a probe, too.
2015-05-20 08:56:45 -07:00
Eric Tune
1f4172d23c
Merge pull request #6949 from roberthbailey/node-register
...
Modify nodes to register directly with the master.
2015-05-19 11:29:43 -07:00
Dawn Chen
349d8b1a67
Merge pull request #8491 from vmarmol/fix-isolation
...
Fix setting resource isolation in Docker 1.6+
2015-05-19 11:26:27 -07:00
Daniel Smith
181124bc9b
Merge pull request #7974 from deads2k/attach-pull-secrets-to-pods
...
Attach pull secrets to pods
2015-05-19 10:26:39 -07:00
Tim Hockin
711fa2f2c6
fix
2015-05-19 10:17:53 -07:00
Tim Hockin
c7bf373d98
Allow same-hostport-different-protocol
2015-05-19 10:00:35 -07:00
Robert Bailey
01467e0bb8
Modify nodes to register directly with the master.
...
- Delete nodes when they are no longer ready and don't exist in the
cloud provider.
- Label each node with it's hostname.
- Add flag to skip node registration.
- Add a test for registering an existing node.
2015-05-19 09:55:07 -07:00
deads2k
72c0709f18
reduce scope of DockerConfigEntryWithAuth
2015-05-19 12:41:03 -04:00
Victor Marmol
deaa0e569d
Set CPU and memory in Create() and Start().
...
This allows for backwards and forwards compatability since old Docker
versions expect it in Create() and newer ones do so in Start().
Fixes #8358
2015-05-19 09:26:15 -07:00
Brian Grant
2c81050e6f
Merge pull request #8457 from davidopp/master
...
Fix stylistic isues with #5547 . Closes #4910 .
2015-05-19 07:43:21 -07:00
deads2k
5458f05679
create LocalObjectReference
2015-05-19 08:39:46 -04:00
David Oppenheimer
44b1e1ca0c
Fix stylistic isues with #5547 . Closes #4910 .
2015-05-18 23:32:06 -07:00
Brian Grant
03535478a2
Merge pull request #8440 from thockin/api-type-names
...
Rename a few API types (non-breaking change)
2015-05-18 18:48:16 -07:00
Victor Marmol
c5da035d51
Merge pull request #8421 from yujuhong/active_deadline
...
Kubelet: move active deadline check to per pod worker
2015-05-18 17:42:21 -07:00
Tim Hockin
65833e42c4
rename CapabilityType Capability
2015-05-18 17:21:30 -07:00
Paul Morie
a58c7a0de7
rename rkt makeruntimePod
2015-05-18 19:24:10 -04:00
Vish Kannan
c5f7ee6f96
Merge pull request #8430 from vmarmol/logging
...
Don't run OOM watcher is cAdvisor is not available.
2015-05-18 14:41:24 -07:00
Yu-Ju Hong
2bf0646c76
Kubelet: do not remove directories of terminated pods
...
We recently changed `SyncPods` to filter out terminated pods at the beginning
for two reasons:
* performance: kubelet no longer keeps goroutines to checks containers for
terminated pods.
* correctness: kubelet relies on inspecting dead containers to generate
pod status. Because dead containers may get garbage collected and
kubelet does not have checkpoints yet, syncing terminated pod could
lead to modifying the status of a terminated pod.
However, even though kubelet should not *sync* the terminated pods, it
should not attempt to remove the directories and volumes for such
pods as long as they have not been deleted. This change fixes aggresive
directory removal by passing all pods (including terminated pods) to the
cleanup functions.
2015-05-18 13:23:49 -07:00
deads2k
0c14e0cbdb
add pull secret references to pods
2015-05-18 16:18:16 -04:00
Victor Marmol
4a1100bb66
Don't run OOM watcher is cAdvisor is not available.
...
Fixes #8424 .
2015-05-18 12:18:12 -07:00
Victor Marmol
a7341cfb77
Merge pull request #8386 from smarterclayton/make_kubelet_consumable
...
Make it easier to reuse kubelet server code
2015-05-18 11:26:55 -07:00
Victor Marmol
45874d5f76
Merge pull request #5547 from gmarek/client3
...
Add a resource specifying number of Pods that are allowed to run on Kubelet.
2015-05-18 11:11:43 -07:00
Yu-Ju Hong
050b8ba60b
Kubelet: move active deadline check to per pod worker
...
Per-pod workers have sufficient knowledge to determine whether a pod has
exceeded the active deadline, and they set the status at the end of each sync.
Move the active deadline check to generatePodStatus so that per pod workers
can update the pod status directly. This eliminates the possibility of a race
condition where both SyncPods and the pod worker are updating the status, which
could lead to temporary erratic pod status behavior (pod phase: failed ->
running -> failed).
2015-05-18 10:52:41 -07:00
Yu-Ju Hong
25668ccc11
Kubelet: remove the getPodstatus method
...
Pod statuses are periodically writtien to the status manager, and status
manager sets the start time of the pod. All non-status-modifying code should
perform cache lookup and should not attempt to generate pod status on its own.
2015-05-18 10:52:36 -07:00
Satnam Singh
26b27b5e0f
Merge pull request #8374 from jimmidyson/docker-log-symlink-separator
...
Docker log symlinks should use underscore separator
2015-05-18 08:59:07 -07:00
Michal Fojtik
7d11e226b7
Disable 'Timestamps' in Docker logs to prevent double-timestamps
2015-05-18 12:27:19 +02:00
Clayton Coleman
1f628f2340
Bump fake docker version to emulate Docker 1.6
2015-05-16 16:10:49 -04:00
Jimmi Dyson
2d4067f1fd
Fixes #8374 : Underscore separator in docker log symlink
2015-05-16 19:19:27 +01:00
Yu-Ju Hong
e1a153e841
Merge pull request #8340 from dchen1107/clean
...
Wait for docker to start cadvisor.
2015-05-15 14:36:10 -07:00
Yu-Ju Hong
b8dd790ca1
Merge pull request #8284 from yifan-gu/rkt_fix
...
kubelet/rkt: Fix rkt status parsing, and resource requirement convert…
2015-05-15 14:30:48 -07:00
Yifan Gu
aa7393b55e
kubelet/rkt: Fix rkt status parsing, and resource requirement convertion.
2015-05-15 13:42:36 -07:00
derekwaynecarr
8216332611
Kubelet kills a pod that exceeds ActiveDeadlineSeconds
2015-05-15 16:33:37 -04:00
Dawn Chen
85ca8506bb
Wait for docker to start cadvisor.
2015-05-15 13:24:24 -07:00
Victor Marmol
43e4654333
Merge pull request #8292 from yujuhong/rm_podinfo
...
Remove /podInfo endpoint on kubelet
2015-05-15 08:42:02 -07:00
Victor Marmol
e7750fa0c7
Merge pull request #8274 from yujuhong/filter_terminated
...
kubelet: filter out terminated pods before rejecting pods
2015-05-15 08:02:44 -07:00
gmarek
27d660d0ac
Add a resource specifying number of Pods that are allowed to run on Kubelet.
2015-05-15 10:57:46 +02:00
Victor Marmol
296152ec6d
Merge pull request #8281 from dchen1107/cleanup
...
OOM protected docker processes (-900)
2015-05-14 18:26:30 -07:00
Yu-Ju Hong
4b40db3367
Remove /podInfo endpoint on kubelet
...
Kubelet sends pod status updates to the API server now. This endpoint is no
longer needed.
2015-05-14 17:51:26 -07:00
Dawn Chen
ebbb130af8
OOM protected docker processes (-900)
2015-05-14 15:49:12 -07:00
Victor Marmol
353f304433
Merge pull request #8228 from yifan-gu/rkt_image_cat
...
kubelet/rkt: Add getImageManifest()
2015-05-14 13:32:52 -07:00
Yu-Ju Hong
a2d04a84de
kubelet: filter out terminated pods before rejecting pods
...
Currently, kubelet doesn't filter out terminated pods before determining whether
a pod fits. This could lead to duplicated events for rejecting the pods. This
change fixes that.
This change also groups all related pod fitness checking functions into one
function to improve readability.
2015-05-14 13:02:36 -07:00
Yifan Gu
daf7c8d686
kubelet/rkt: Use RunContainerOptions to get the arguments.
2015-05-14 12:03:11 -07:00
Yifan Gu
2a87d56171
kubelet/rkt: Add getImageManifest() to retrive the image manifest for container.
2015-05-14 12:03:11 -07:00
Rohit Jnagal
532f6fdcef
Merge pull request #7955 from hurf/refactor_scheduler
...
Move pkg/scheduler to plugin/pkg/scheduler
2015-05-14 10:28:52 -07:00
Dawn Chen
309a157665
Merge pull request #7984 from cjcullen/kubelet
...
Kubelet configure cbr0 instead of configure-vm.sh
2015-05-13 17:32:52 -07:00
Victor Marmol
67eab52b9e
Merge pull request #8146 from yifan-gu/runtime_opt
...
kubelet/container: Refactor RunContainerOptions.
2015-05-13 11:09:56 -07:00
Yifan Gu
2617cb26b8
kubelet/container: Add tests for kubelet.makePortMappings().
2015-05-13 10:01:01 -07:00
Yifan Gu
d164ac0ba0
kubelet/container: Refactor RunContainerOptions.
...
Make Envs, Mounts, PortMappings more generic.
Also add default name for PortMapping if it's not specified.
2015-05-13 10:01:00 -07:00
Victor Marmol
67d576cf48
Merge pull request #8161 from rjnagal/rc
...
Use non-root available space to trigger out-of-disk events.
2015-05-13 08:07:37 -07:00
hurf
6203ce9f85
Move pkg/scheduler to plugin/pkg/scheduler
...
As the TODO in plugin/pkg/scheduler/scheduler.go described:
move everything from pkg/scheduler into this package. Remove
references from registry.
2015-05-13 14:03:25 +08:00
CJ Cullen
31ea7d1295
Put cbr0-modifying stuff behind a flag. Address some other comments.
2015-05-12 23:00:28 -07:00
CJ Cullen
5e3d2b9138
Kubelet configure cbr0 instead of configure-vm.sh
2015-05-12 23:00:12 -07:00
Rohit Jnagal
7a2add5e0a
Use non-root available space to trigger out-of-disk events.
2015-05-13 05:46:03 +00:00
Brendan Burns
3f49c556e6
Second try at implementing prestop.
2015-05-12 17:17:03 -07:00
Victor Marmol
40ec627cd4
Merge pull request #8108 from rjnagal/kubelet
...
Handle out of disk situation on kubelet.
2015-05-12 15:49:31 -07:00
Victor Marmol
3481db8aee
Merge pull request #8136 from yifan-gu/runtime_opt
...
kubelet/container: Remove ipcMode and netMode from RunContainerOptions.
2015-05-12 14:41:49 -07:00
Yifan Gu
a2dac158c2
kubelet/container: Remove ipcMode and netMode from RunContainerOptions.
...
Since createPodInfraContainer() is moved into dockertools. There is no
need to pass the ipcMode or netMode via RunContainerOptions.
2015-05-12 14:18:00 -07:00
Paul Morie
6ac55002d8
Improve kubelet test for env vars
2015-05-12 17:14:32 -04:00
Rohit Jnagal
fab980598a
Merge pull request #8122 from vmarmol/docker-container
...
Run Docker Daemon in a Resource-only Container
2015-05-12 13:16:05 -07:00
Vish Kannan
a74522a738
Merge pull request #8011 from brendandburns/exec
...
Switch exec to look at exit code not output status.
2015-05-12 12:43:11 -07:00
Rohit Jnagal
2cf0dfb79d
Handle out of disk situation on kubelets.
...
Kubelet will stop accepting new pods if it detects low disk space on root fs or fs holding docker images.
Running pods are not affected. low-diskspace-threshold-mb is used to configure the low diskspace threshold.
2015-05-12 18:23:09 +00:00
Victor Marmol
e1447618f4
Integrating ContainerManager into Kubelet
2015-05-12 10:13:23 -07:00
Victor Marmol
a9db69ecfa
Implementation of ContainerManager
...
Implementation maintains a thread which ensures that the Docker daemon
is in a container.
2015-05-12 09:59:47 -07:00
Victor Marmol
0570480242
Kubelet: Add ContainerManager interface.
...
This component will manage containers on the machine not managed by the
runtime.
2015-05-12 09:58:21 -07:00
Rohit Jnagal
9eb01a6da1
Make SyncPodSync as the default SyncPodType.
...
We would like the default to be sync instead of create to easily differentiate
create operations in empty metrics map.
2015-05-12 06:25:48 +00:00
Tim Hockin
41033af256
Introduce an 'svc' segment for DNS search
2015-05-11 17:20:44 -07:00
Victor Marmol
43029345f9
Merge pull request #7973 from dchen1107/podstatus
...
Add kubectl log --previous support to view last terminated container log
2015-05-11 17:08:45 -07:00
Brendan Burns
fbd0143fa8
Merge pull request #7971 from deads2k/make-docker-keyring-handle-multiple-hits
...
make the dockerkeyring handle mutiple matching credentials
2015-05-11 17:01:37 -07:00
Victor Marmol
1465475401
Merge pull request #8079 from yifan-gu/rm_command_runner
...
kubelet/container: Move prober.ContainerCommandRunner to container.
2015-05-11 16:05:25 -07:00
Yifan Gu
7831b7da72
kubelet/container: Move prober.ContainerCommandRunner to container.
...
Also include the ContainerCommandRunner in Runtime interface, but
still keep the ContainerCommandRunner interface for testability.
2015-05-11 15:32:51 -07:00
Yu-Ju Hong
3f791db886
Kubelet: remove unused getHostFieldLabel function
2015-05-11 14:39:22 -07:00
Yu-Ju Hong
8b3130b112
Merge pull request #7980 from yifan-gu/fix_kubelet_tests
...
kubelet: Fix racy kubelet tests.
2015-05-11 14:09:44 -07:00
Dawn Chen
86479cc56c
Add support to pull log for last terminated container
2015-05-11 12:54:04 -07:00
Yifan Gu
85b453091b
kubelet: Add tests for fakePodWorkders.
2015-05-11 12:50:33 -07:00
Yifan Gu
52af792852
kubelet: Fix racy kubelet tests.
...
Add fakePodWorkders to run syncPod() in serial for testing.
2015-05-11 12:50:33 -07:00
Yu-Ju Hong
a9c9505206
Use VirtualSize of the docker image as the image size
2015-05-11 11:03:47 -07:00
Yu-Ju Hong
3599d81ef1
Remove some docker references
2015-05-11 11:03:47 -07:00
Yu-Ju Hong
3487a165b8
Unexport DockerManager.RunContainer
2015-05-11 11:03:41 -07:00
Nikhil Jindal
6bf5acd109
Merge pull request #8044 from pmorie/pod-volume-injection
...
Refactor volume interfaces to receive pod instead of ObjectReference
2015-05-11 10:11:00 -07:00
Victor Marmol
307d677e06
Merge pull request #8022 from ddysher/kubelet-privilege
...
Check Pod privileged container
2015-05-11 09:01:58 -07:00
deads2k
2ecb0ebd73
make the dockerkeyring handle mutiple matching credentials
2015-05-11 09:54:03 -04:00
Paul Morie
cd359ffa73
Refactor volume interfaces to receive pod instead of ObjectReference
2015-05-10 20:12:57 -04:00
Deyuan Deng
2f7183cba5
Check Pod privileged container
2015-05-09 17:30:35 -04:00
Deyuan Deng
72a563f618
Use error type from docker go-client instead of string
2015-05-09 15:20:45 -04:00
Yu-Ju Hong
d185bfd56a
Record failure reason for image pulling
2015-05-08 17:37:11 -07:00
Brendan Burns
c9324e6e38
Switch exec to look at exit code not output status.
2015-05-08 16:51:37 -07:00
Yifan Gu
7e9ba26103
kubelet: Add container runtime option for rkt.
2015-05-07 23:39:37 -07:00
Yifan Gu
8b1174a3a7
kubelet/container: Move pty*.go to container runtime package.
...
This makes the labeld pty wrapper available for both container runtime.
2015-05-07 23:36:47 -07:00
Victor Marmol
65bd04fc51
Merge pull request #7916 from yifan-gu/rkt_rm_label
...
kubelet/rkt: Remove build label.
2015-05-07 16:24:32 -07:00
Victor Marmol
5074e98ee9
Merge pull request #7910 from yujuhong/hostname
...
Use the full hostname for mirror pod name.
2015-05-07 14:43:16 -07:00
Yifan Gu
41f8c79490
kubelet/rkt: Remove build label.
...
As we removed the linux specific dependency, now rkt can be built
on other platforms as well.
2015-05-07 13:42:05 -07:00
Victor Marmol
ecf8348609
Revert "kubelet: Add container runtime option for rkt."
2015-05-07 13:01:37 -07:00
Yu-Ju Hong
ab5e0e0b5c
Use the full hostname for mirror pod name.
...
This change appends the full hostname to the mirror pod name (instead of taking
the first token) so that if the hostname is overriden, we'd not be creating
unncessary name conflicts. An example would be that a user overrides the
hostnames to be "127.0.0.1" and "127.0.0.2", and both of them were resolved to
"127" for the mirror pod name suffix.
Also, because `uname -n` could return a FQDN or not, this change takes only
the first token of it as the hostname for consistency.
2015-05-07 12:59:49 -07:00
Yifan Gu
4f6535ed8a
kubelet: Add container runtime option for rkt.
2015-05-07 10:31:58 -07:00
Victor Marmol
35c644a45f
Merge pull request #7870 from yifan-gu/rkt_volume
...
Add volumeGetter to rkt.
2015-05-07 08:58:00 -07:00
Wojciech Tyczynski
e26da316dc
Set NodeReady=False when docker is dead
2015-05-07 09:30:25 +02:00
Yifan Gu
a8f86da35b
kubelet/rkt: Add volumeGetter to rkt.
...
This enable rkt to fetch the volume mounts by the kubelet.
2015-05-06 19:30:33 -07:00
Victor Marmol
f6b7029475
Merge pull request #7859 from yifan-gu/rkt_remove_store
...
kubelet/rkt: Remove dependencies on rkt.store
2015-05-06 17:45:29 -07:00
Yifan Gu
8715c54bd3
kubelet/container: Move kubelet.volumeMap to container.VolumeMap.
...
This is a quick fix to solve circular dependency problem when
rkt references volume maps.
2015-05-06 16:50:57 -07:00
Victor Marmol
d6ea33fbb5
Merge pull request #7849 from yifan-gu/rkt_components
...
kubelet/rkt: Inject dependencies to rkt.
2015-05-06 16:00:02 -07:00
Yifan Gu
8cbe8938c9
kubelet/rkt: Remove getImageID().
...
Replace getImageID() with getImageByName(), this can remove the
dependency on rkt.store.
2015-05-06 15:59:31 -07:00
Paul Morie
df08b15121
Change signature of container runtime PullImage to allow pull w/ secret
2015-05-06 17:42:03 -04:00
Yifan Gu
dee060c8fd
kubelet/rkt: Inject dependencies to rkt.
...
Add necessary components rkt.
2015-05-06 11:28:01 -07:00
Prashanth B
da42f13941
Merge pull request #7749 from yujuhong/stale_cache
...
Kubelet: record the timestamp correctly in the runtime cache
2015-05-06 09:20:30 -07:00
Victor Marmol
b4ae750e5d
Merge pull request #7830 from rhcarvalho/fix-metric-label
...
Fix metric label
2015-05-06 09:08:29 -07:00
Rodolfo Carvalho
075ae79826
Fix metric label
...
Signed-off-by: Rodolfo Carvalho <rcarvalh@redhat.com>
2015-05-06 10:29:50 +02:00
Jerzy Szczepkowski
4d655e3fcf
Merge pull request #7803 from yifan-gu/rkt_docker_image
...
kubelet/rkt: Add docker prefix to image string.
2015-05-06 09:22:50 +02:00
Yu-Ju Hong
c075719f05
Kubelet: fix the runtime cache to not cache the stale pods
...
If a pod worker sees stale pods from the runtime cache which were retrieved
before their last sync finished, it may think that the pod were not started
correctly, and attemp to fix that by killing/restarting containers.
There are two issues that may cause runtime cache to store stale pods:
1. The timstamp is recorded *after* getting the pods from the container
runtime. This may lead the consumer to think the pods are newer than they
actually are.
2. The cache updates are triggered by many goroutines (pod workers, and the
updating thread). There is no mechanism to enforece that the cache would
only be updated to newer pods.
This change fixes the above two issues by making sure one always record the
timestamp before getting pods from the container runtime, and updates the
cached pods only if the timestamp is newer.
2015-05-05 18:28:38 -07:00
Zach Loafman
875e83a741
Revert "Revert "Security context - types, kubelet, admission""
2015-05-05 16:02:13 -07:00
Zach Loafman
3fcea23185
Revert "Revert "Revert "Kubelet: Add rkt as a runtime option"""
2015-05-05 15:55:12 -07:00
Yifan Gu
ec68f1a85a
kubelet/rkt: Add docker prefix to image string.
...
This change makes rkt to run only docker image for now,
which enables us to test with all existing pods.
2015-05-05 15:41:13 -07:00
Zach Loafman
92ca92f43a
Revert "Revert "Kubelet: Add rkt as a runtime option""
2015-05-05 15:28:09 -07:00
Zach Loafman
f48904fd5e
Revert "Security context - types, kubelet, admission"
2015-05-05 15:20:39 -07:00
Zach Loafman
6016408096
Revert "Kubelet: Add rkt as a runtime option"
2015-05-05 15:15:15 -07:00
Yu-Ju Hong
b2c0ea37b4
Merge pull request #7743 from vmarmol/runtime-switch
...
Kubelet: Add rkt as a runtime option
2015-05-05 13:36:46 -07:00
Paul Morie
1625e231dd
Merge pull request #7343 from pweil-/security-context-types
...
Security context - types, kubelet, admission
2015-05-05 16:26:09 -04:00
Victor Marmol
9f283f356f
Start ImageManager housekeeping in Run().
...
Fixes #7762
Fixes #5634
2015-05-05 11:15:12 -07:00
Victor Marmol
22297d316a
Add rkt runtime to Kubelet init
2015-05-05 10:55:21 -07:00
Victor Marmol
5d0e5d7d61
Inject dependencies to rkt
2015-05-05 10:55:11 -07:00
Paul Weil
982bf19c20
security context initial implementation - squash
2015-05-05 13:46:13 -04:00
Yu-Ju Hong
a7dadfcc97
Merge pull request #7752 from vmarmol/rkt-compile
...
Add build labels to rkt
2015-05-05 09:26:59 -07:00
Victor Marmol
d84aac6498
rkt: Unexport runtime, use Runtime interface
2015-05-04 17:28:02 -07:00
Victor Marmol
f012d7f506
Add unsupported version of rkt.
2015-05-04 17:22:45 -07:00
Robert Bailey
5fe07e69b7
Merge pull request #7725 from pmorie/typo
...
Fix typo in runtime_cache.go
2015-05-04 17:03:42 -07:00
Brian Grant
df8521c468
Merge pull request #7592 from pmorie/dapi-example
...
Rename EnvVarSource.FieldPath -> FieldRef and add example
2015-05-04 17:02:17 -07:00
Victor Marmol
de2212983f
Refactor rkt into one file.
...
This will make it easy to add build labels and stub out in non-Linux
builds.
2015-05-04 16:51:31 -07:00
Victor Marmol
fe7cb95be6
Merge pull request #7746 from vishh/exec_fix
...
Fix kubelet's docker RunInContainer implementation
2015-05-04 16:49:57 -07:00
Victor Marmol
a32d31d045
Merge pull request #7729 from yujuhong/runtime_up
...
Kubelet: wait until container runtime is up
2015-05-04 16:02:30 -07:00
Vishnu Kannan
ec01265643
Fix docker exec logic. Without this patch, kubelet was not receiving any output from docker exec
...
and was incorrectly handling the output.
2015-05-04 16:01:32 -07:00
Paul Morie
e949a623ff
Change EnvVarSource.FieldPath -> FieldRef and add example
2015-05-04 18:41:09 -04:00
Yu-Ju Hong
d231eb6bef
Kubelet: wait until container runtime is up
...
Instead of waiting for the docker client to be up, we wait for the container
runtime to be up.
2015-05-04 15:16:38 -07:00
Victor Marmol
b0129089da
Merge pull request #7712 from rjnagal/kubelet
...
Expose pod name as a label on containers.
2015-05-04 14:52:16 -07:00
Rohit Jnagal
1511dbf0b5
Expose pod name as a label on containers.
...
Full pod name is exposed under key 'kubernetes.io/pod'.
It helps in introspection by looking at all containers in a pod through
docker ps -a -f label=kubernetes.io/pod=podXXX
We also plan to visualize this in cAdvisor.
2015-05-04 21:20:42 +00:00
Paul Morie
d90689bb71
Fix typo in runtime_cache.go
2015-05-04 16:33:48 -04:00
Victor Marmol
ba7e940a57
Make rkt implement the container Runtime
2015-05-04 11:16:33 -07:00
Victor Marmol
e44d9df0f4
Changes to rkt's PortForward to match Runtime API.
2015-05-04 11:16:33 -07:00
Victor Marmol
79fc8bee34
Change GetContainerLogs() signature.
...
This works for both runtimes. We need to eventually unify the ID scheme
for this method.
2015-05-04 11:16:32 -07:00
Victor Marmol
60a77221f5
Add dummy ListImages and RemoveImage to rkt runtime.
2015-05-04 11:14:54 -07:00
Victor Marmol
2ad933e124
Merge pull request #7674 from yujuhong/enable_runtime
...
Kubelet: replace DockerManager with the Runtime interface
2015-05-04 11:10:20 -07:00
Yu-Ju Hong
1ad4dd7803
Kubelet: replace DockerManager with the Runtime interface
...
This change instructs kubelet to switch to using the Runtime interface. In order
to do it, the change moves the Prober instantiation to DockerManager.
Note that most of the tests in kubelet_test.go needs to be migrated to
dockertools. For now, we use type assertion to convert the Runtime interface to
DockerManager in most tests.
2015-05-04 10:19:46 -07:00
Paul Morie
b538642464
Inject mounter into volume plugins
2015-05-04 11:28:57 -04:00
Daniel Smith
4a6ab7fd36
Merge pull request #7597 from eparis/copyright
...
Use generic copyright holder name in license boilerplate
2015-05-01 17:01:39 -07:00
Victor Marmol
c5a86387a4
Merge pull request #7657 from yujuhong/docker_runtime
...
Removes RunPod in the Runtime interface
2015-05-01 16:09:44 -07:00
Yu-Ju Hong
ae1b24f07f
Merge pull request #7652 from vmarmol/runtime-switch
...
Kubelet: Add container runtime option.
2015-05-01 14:50:30 -07:00
Eric Paris
6b3a6e6b98
Make copyright ownership statement generic
...
Instead of saying "Google Inc." (which is not always correct) say "The
Kubernetes Authors", which is generic.
2015-05-01 17:49:56 -04:00
Yu-Ju Hong
4fe3366b04
Removes RunPod in the Runtime interface
...
SyncPod subsumes RunPod, so the latter is no longer needed.
After this change, DockerManager implements the Runtime interface.
2015-05-01 14:47:04 -07:00
Victor Marmol
d9d61c3511
Kubelet: Add container runtime option.
2015-05-01 14:26:54 -07:00
Yifan Gu
1b77615deb
kubelet/rkt: Add SyncPod() to rkt.
2015-05-01 13:02:05 -07:00
Victor Marmol
3b9eba2c1b
Add SyncPod() to DockerManager and use in Kubelet.
...
This allows us to abstract away the logic of syncing a pod by the
runtime. It will allow other runtimes to perform their own sync as well.
2015-05-01 11:03:08 -07:00
Victor Marmol
bb8ee5b0db
Add lifecycle tests from kubelet_test to lifecycle.
2015-05-01 11:02:10 -07:00
Victor Marmol
7a737892f5
Extract out interface for GetPods().
...
This will remove the circular import with dockertools for
DockerManager. Eventually, this will be Runtime.
2015-05-01 11:02:10 -07:00
Vish Kannan
cadfde0bd1
Merge pull request #7277 from guenter/cgroup-parent
...
Add --cgroup_parent flag to Kubelet to set the parent cgroup for pods
2015-05-01 10:24:58 -07:00
Yu-Ju Hong
f74fab4e56
Merge pull request #7603 from vmarmol/runtime-syncpod-api
...
Add SyncPod() and remove Kill/Run InContainer().
2015-05-01 09:41:50 -07:00
Victor Marmol
6316b485ad
Add SyncPod() and remove Kill/Run InContainer().
...
SyncPod allows us to abstract away how a pod is started and updated. It
also simplifies what the runtime has to implement.
2015-05-01 00:32:29 -07:00
Yifan Gu
3751ecc766
kubelet/container: Move ShouldContainerBeRestarted() to runtime.
2015-04-30 22:55:25 -07:00
Yifan Gu
428652bdc7
kubelet/rkt: Add KillPod() and GetPodStatus() for rkt.
2015-04-30 18:32:32 -07:00
Victor Marmol
03b5c32576
Merge pull request #7553 from yifan-gu/rkt_runner
...
kubelet/rkt: Add RunInContainer()/ExecInContainer()/PortForward().
2015-04-30 18:31:08 -07:00
Yifan Gu
9ce568a142
kubelet/rkt: Add GetPods() for rkt.
2015-04-30 18:00:18 -07:00
Yifan Gu
1636fd2e1c
kubelet/rkt: Add RunPod() for rkt.
2015-04-30 17:31:35 -07:00
Yifan Gu
2e4be0bcf1
kubelet/rkt: Add RunInContainer()/ExecInContainer()/PortForward().
2015-04-30 17:25:16 -07:00
Victor Marmol
262c34e7db
Merge pull request #7543 from yifan-gu/pod_manifest
...
kubelet/rkt: Add routines for converting kubelet pod to rkt pod.
2015-04-30 17:18:19 -07:00
Victor Marmol
3235799595
Merge pull request #7601 from yujuhong/kill_container
...
Add KillContainerInPod in DockerManager
2015-04-30 17:05:00 -07:00
Victor Marmol
df8490f52f
Merge pull request #7555 from yifan-gu/rkt_pod_info
...
kubelet/rkt: Add podInfo.
2015-04-30 17:04:51 -07:00
Yu-Ju Hong
b37f23f1eb
Add KillContainerInPod in DockerManager
...
This changes adds one of the functions that DockerManager needs to implement
the Runtime interface.
2015-04-30 16:23:39 -07:00
Victor Marmol
441a4e6f30
Merge pull request #7578 from yujuhong/docker_manager
...
Add image-related methods to DockerManager
2015-04-30 16:16:39 -07:00
Victor Marmol
a94aeb27fa
Merge pull request #7586 from yujuhong/container_info
...
Remove more docker references in kubelet
2015-04-30 16:16:23 -07:00
Yifan Gu
7e8afc7c96
kubelet/rkt: Add routines for converting kubelet pod to rkt pod.
2015-04-30 15:24:47 -07:00
Victor Marmol
0e89d65563
Merge pull request #7545 from yifan-gu/getlog
...
Getlog
2015-04-30 15:15:44 -07:00
Victor Marmol
57cc1218ca
Merge pull request #7549 from yifan-gu/rkt_gc
...
Rkt gc
2015-04-30 15:15:07 -07:00
Alex Robinson
f3352d96e6
Merge pull request #7595 from a-robinson/typo
...
Fix typo in kubelet prober code
2015-04-30 14:42:18 -07:00
Yifan Gu
01841a8c19
kubelet/rkt: Add podInfo.
...
podInfo reprensents the state of rkt pods.
It is used to for reporting the pod and container status to kubelet.
2015-04-30 14:39:10 -07:00
Yu-Ju Hong
644ec0dbfb
Remove ErrNoKubeletContainers
...
We no longer use it.
2015-04-30 13:35:21 -07:00
Yu-Ju Hong
83c599e4d4
Add image-related methods to DockerManager
...
This change is part of the efforts to make DockerManager implement the Runtime
interface.
The change also modifies the interface slightly to work with existing
code, and aggregates the type converting functions to convert.go.
2015-04-30 13:27:52 -07:00
Alex Robinson
faa3292bb3
Fix typo in kubelet prober code.
2015-04-30 13:17:10 -07:00
Yu-Ju Hong
2f7b951140
Remove more docker references in kubelet
...
This change also renames TrimRuntimePrefixFromImage to TrimRuntimePrefix to
better reflect that the usage is not limited to images (e.g. ID).
2015-04-30 13:16:11 -07:00
Victor Marmol
2c381a6f6f
Merge pull request #7550 from yifan-gu/rkt_pull
...
Rkt pull
2015-04-30 13:09:14 -07:00
CJ Cullen
015c0656a6
Merge pull request #7568 from yujuhong/rm_getcontainers
...
Remove GetContainers from Runtime interface
2015-04-30 12:01:58 -07:00
Yu-Ju Hong
11be6811b3
Merge pull request #7563 from vmarmol/runtime-pre
...
Move lifecycle handlers to their own subpackage
2015-04-30 11:22:58 -07:00
Clayton Coleman
d03b5299f9
Merge pull request #7432 from piosz/termination_notice
...
Added TerminationGracePeriod field to PodSpec and grace-period flag to kubectl stop
2015-04-30 13:55:51 -04:00
Tobi Knaup
b96c4046a8
Add --cgroup_root flag to Kubelet to set the parent cgroup for all pods.
...
Implements #6991 .
2015-04-30 10:32:27 -07:00
Yifan Gu
ca4643ef31
kubelet/rkt: Add GetContainerLogs() for rkt.
2015-04-30 10:31:31 -07:00
Yifan Gu
488f49a216
kubelet/rkt: Add GarbageCollection to rkt runtime.
2015-04-30 10:29:38 -07:00
Yifan Gu
01693c8233
kubelet/rkt: Add PullImage()/IsImagePresent() to rkt runtime.
2015-04-30 10:01:24 -07:00
Yu-Ju Hong
176fc9b9c6
Remove GetContainers from Runtime interface
...
This function is no longer considered needed.
2015-04-30 09:33:23 -07:00
Yu-Ju Hong
de32785e2e
Merge pull request #7532 from vmarmol/runtime-images
...
Add image-related methods to Runtime interface.
2015-04-30 09:30:59 -07:00
Piotr Szczesniak
11a2dc496f
Added TerminationGracePeriod field to PodSpec and grace-period flag to kubectl stop
...
Those are changes which touch users required by Termination Notice
Addresses #6804
2015-04-30 18:00:33 +02:00
Victor Marmol
238b3c6f4e
Move lifecycle handlers to its own sub package.
...
This will allow injecting it into the runtimes.
2015-04-30 08:47:23 -07:00
Victor Marmol
4db5127073
Make HttpGetter a shared Kubelet type.
2015-04-30 08:47:23 -07:00
Victor Marmol
037295ac4c
Merge pull request #7533 from yujuhong/get_containers
...
Clean up dockertools/manager.go and add more unit tests
2015-04-30 08:38:27 -07:00
Victor Marmol
946dac4f7c
Merge pull request #7465 from yifan-gu/split_rkt
...
kubelet/rkt: Add basic rkt runtime routines.
2015-04-30 08:37:24 -07:00
Victor Marmol
0a6584cafe
Merge pull request #7487 from njuicsgz/master
...
readinessProbe calls livenessProbe.Exec.Command which cause "invalid memory address or nil pointer dereference".
2015-04-30 08:36:54 -07:00
Yu-Ju Hong
baaea11cd5
Merge pull request #7520 from vmarmol/runtime-pull
...
Add RuntimeHooks to abstract Kubelet logic
2015-04-30 08:33:19 -07:00
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
919d78281f
Clean up dockertools/manager.go and add more unit tests.
...
This change refactors the GetPods function and add some basic unit tests.
We should start migrating docker specific tests from kubelet_test to
manager_test.go.
2015-04-29 18:32:52 -07:00
Victor Marmol
090d0c95fa
Remove ImagePull metric in Kubelet.
...
There is an equivalent metric from our Docker metrics and this one is
harder to maintain with the RuntimeHooks.
2015-04-29 17:12:03 -07:00
Yifan Gu
305345efe1
kubelet/rkt: Add basic rkt runtime routines.
2015-04-29 17:09:32 -07:00
Victor Marmol
2a01a2c7e9
Use RuntimeHooks in Kubelet.
...
Used in functionality that will be moved to the runtimes.
2015-04-29 17:06:49 -07:00
Victor Marmol
61d51243c5
Add RuntimeHooks interface and Kubelet implementation.
...
This interface will be used to inject functionality and logic into the
runtimes that should be shared accross runtimes.
2015-04-29 17:06:49 -07: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
4d09b79529
Add image-related methods to Runtime interface.
...
This includes RemoveImage() and ListImages().
2015-04-29 16:00:36 -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
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
Yu-Ju Hong
275002173e
Kubelet: parallelize cleaning up containers in unwanted pods
...
Kubelet kills unwanted pods in SyncPods, which directly impact the latency of a
sync iteration. This change parallelizes the cleanup to lessen the effect.
Eventually, we should leverage per-pod workers for cleanup, with the exception
of truly orphaned pods.
2015-04-20 14:42:12 -07:00
Brendan Burns
01b891770f
Merge pull request #7054 from ncdc/dockerclient-version
...
Use go-dockerclient's APIVersion
2015-04-20 14:20:57 -07:00
Andy Goldstein
a0a80ea76e
Use go-dockerclient's APIVersion
...
Use go-dockerclient's APIVersion to check the minimum required Docker
version, as it contains methods for parsing the ApiVersion response from
the Docker daemon and for comparing 2 APIVersion objects.
2015-04-20 13:48:18 -04:00
Yu-Ju Hong
cd61aa9484
Merge pull request #7009 from yifan-gu/kube_dep
...
kubelet: Refactor prober.
2015-04-20 10:23:04 -07:00
Victor Marmol
cf27de61c6
Merge pull request #7035 from smarterclayton/turn_down_kubelet_for_what
...
Tone down kubelet logs for already run containers
2015-04-20 08:05:25 -07:00
Xiang Li
2f2247dae3
pkg/kubelet: no more self receiver in kubelet pkg
2015-04-19 20:26:07 -07:00
Clayton Coleman
9e87924983
Tone down kubelet logs for already run containers
2015-04-19 22:55:38 -04:00
Yifan Gu
1d58992df7
kubelet: Refactor prober.
...
Decompose the health check prober from the kubelet.
2015-04-17 15:54:28 -07:00
Yu-Ju Hong
1f3e47f6f7
Merge pull request #7005 from yifan-gu/kube_dep
...
kubelet: Refactor shouldContainerBeRestarted():
2015-04-17 15:05:41 -07:00
Yifan Gu
29a5da231d
kubelet: Refactor shouldContainerBeRestarted():
...
Remove the function's dependency on kubelet.
2015-04-17 14:35:39 -07:00
Kris Rousey
81497f3ed2
Changing the scheduler package to use *api.Pod instead of api.Pod to
...
avoid unnecessary shallow copies. The change rippled through a lot of
code.
2015-04-17 13:34:31 -07:00
Yu-Ju Hong
26a70a52e6
Merge pull request #6843 from xiang90/cleanup
...
pkg/kubelet: clean up pod manager
2015-04-17 11:27:14 -07:00
Yu-Ju Hong
13b29cd64b
Merge pull request #6595 from guenter/kubelet-update-channel-closed
...
kubelet syncloop should stop if/when updates chan closes
2015-04-17 10:42:05 -07:00
Xiang Li
28c1726232
pkg/kubelet: minor cleanup in pod_manager.go
2015-04-17 10:24:38 -07:00
Xiang Li
864f9b4a8a
pkg/kubelet: drop unnecessary receiver in pod_manager.go
2015-04-17 10:24:38 -07:00
Xiang Li
ede4fb4a37
pkg/kubelet: remove unnecessary wrapper code in pod_manager.go
2015-04-17 10:24:38 -07:00
Dawn Chen
fa4363d493
Merge pull request #6924 from yujuhong/data_race
...
Fix data race in kubelet_test.go
2015-04-16 11:56:40 -07:00
Yu-Ju Hong
2fd87597a4
Fix data race in kubelet_test.go
...
Ensure that FakeDockerClient make a copy of the internal list and return it.
2015-04-16 11:36:10 -07:00
Victor Marmol
abab9ea31f
Merge pull request #6844 from yifan-gu/cleankube
...
kubelet: Clean up computePodContainerChanges.
2015-04-15 13:53:21 -07:00
Yu-Ju Hong
967405f0bb
Fix locking issue in pod manager
2015-04-15 11:39:57 -07:00
Victor Marmol
902e1196ac
Merge pull request #6867 from pmorie/libcontainer-bug
...
Remove workaround for libcontainer Getfilecon bug
2015-04-15 11:02:46 -07:00
Dawn Chen
d912398d07
Merge pull request #6813 from vmarmol/in-container
...
Run Kubelet and Kube-proxy in resource-only containers.
2015-04-15 10:37:00 -07:00
Paul Morie
68f22a40f3
Remove workaround for libcontainer Getfilecon bug
...
https://github.com/docker/libcontainer/issues/499 has been fixed
2015-04-15 13:29:20 -04:00
Yifan Gu
3b28c6262b
kubelet: Clean up computePodContainerChanges.
...
More `continue`, less `else` to make it less indent and more readable.
2015-04-15 10:13:57 -07:00
Victor Marmol
54406a5b7c
Merge pull request #6794 from yujuhong/restart_counts
...
Kubelet: persist restart count of a container
2015-04-14 16:01:49 -07:00
Yu-Ju Hong
fd34441d2d
Kubelet: persist restart count of a container
...
Currently, restart count are generated by examine dead docker containers, which
are subject to background garbage collection. Therefore, the restart count is
capped at 5 and can decrement if GC happens.
This change leverages the container statuses recorded in the pod status as a
reference point. If a container finished after the last observation, restart
count is incremented on top of the last observed count. If container is created
after last observation, but GC'd before the current observation time, kubelet
would not be aware of the existence of such a container, and would not increase
the restart count accordingly. However, the chance of this should be low, given
that pod statuses are reported frequently. Also, the restart cound would still
be increasing monotonically (with the exception of container insepct error).
2015-04-14 15:06:42 -07:00
markturansky
e1481fb9c2
Refactored Volume plugins to use InternalVolume instead of API types
2015-04-14 14:25:01 -04:00
Victor Marmol
fb3c351fe1
Run Kubelet on "/kubelet" container.
2015-04-14 10:29:05 -07:00
Victor Marmol
ca9e209ccb
Merge pull request #6795 from yifan-gu/cache
...
kubelet/container: Replace DockerCache with RuntimeCache.
2015-04-14 09:37:34 -07:00
Dawn Chen
8420abeea8
Merge pull request #6786 from yifan-gu/cleankube
...
kubelet: Remove unused docker functions.
2015-04-14 09:16:53 -07:00
Victor Marmol
e265f2c58d
Merge pull request #6799 from xiang90/kerr
...
pkg/kubelet: fix error msg in GetHostIP
2015-04-14 08:40:34 -07:00
Xiang Li
4a152290f4
pkg/kubelet: fix error msg in GetHostIP
2015-04-13 22:44:23 -07:00
Yifan Gu
e1feed9a8b
kubelet/container: Replace DockerCache with RuntimeCache.
2015-04-13 18:16:05 -07:00
Yifan Gu
a5e6bea9b5
kubelet/container: Update the cache interface.
2015-04-13 17:38:18 -07:00
Yifan Gu
7fedb14c27
kubelet: Remove unused docker functions.
...
Remove kubelet.getPodInfraContainer().
Remove dockertools.RemoveContainerWithID().
Remove dockertools.FindContainersByPod().
Also replace the useless test with a test for GetPods().
2015-04-13 16:32:18 -07:00
Yifan Gu
4cdb1bf9ce
kubelet: Introduce PodInfraContainerChanged().
...
Update tests.
2015-04-13 16:18:52 -07:00
Yifan Gu
d14cb8f1dd
kubelet: Introduce PodInfraContainerChanged().
...
This functions computes in ahead whether we need to restart the pod
infra container.
2015-04-13 16:18:52 -07:00
Yifan Gu
dda600e45c
kubelet/dockertools: Add puller interfaces in the containerManager.
2015-04-13 15:34:22 -07:00
Dawn Chen
a0fa592b80
Merge pull request #6778 from yifan-gu/getpods
...
kubelet/dockertool: Move Getpods() to DockerManager.
2015-04-13 14:50:52 -07:00
Yifan Gu
a3675e08f2
kubelet/dockertool: Move Getpods() to DockerManager.
2015-04-13 14:05:22 -07:00
Paul Morie
c98e89fca0
Set rootcontext of emptyDir tmpfs mounts correctly
2015-04-13 12:50:36 -04:00
Paul Morie
042ac3d800
Fix build (kubelet/util.go)
2015-04-13 12:29:36 -04:00
Victor Marmol
ab68bcb97f
Merge pull request #6733 from xiang90/kub_cap
...
pkg/kubelet: move the capabilities related code to util.go
2015-04-13 09:02:36 -07:00
Victor Marmol
4e3b4bd10e
Merge pull request #6731 from xiang90/util-kubulet
...
pkg/kubelet: kill a TODO in util.go
2015-04-13 09:01:00 -07:00
Xiang Li
cef744ecaa
pkg/kubelet: move the capabilities related code to util.go
2015-04-11 12:09:11 -07:00
Xiang Li
d24f60b5b8
pkg/kubelet: clean up status manager
2015-04-11 11:37:07 -07:00
Xiang Li
cea38a2f4e
pkg/kubelet: kill a TODO in util.go
...
Move kubelet.CapabilitiesSetup to capabilities.Setup
2015-04-11 10:55:39 -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
Deyuan Deng
868e05ce96
Remove nodeinfo endpoint from kubelet
2015-04-10 15:47:32 -04: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
Clayton Coleman
fce3e5a2bb
Merge pull request #6574 from ncdc/exec-portforward-no-command-pipes
...
Don't use command pipes for exec/port forward
2015-04-10 12:07:21 -04:00
Wojciech Tyczynski
88eb0b0295
FieldSelector for node List()
2015-04-10 12:53:16 +02:00
Abhishek Shah
964bc6b85d
fix compilation
2015-04-09 17:19:13 -07:00
Victor Marmol
7ce5e7bc73
Merge pull request #6661 from vishh/sys_oom
...
Updating cadvisor deps and adding events cadvisor interface to kubelet
2015-04-09 16:28:20 -07:00
Dawn Chen
563f2965ba
Populate last terminated container information
2015-04-09 16:10:13 -07:00
Vishnu Kannan
de79209970
Adding events API to cadvisor interface.
2015-04-09 16:02:34 -07:00
Daniel Smith
f16abee122
Merge pull request #6653 from yifan-gu/fix_pid_test
...
kubelet/fake_docker_client: Use self's PID instead of 42 in testing.
2015-04-09 16:01:10 -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
Yifan Gu
12b382ce76
kubelet/fake_docker_client: Use self's PID instead of 42 in testing.
...
This is safer to use self's PID than some arbitrary PID (say 42),
since the kubelet will set the oom_score_adj for real.
2015-04-09 14:31:44 -07:00
Andy Goldstein
00e24603cb
Fix TestServeExecInContainerIdleTimeout flake
...
Remove creation of stream from TestServeExecInContainerIdleTimeout as
it's not necessary to very idle timeout.
Increase stream creation and ack timeouts to 30 seconds.
Fixes #5628
2015-04-09 16:44:56 -04: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
Yifan Gu
d4513c2890
kubelet/DockerManager: Fix returning empty error from GetPodStatus().
2015-04-08 17:55:30 -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
Andy Goldstein
4c1cba5312
Don't use command pipes for exec/port forward
...
Switch to passing the streams for Stdin/Stdout/Stderr instead of using
StdinPipe() etc because the pipes are incompatible with Run()/Wait().
2015-04-08 13:42:42 -04: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
Wojciech Tyczynski
8a5c76356c
Revert "Stop the bleeding for #6059 "
...
This reverts commit 6be09c5e97
.
2015-04-08 13:29:29 +02: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
Nikhil Jindal
842b9d8d3a
Merge pull request #6493 from smarterclayton/make_client_pluggable
...
Make the client.Fake more powerful by standardizing how the fake loads data
2015-04-07 12:48:27 -07:00
Victor Marmol
cb0850d7cf
Merge pull request #6527 from yujuhong/remove_unused
...
Remove unused code in kubelet/server_test.go
2015-04-07 12:30:39 -07:00
Clayton Coleman
51db3bd654
Create a new testclient package that can be backed by disk files
...
Standardize how our fakes are used so that a test case can use a
simpler mechanism for providing large, complex data sets, as well
as represent queries over time.
2015-04-07 14:56:15 -04:00
Yu-Ju Hong
d6b4633432
Remove unused code in kubelet/server_test.go
...
The code creates a channel and a go routine waiting for update, which is never
used by any test. Remove the unused code.
2015-04-07 11:55:19 -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
Victor Marmol
ef3cdb2f18
Merge pull request #6491 from yifan-gu/depreciate_getkubeletdockercontainers
...
kubelet: Refactor RunInContainer/ExecInContainer/PortForward.
2015-04-07 11:00:16 -07:00
Cesar Wong
e64d7337b3
Move flushwriter from Kubelet server to a common util package
...
Exposes a Wrap function to wrap a given writer into a writer that
flushes with every write if the writer also implements the io.Flusher
interface.
2015-04-07 07:46:30 -04: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
Eric Tune
e49424785e
Merge pull request #6380 from roberthbailey/kubelet-ssl
...
Configure the kubelet to use HTTPS (take 2)
2015-04-03 13:43:00 -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
Daniel Smith
6be09c5e97
Stop the bleeding for #6059
2015-04-02 13:54:10 -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
Robert Bailey
4488ff95a2
Create an insecure (http) read-only port on the kubelet so that
...
heapster can collect metrics. Update the heapster config to
point to the non-secured port.
2015-04-02 10:45:49 -07:00
Victor Marmol
f8f14b1cc1
Merge pull request #6349 from wojtek-t/node_watch_fields
...
Kubelet watching only its own Node object
2015-04-02 10:20:39 -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
Mike Danese
32c7de290c
fix readiness probe
2015-04-02 06:56:34 -07:00
Dawn Chen
db28ca67f6
Using gcr.io/google_containers/pause by default
2015-04-01 14:59:44 -07:00
Paul Morie
0335e350c7
Fix issue 6294: networking e2e should set args, not command
2015-04-01 11:40:23 -04:00
Victor Marmol
2de37624e8
Merge pull request #6252 from krousey/string_format_cleanup
...
Fixing a lot of string formatting issues
2015-03-31 16:57:36 -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
Brian Grant
3354cffbf0
Merge pull request #6182 from thockin/plural_services_20
...
Implement multi-port Services
2015-03-31 12:55:21 -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
Tim Hockin
186818d787
WIP: Implement multi-port Services
2015-03-30 19:28:11 -07:00
Yifan Gu
7b1ea6b41d
kubelet_test: Fix copy bug.
...
Initialize the slice before copying in verifyUnorderedCalls()
and verifyStringArrayEqualsAnyOrder().
2015-03-30 17:17:42 -07:00
Daniel Smith
acd67ebea0
Merge pull request #5535 from saad-ali/fix5327
...
Make each new instance of kubelet generate a new event channel
2015-03-30 17:05:27 -07:00
Victor Marmol
a501bd29ad
Merge pull request #6189 from sdodson/liveness-probe-logging
...
Add some logging to kubelet probes
2015-03-30 15:34:47 -07:00
Yu-Ju Hong
73452fd26e
Merge pull request #6091 from vmarmol/record
...
Record event when image GC fails.
2015-03-30 15:08:56 -07:00
Scott Dodson
7661a42058
Add some logging to kubelet probes
2015-03-30 17:23:56 -04:00
saadali
e0f71cb21f
Make each new instance of kubelet generate a new event channel (instead of reusing existing).
2015-03-30 14:22:16 -07:00
Scott Dodson
de87048def
Fix comment typo probeContainerReadiness
2015-03-30 15:54:05 -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
Dawn Chen
296fafa955
Merge pull request #6129 from yujuhong/container_status
...
Kubelet: allow docker to examine terminated container
2015-03-27 18:18:18 -07:00
Yu-Ju Hong
3ad0e22cdd
Kubelet: allow docker to examine terminated container
...
Removing the if statement so that docker can continue returning the status of
terminated containers.
2015-03-27 18:04:50 -07: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
13ae40681a
Merge pull request #6029 from vishh/1726
...
Update pod ip using active container only.
2015-03-26 17:50:35 -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
Vishnu Kannan
14a48ad026
Update pod ip using active container only.
2015-03-27 00:38:43 +00:00
Victor Marmol
58aee31625
Merge pull request #6024 from yujuhong/hostname
...
Use the first token of hostname for generating static pod names
2015-03-26 16:35:42 -07:00
Dawn Chen
f662d7d11c
Kubelet reports node related events with empty namespace for now.
2015-03-26 16:30:23 -07:00
Yu-Ju Hong
793a3c0c63
Use the first token of hostname for generating static pod names
...
This increases the readability of pods by avoiding long names.
This fixes #5936
2015-03-26 16:12:49 -07:00
Victor Marmol
0fb131c4f9
Merge pull request #5975 from yifan-gu/refactor_runContainer
...
kubelet: Refactor kubelet.runContainer.
2015-03-26 15:50:37 -07:00
Yifan Gu
e6820bd0ca
kubelet_test: Fix verifyStringArrayEqualsAnyOrder().
...
Old implementation can not tell cases where strings are
repetitive. e.g. {"a", "b", "b"} and {"a", "a", "b"} will
be treated as correct.
2015-03-26 15:26:32 -07:00
Yifan Gu
aa2e7fe688
kubelet_test: Add verifyUnorderedCalls().
...
This fixes TestSyncPodsDeletesWithNoPodInfraContainer.
Since we need to sync two pods in parallel, we should not verify
the docker calls in strict order.
2015-03-26 15:25:51 -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
Victor Marmol
8183a4805e
Merge pull request #5973 from ArtfulCoder/pause_no_port_forward_for_net_host
...
Stop port forwarding from pause in net=host mode
2015-03-25 18:13:04 -07:00
Abhishek Shah
cd5ed38250
Stop port forwarding from pause in net=host mode
2015-03-25 17:55:37 -07:00
Victor Marmol
b1c06eb52e
Merge pull request #5969 from yujuhong/selflink
...
Kubelet: no need to overwrite SelfLink for pods from the apiserver
2015-03-25 16:59:56 -07:00
Yu-Ju Hong
4e909c6cee
Kubelet: no need to overwrite SelfLink for pods from the apiserver
...
Pods from the apiserver should already have SelfLink set. There is no need to
create one ourselves.
2015-03-25 16:34:02 -07:00
Victor Marmol
9e77c3d7e5
Use default ContainerInfoRequest in Kubelet HTTP.
...
Fixes #5777 .
2015-03-25 15:37:06 -07:00
Yu-Ju Hong
6145b3b9c4
Merge pull request #5738 from smarterclayton/cleanup_clients
...
Clients should not check conditions, UpdateStatus() is inconsistent
2015-03-25 13:59:47 -07:00
David Oppenheimer
76889fa3ae
Merge pull request #5818 from simon3z/boot-id
...
nodecontroller: record node reboot event
2015-03-25 13:50:21 -07:00
Clayton Coleman
b1ab14315b
Clients should not check conditions, UpdateStatus() is inconsistent
...
Corrects some of the cargo culting that has crept into the API.
2015-03-25 16:25:04 -04:00
Yu-Ju Hong
5d628770c1
Merge pull request #5926 from vmarmol/fast-test
...
Reduce testing time of status_manager_test.
2015-03-25 12:52:27 -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
65070d6d81
Reduce testing time of status_manager_test.
...
Adds tests for syncBatch().
2015-03-25 11:45:06 -07: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
Yu-Ju Hong
ff3d36edc5
Fix flakey TestGetSetPods
2015-03-24 18:29:35 -07:00
Yu-Ju Hong
a9c9d27fdd
Merge pull request #5893 from vmarmol/remove-server
...
Remove unused ServerSource.
2015-03-24 18:09:32 -07:00
Victor Marmol
bacd859b33
Remove unused ServerSource.
...
We no longer use server as a source in the Kubelet.
2015-03-24 17:47:09 -07:00
Yifan Gu
e02c6994dc
kubelet.container: Fix volume map type.
2015-03-24 16:08:04 -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
Yifan Gu
eec6456f51
kubelet.container: Add helpers in container runtime to filter pod/containers.
2015-03-24 16:01:38 -07:00
Yifan Gu
f4c3ccf639
dockertools: Introduce GetPods() for docker runtime.
2015-03-24 16:01:37 -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
David Oppenheimer
3f57378972
Merge pull request #5399 from ddysher/nc-keep-sync
...
Node controller monitor node status
2015-03-24 13:30:06 -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
markturansky
2fd82f60f4
Move escape function to util and clarify name
2015-03-24 13:52:31 -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
Clayton Coleman
d020ca00b8
Pass hostname to all kubelet config sources instead of os.Hostname()
...
Make applyDefaults be tied to the current config source.
2015-03-23 15:58:45 -04:00
Clayton Coleman
b442f76961
Syntax errors in file_test were added right as validation became more strict
2015-03-23 14:43:09 -04: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
Victor Marmol
adac4328e8
Merge pull request #5713 from AAzza/kubelet_build_parse_dockername
...
Refactor build/parse DockerName from Kubelet. #3511
2015-03-23 08:45:53 -07:00
Victor Marmol
4e3c07543e
Merge pull request #5784 from wojtek-t/applyDefaultsInTryDecode
...
Hide applyDefaults method under pkg/kubelet/config
2015-03-23 07:32:00 -07:00
Wojciech Tyczynski
b395c40e19
Refactor pkg/kubelet/config
2015-03-23 10:29:46 +01: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
Clayton Coleman
65425f690c
Move field errors to pkg/util/fielderrors
...
Allows pkg/api to take a reference to labels.Selector and fields.Selector
2015-03-22 17:43:34 -04: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
Victor Marmol
4d2e7981bb
Merge pull request #5730 from yujuhong/static_stats
...
Kubelet: support retrieving stats using UID of mirror pods
2015-03-20 17:05:23 -07:00
Yu-Ju Hong
f3f3c8f151
Fix volume imports
2015-03-20 16:22:35 -07:00
Yifan Gu
3b4685ef6c
kubelet.runtime: update the import path for volume.
2015-03-20 16:16:27 -07: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
Dawn Chen
fbd362d3c7
Merge pull request #5572 from yifan-gu/rkt_support
...
Add container runtime
2015-03-20 14:38:48 -07:00
Yu-Ju Hong
0206115703
Merge pull request #5697 from vmarmol/doc
...
Correct documentation about stats arguments.
2015-03-20 14:22:33 -07:00
Victor Marmol
5cfe0c04f8
Merge pull request #5705 from wojtek-t/refactor_file_test
...
Refactor pkg/kubelet/config/file_test.go
2015-03-20 14:08:06 -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
Yifan Gu
487d34e409
kubelet: add container runtime cache and fake runtime.
2015-03-20 13:15:20 -07:00
Yifan Gu
319d537cf9
kubelet: add container runtime interface.
2015-03-20 13:15:20 -07:00
Wojciech Tyczynski
9c4ef28b2d
Comments
2015-03-20 20:13:16 +01:00
Wojciech Tyczynski
3b367f8ab8
Refactor file_test.go
2015-03-20 20:13:16 +01:00
Abhishek Gupta
b0c23c1046
Headless Services: Adding option to specify None for PortalIP
2015-03-20 12:10:03 -07:00
Victor Marmol
c5f73516b6
Merge pull request #5704 from wojtek-t/kubelet_file_read_pod
...
Kubelet read pods from file
2015-03-20 10:00:49 -07:00
Victor Marmol
e94c5c3fa9
Merge pull request #5677 from smarterclayton/remove_healthz_global
...
Remove global map from healthz
2015-03-20 08:32:39 -07:00
Wojciech Tyczynski
7a7e64331c
Kubelet file read both ContainerManifest and Pod
2015-03-20 12:09:09 +01:00
Wojciech Tyczynski
c5d8c391fb
Refactor kubelet/config to share code
2015-03-20 09:40:52 +01:00
Victor Marmol
fc8f4411ef
Correct documentation about stats arguments.
2015-03-19 22:11:04 -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
Clayton Coleman
015bc3b7bd
Remove global map from healthz
...
It currently is impossible to use two healthz handlers on different
ports in the same process. This removes the global variables in favor
of requiring the consumer to specify all health checks up front.
2015-03-19 19:49:44 -04:00
Tim Hockin
1cbde2c5c7
Merge pull request #5664 from calfonso/nfs_mount_plugin
...
Addresses cross compile for syscall.Unmount by delegating to Mount.
2015-03-19 16:19:01 -07:00
Tim Hockin
4ee6eb8c73
Make net plugins build on non-unix
2015-03-19 16:15:33 -07:00
CJ Cullen
7ddcecfd1c
Revert "Revert "[WIP] southbound networking hooks in kubelet""
2015-03-19 16:14:13 -07:00
Zach Loafman
b5d1e538df
Revert "[WIP] southbound networking hooks in kubelet"
2015-03-19 16:08:08 -07:00
Rajat Chopra
7857aa7751
kubelet networking plugin
2015-03-19 14:15:52 -07:00
Chris Alfonso
9d0c9e7dc3
Addresses cross compile for syscall.Unmount by delegating to Mount.
2015-03-19 16:46:14 -04:00
Jerzy Szczepkowski
c0ff504ad3
Merge pull request #5501 from jszczepkowski/kubelet-spechost
...
Running resource predicate on kubelet.
2015-03-19 21:34:27 +01:00
Victor Marmol
6f6485909e
Merge pull request #5598 from wojtek-t/kubelet_http_read_pod
...
Kubelet read pods from http
2015-03-19 11:49:28 -07:00
Tim Hockin
9bc2b0c2db
Merge pull request #4601 from calfonso/nfs_mount_plugin
...
NFSMount storage plugin for kubelet.
2015-03-19 11:19:12 -07:00
Wojciech Tyczynski
c512c549a1
Kubelet http read both ContainerManifest and Pod
2015-03-19 18:57:00 +01:00
Dawn Chen
4910be6dcb
Remove PodIP from ContainerStatus
2015-03-19 10:42:01 -07:00
Chris Alfonso
1a45e37d17
NFSMount storage plugin for kubelet.
...
* If you want to test this out when an actual NFS export a good place
to start is by running the NFS server in a container:
docker run -d --name nfs --privileged cpuguy83/nfs-server /tmp
More detail can be found here:
https://github.com/cpuguy83/docker-nfs-server
2015-03-19 13:37:38 -04:00
Filip Grzadkowski
f89f91b7bd
Validate that there is at least one container in the pod
2015-03-19 12:31:53 +01:00
Jerzy Szczepkowski
5845f6ad48
Running resource predicate on kubelet.
...
Added checking on kubelet if scheduled pods do not exceed resources. Related to #5207 .
2015-03-19 10:40:10 +01:00
Yu-Ju Hong
187cbcfabf
Merge pull request #5627 from vmarmol/fix-test
...
Fix data race in imageManager test.
2015-03-18 18:24:18 -07:00
Yu-Ju Hong
05c61d2e47
Merge pull request #5622 from vmarmol/http
...
Add SelfLink to Kubelet http source.
2015-03-18 18:09:05 -07:00
Victor Marmol
6db6e41a34
Merge pull request #5632 from yujuhong/manifest
...
kubelet/config/http_test: use versioned ContainerManifest
2015-03-18 17:58:19 -07:00
Yu-Ju Hong
7b71780dfc
kubelet/config/http_test: use versioned ContainerManifest
2015-03-18 17:40:40 -07:00
Dawn Chen
52e1ee9d5b
Merge pull request #5619 from vmarmol/rate
...
Spread out pod status updates to apiserver.
2015-03-18 17:26:02 -07:00
Victor Marmol
3a3b950009
Fix data race in imageManager test.
...
The background monitoring thread was using the DockerClient before we
had written our fake data. This commit stops the background thread from
running during tests.
Fixes #5611 .
2015-03-18 17:02:03 -07:00
Victor Marmol
ce96182cc3
Add SelfLink to Kubelet http source.
2015-03-18 16:38:41 -07:00
Victor Marmol
cda4b6c598
Spread out pod status updates to apiserver.
...
Lowers pod status interval to every 2m and spreads updates within that
time window.
2015-03-18 15:43:07 -07:00
Yifan Gu
027f6854d0
kubelet: Remove docker container in prober's interface
...
Also change
kubelet.docketIDToRef[dockertools.DockerID]*api.ObjectReference{} to
kubelet.containerIDToRef[string]*api.ObjectReference{}.
2015-03-18 14:28:27 -07:00
Yu-Ju Hong
6e8a8b741a
Kubelet: simplify the lock acquring pattern
...
Avoid holding both podStatusesLock and podLock at the same time.
2015-03-18 11:45:29 -07:00
Victor Marmol
9586b39bb7
Merge pull request #5555 from fgrzadkowski/sync_pod_status
...
Periodically update pod status from kubelet.
2015-03-18 10:14:07 -07:00
Dawn Chen
f746123438
Merge pull request #5580 from ncdc/docker-ParseRepositoryTag
...
Use docker's ParseRepositoryTag when pulling
2015-03-18 08:55:56 -07:00
Dawn Chen
9e781bc57d
Merge pull request #5569 from vmarmol/image-gc
...
Garbage collecting images in the Kubelet.
2015-03-18 08:55:08 -07:00
Filip Grzadkowski
1a352b74ba
Periodically update pod status from kubelet.
2015-03-18 12:11:39 +01:00
Victor Marmol
d78ecf820e
Garbage collecting images in the Kubelet.
...
Integrated the imageManager into the Kubelet and applies the garbage
collection policy every 5 minutes. The default policy allows up to 90%
disk usage, after which images are garbage collected to bring limit back
down to 80%.
Fixes #157 .
2015-03-17 17:56:02 -07:00
Andy Goldstein
7b07960758
Use docker's ParseRepositoryTag when pulling
2015-03-17 20:15:13 -04:00
Yu-Ju Hong
b84de4e986
Merge pull request #5571 from vmarmol/fix
...
Adding errors to Kubelet events.
2015-03-17 16:14:58 -07:00
Dawn Chen
cbe4a1a679
Merge pull request #5510 from vmarmol/gc
...
Introduce and implement container GC policy
2015-03-17 16:02:17 -07:00
Victor Marmol
0c664a343c
Adding errors to Kubelet events.
...
This will help while debugging issues that generate events.
Also removed unecessary log line.
2015-03-17 15:55:25 -07:00
Zach Loafman
5496686f33
Revert "Use docker's ParseRepositoryTag when pulling"
2015-03-17 15:16:33 -07:00
Salvatore Dario Minonne
31ddefc347
Finalize fields.Selector
2015-03-17 22:55:43 +01:00
Dawn Chen
2a5610dbcb
Merge pull request #5558 from ncdc/docker-ParseRepositoryTag
...
Use docker's ParseRepositoryTag when pulling
2015-03-17 12:56:22 -07:00
Victor Marmol
d1ed571e28
Use containerGC in the Kubelet.
...
New policy default is 100 containers max.
Fixes #5457 .
2015-03-17 10:50:32 -07:00
Victor Marmol
4c17c09a8f
Separate GC policy into containerGC struct.
...
The policy today takes a min GC age, max dead containers per pod, and
max containers overall. When GC is called, only dead containers created
more than min GC age ago are considered. The policy tries to keep one
dead instance of every pod's containers.
2015-03-17 10:50:06 -07:00
Dawn Chen
5a04bf6316
Merge pull request #5512 from vmarmol/igc
...
Introduce and implement image GC policy
2015-03-17 10:36:22 -07:00
Andy Goldstein
c08f41c18b
Use docker's ParseRepositoryTag when pulling
2015-03-17 13:23:17 -04:00
Victor Marmol
6bcbf12a3d
Add image garbage collection policy to imageManager.
2015-03-17 09:19:04 -07:00
Victor Marmol
303a1f7ea1
Adding cAdvisor API to get image usage information.
2015-03-17 09:17:38 -07:00
Yu-Ju Hong
929fb63b33
Sync static pods from Kubelet to the API server
...
Currently, API server is not aware of the static pods (manifests from
sources other than the API server, e.g. file and http) at all. This is
inconvenient since users cannot check the static pods through kubectl.
It is also sub-optimal because scheduler is unaware of the resource
consumption by these static pods on the node.
This change syncs the information back to the API server by creating a
mirror pod via API server for each static pod.
- Kubelet creates containers for the static pod, as it would do
normally.
- If a mirror pod gets deleted, Kubelet will re-create one. The
containers are sync'd to the static pods, so they will not be
affected.
- If a static pod gets removed from the source (e.g. manifest file
removed from the directory), the orphaned mirror pod will be deleted.
Note that because events are associated with UID, and the mirror pod has
a different UID than the original static pod, the events will not be
shown for the mirror pod when running `kubectl describe pod
<mirror_pod>`.
2015-03-17 08:45:56 -07:00
Filip Grzadkowski
18b728ff44
Revert "Periodically update pod status from kubelet."
2015-03-17 13:51:45 +01:00
Victor Marmol
009737e69e
Merge pull request #5205 from fgrzadkowski/sync_pod_status
...
Periodically update pod status from kubelet.
2015-03-16 17:04:31 -07:00
Tim Hockin
b42652cd3d
Retool mount detection for tests
2015-03-16 16:17:47 -07:00
Filip Grzadkowski
336525a27d
Periodically update pod status from kubelet.
2015-03-16 23:03:03 +01:00
Tim Hockin
1725c23eb2
Implement volume plugin wrappers
...
Convert git_repo and secret into wrappers around empty_dir.
2015-03-16 14:07:58 -07:00
Victor Marmol
bdc1981eb5
Merge pull request #5433 from wojtek-t/remove_bound_pods
...
Remove BoundPods from Kubelet
2015-03-16 13:38:24 -07:00
Wojciech Tyczynski
5d95e9e671
Remove BoundPods from Kubelet
2015-03-16 19:17:21 +01:00
Jeff Lowdermilk
e37fd2a84d
Merge pull request #5477 from dchen1107/clean
...
Convert RestartPolicy to string for v1beta3.
2015-03-16 10:23:52 -07:00
Dawn Chen
34e9c82c70
Convert RestartPolicy to string for v1beta3.
...
Fixed #3607 and spiritually support #5475
2015-03-13 18:38:07 -07:00
Victor Marmol
dc96ea6300
Run cAdvisor inside the Kubelet.
...
cAdvisor is started as a Kubelet dependency during startup of the
Kubelet before the sync loops start.
2015-03-13 16:06:02 -07:00
Victor Marmol
b00e82ed93
Merge pull request #5466 from dchen1107/docker
...
Fix a regression introduced lately: When any given PodInfraContainer on ...
2015-03-13 16:04:01 -07:00
Satnam Singh
ce7658a302
Merge pull request #5445 from vmarmol/unused
...
Remove unused handleUpdate() in Kubelet.
2015-03-13 16:00:17 -07:00
Dawn Chen
732d4cb2b9
Fix a regression introduced lately: When any given PodInfraContainer on a node
...
is killed, kubelet kills all remaining containers no matter which pod that
container belongs to.
Fixed #5373
2015-03-13 15:46:30 -07:00
Dawn Chen
0cc2b62b4a
Merge pull request #5265 from ddysher/kubelet-post-status
...
kubelet post node status to master
2015-03-13 15:29:22 -07:00
Tim Hockin
caca5e7358
Add tmpfs support to EmptyDir
...
# *** ERROR: *** docs are out of sync between cli and markdown
# run hack/run-gendocs.sh > docs/kubectl.md to regenerate
#
# Your commit will be aborted unless you regenerate docs.
COMMIT_BLOCKED_ON_GENDOCS
2015-03-13 13:36:13 -07:00
Vish Kannan
13253d09e1
Merge pull request #5444 from vmarmol/lock
...
Lock access and update to Kubelet pods.
2015-03-13 11:06:50 -07:00
Victor Marmol
04233cdb88
Remove unused handleUpdate() in Kubelet.
2015-03-13 10:35:50 -07:00
Victor Marmol
0e485310cf
Lock access and update to Kubelet pods.
2015-03-13 10:31:26 -07:00
gmarek
3489d1ae01
Refactor kubelet syncPod method
2015-03-13 18:22:42 +01:00
Victor Marmol
4675fcc57d
Make ParseDockerName() return an error.
...
This forces callers to handle cases where the container name could not
be parsed.
2015-03-12 16:33:16 -07:00
Dawn Chen
ee4e887183
Merge pull request #5395 from vmarmol/fix
...
Garbage collect unidentified Kubernetes containers.
2015-03-12 12:58:22 -07:00
Victor Marmol
51122998e3
Garbage collect unidentified Kubernetes containers.
...
These containers may be caused by a change in the Kubernetes naming
convention. The old containers are killed, the new ones started, but the
old ones are never GC'd. This change makes Kubelet GC all Kubernetes
containers, old and new.
Fixes #5372 .
2015-03-12 11:40:35 -07:00
Brian Grant
19b6c85fa5
Merge pull request #5363 from wojtek-t/no_bound_pods_in_scheduler
...
Make scheduler to watch PodSpec.Host instead Status.Host
2015-03-12 10:57:03 -07:00
Victor Marmol
2939abb6cb
Merge pull request #5383 from wojtek-t/kubelet_test
...
Speedup pkg/kubelet/runonce_test.go
2015-03-12 10:22:03 -07:00
Victor Marmol
f9d2ab6e48
Use time.Sleep() instead of <-time.After().
2015-03-12 09:25:09 -07:00
Wojciech Tyczynski
dca3db0a50
Speedup pkg/kubelet/runonce_test.go
2015-03-12 17:12:04 +01:00
Timothy St. Clair
308bb84cf3
Minor cleanup for etcd cleaning from kubelet
2015-03-12 09:39:22 -05:00
Wojciech Tyczynski
9f2f10d6db
Make scheduler to watch PodSpec.Host instead Status.Host
2015-03-12 13:38:58 +01:00
Eric Tune
ae9bc28f8b
Remove mentions of etcd in kubelet.
2015-03-11 16:40:20 -07:00
Eric Tune
ac7bf05079
Kubelet has not even heard of etcd.
2015-03-11 16:29:31 -07:00
Brendan Burns
b53b2e1de0
Add and extend timeouts.
2015-03-11 14:12:46 -07:00
Dawn Chen
88e0b04916
Merge pull request #5287 from ncdc/master
...
Remove debugging log message from ExecInContainer
2015-03-11 09:45:37 -07:00
Wojciech Tyczynski
0ffd607c79
PodWorkers test.
2015-03-11 16:58:22 +01:00
Wojciech Tyczynski
80576dfed3
Change PodWorkers to have desired cache.
2015-03-11 16:38:31 +01:00
Andy Goldstein
0c798bbe52
Remove debugging log message from ExecInContainer
2015-03-11 10:07:14 -04:00
Deyuan Deng
9982aaa960
kubelet post node status to master
2015-03-10 23:17:36 -04:00
Brian Grant
9aa744925e
Merge pull request #5030 from simon3z/nodeinfo
...
Add support for fetching node collected information
2015-03-10 14:05:41 -07:00
Paul Morie
a486ab078f
Fix selfLink issues in integration test
2015-03-10 14:40:16 -04:00
markturansky
c7e619d4a0
Change volume.NewBuild arg from podUID to ObjectReference
2015-03-10 14:40:16 -04:00
Brian Grant
186f17737e
Merge pull request #5252 from erictune/remove_etcd_flags
...
Remove --etcd_servers flag from kubelet and proxy.
2015-03-10 11:06:12 -07:00
Dawn Chen
106e38ebb3
Merge pull request #5213 from yifan-gu/clean_syncPod
...
Refactor pkg/kubelet/kubelet.go: shouldContainerBeRestarted().
2015-03-10 09:44:32 -07:00
Brian Grant
6062e14313
Merge pull request #5220 from nikhiljindal/camelCaseFieldSelectors
...
Changing v1beta3 field selectors to be camelCased
2015-03-10 09:35:03 -07:00
Eric Tune
2ca265ae3b
Remove --etcd_servers flag from kubelet and proxy.
...
All the distros that use this have been updated,
or have PRs out to update them, or owners
have been asked to fix RPMs.
Removing this prevents further use of this model.
Remove now dead code: EtcdClientOrDie
Remove now dead pkg/proxy/config/etcd.go.
Remove unused imports.
2015-03-10 09:29:09 -07:00
Federico Simoncelli
644d775bc1
kubelet: retport system info in node information
...
Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-03-10 10:11:02 -04:00
Federico Simoncelli
1b18440f35
kubelet: add GetNodeInfo implementation
...
Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-03-10 10:11:01 -04:00
Mike Danese
c1b1f29bdc
migrate healthz in pkg/kubelet/server.go to custom health checks
2015-03-09 19:26:07 -07:00
nikhiljindal
916ca9cc68
Changing v1beta3 field selectors to be camelCased
2015-03-09 18:01:01 -07:00
Yifan Gu
241ef34fba
Refactor pkg/kubelet/kubelet.go: shouldContainerBeRestarted().
...
Simplify the function signature.
2015-03-09 17:42:57 -07:00
Victor Marmol
e187be9fe1
Merge pull request #5143 from vmarmol/cadvisor-pkg
...
Refactoring Kubelet's cAdvisor interface into a package.
2015-03-09 11:36:03 -07:00
Victor Marmol
ab3c9de34b
Refactoring cAdvisor interface into a package.
...
This will make it easier to start running the real cAdvisor alongside
Kubelet. This change is primarily no-op refactoring. The main behavioral
change is that we always create a cAdvisor interface and expect it to
always be available. When we make a request, if cAdvisor is not
connected the request fails with a connection error. This failure is
handled today as well.
2015-03-09 11:19:05 -07:00
Rohit Jnagal
77546692a7
Merge pull request #5187 from vmarmol/wait-docker
...
Kubelet: wait up to 5m for Docker to come up.
2015-03-09 10:09:09 -07:00
Victor Marmol
ca84aae454
Kubelet: wait up to 5m for Docker to come up.
...
The Kubelet assumes Docker is running during its execution and on
machine boot it is a race between Docker coming up and Kubelet calling
Docker. This PR waits for Docker to be up before the Kubelet begins
doing useful work. On timeout, Kubelet exits and expects to be
restarted.
2015-03-09 09:50:34 -07:00
Clayton Coleman
0f87337667
Kubelet tests broken on Macs with uppercase names
...
Hostname behavior across operating systems is inconsistent (Macs can
have uppercase host names, so can some other systems). In general,
always strings.ToLower(os.Hostname()).
2015-03-08 23:44:32 -04:00
Vish Kannan
53ec66caf4
Merge pull request #5152 from vmarmol/cadvisor-dep
...
Rename cAdvisor info API to cadvisorApi
2015-03-06 18:09:28 -08:00
Victor Marmol
1866adddd3
Merge pull request #5157 from yifan-gu/clean_prober
...
Adjust prober's logging verbose.
2015-03-06 18:04:12 -08:00
Yifan Gu
da5d7c7814
Adjust prober's logging.
2015-03-06 17:30:29 -08:00
Victor Marmol
798513844c
Merge pull request #5148 from yifan-gu/clean_prober
...
Refactor pkg/kubelet/kubelet.go: probeContainer().
2015-03-06 17:04:57 -08:00
Yifan Gu
276fb1731c
Refactor pkg/kubelet/kubelet.go: probeContainer().
...
Put the retry loop in probe.go into a function.
2015-03-06 16:57:20 -08:00
Yifan Gu
131e8a0e35
Refactor pkg/kubelet/kubelet.go: probeContainer().
...
Update the probe_test.go.
2015-03-06 16:38:09 -08:00
Yifan Gu
09af0cd3b5
Refactor pkg/kubelet/kubelet.go: probeContainer().
...
Split the function into probeContainerLiveness() and probeContainerReadiness().
2015-03-06 16:37:58 -08:00
Victor Marmol
43b469bd9f
Rename cAdvisor info API to cadvisorApi
2015-03-06 16:06:38 -08:00
Dawn Chen
9439c0f3bd
Merge pull request #5103 from yujuhong/naming
...
kubelet: revamp the pod/container naming scheme
2015-03-06 15:58:58 -08:00
Victor Marmol
a35f4374c5
Update cAdvisor ContainerInfo references to v1 API.
...
The cAdvisor data structures were versioned recently. We use the v1
versions so this commit makes that explicit.
2015-03-06 15:42:06 -08:00
Yu-Ju Hong
fe70be9261
kubelet: revamp the pod/container naming scheme
...
There are two main goals for this change.
1. Fix the naming scheme in kubelet so that it accepts DNS subdomain
name/namespaces correctly (#4920 ). The design is discussed in #3453 .
2. Prepare for syncing the static pods back to the apiserver(#4090 ). This
includes
- Eliminate the source component in the internal full pod name (#4922 ). Pods
no longer need sources as they will all be sync'd via apiserver.
- Changing the naming scheme for the static (file-, http-, and etcd-based)
pods such that they are distinguishable when syncing back to the apiserver.
The changes includes:
* name = <pod.Name>-<hostname>
* namespace = <cluster_namespace> (i.e. "default" for now).
* container_name = k8s_<contianer_name>.<hash_of_container>_<pod_name>_<namespace>_<uid>_<random>
Note that this is not backward-compatible, meaning the kubelet won't recognize
existing running containers using the old naming scheme.
2015-03-06 13:14:45 -08:00
Yu-Ju Hong
32fd331e73
Revert "Split up kubelet "source seen" logic"
...
We want to sync pods from file/http/etcd sources to the apiserver, hence
differentiating sources is no longer desired.
This reverts commit 110ab6f1bd
.
2015-03-06 12:57:48 -08:00
Deyuan Deng
50de1a80c2
kubelet should take a client interface
2015-03-06 15:01:55 -05:00
Dawn Chen
2d0743b143
Merge pull request #5019 from yujuhong/reject_pods
...
kubelet: reject pods on host port conflict
2015-03-06 11:42:04 -08:00
Dawn Chen
3835e0e6e6
Merge pull request #4943 from vmarmol/image-manager
...
Implementing ImageManager to take over image lifecycle.
2015-03-06 11:09:38 -08:00
Victor Marmol
4f3f073f3c
Implementing ImageManager to take over image lifecycle.
...
All images are tracked, when they were created and when they were last
used. FreeSpace() evicts these images in least recently used order,
breaking ties with oldest first.
2015-03-06 10:48:28 -08:00
Yu-Ju Hong
3ccdb8db98
kubelet: reject pods on host port conflict
...
When a host port conflict is detected, kubelet should set the pod status to
fail. The failed status will then be polled by other components at a later time,
which allows replication controller to create a new pod if necessary.
To achieve this, this change stores the pod status information in a status map
upon the detecton of port conflict. GetPodStatus() consults this status map
before attempting to query docker. The entries in the status map will be removed
when the pod is no longer associated with the node.
2015-03-06 10:46:49 -08:00
gmarek
4a01a4dbf5
Refactor Kubelets syncPod function by wrapping some functionalities into functions
2015-03-06 18:32:11 +01:00
Brendan Burns
d4755704b1
Merge pull request #5104 from liggitt/secure_kubelet
...
Plumb tls and cert options into kubelet start
2015-03-06 15:32:23 +01:00
Dawn Chen
54b2b47caa
Merge pull request #4756 from vishh/kubelet
...
Relax constraints on container status while fetching container logs
2015-03-05 21:49:48 -08:00
Victor Marmol
79f2773745
Merge pull request #5120 from dchen1107/docker
...
monit health check kubelet and restart unhealthy one
2015-03-05 17:39:03 -08:00
Dawn Chen
7a47ea8913
Ask monit health check kubelet; if failed, restart.
2015-03-05 17:29:38 -08:00
Dawn Chen
43b4f41202
Allow /healthz check from localhost
2015-03-05 17:27:56 -08:00
Victor Marmol
b314dc6025
Merge pull request #5032 from yifan-gu/clean_syncPod
...
Refactor pkg/kubelet/kubelet.go: syncPod().
2015-03-05 17:24:20 -08:00
Yifan Gu
ed1823e276
Refactor pkg/kubelet/kubelet.go: syncPod().
...
Makes the syncPod() takes only the containers that belongs to the pod.
2015-03-05 16:40:50 -08:00
Victor Marmol
33e6c3ebb3
DockerCache doesn't get containers at startup.
...
Fixes #5092 .
2015-03-05 16:25:13 -08:00
Vishnu Kannan
f6910803a9
Relax constraints on container status while fetching container logs
2015-03-06 00:19:52 +00:00
Jordan Liggitt
02622b1401
Plumb tls and cert options into kubelet start
2015-03-05 16:30:52 -05:00
Daniel Smith
6453bf3e61
Merge pull request #4974 from pmorie/record-sources
...
Allow multiple sources to be used with record package
2015-03-05 11:51:08 -08:00
Paul Morie
02b18edac6
Allow multiple sources to be used with record package
2015-03-05 13:54:29 -05:00
Paul Morie
8ef04a8425
Factor mount utility code out gce_pd volume plugin
2015-03-05 13:49:32 -05:00
Tim Hockin
fdea7252a4
Merge pull request #5001 from brendandburns/api3
...
Embed VolumeSource in v1beta3 and internal.
2015-03-04 09:50:14 -08:00
Eric Tune
fd8361edf2
Merge pull request #5021 from justinsb/log_kubelet_internalerror
...
Log HTTP InternalServerErrors in the kubelet
2015-03-04 08:22:15 -08:00
Eric Tune
2ec257eb49
Merge pull request #5023 from justinsb/fix_typo_in_test
...
Fix typo in test
2015-03-04 08:12:08 -08:00
Justin Santa Barbara
7725cd23ec
Fix typo in test
2015-03-04 10:10:08 -05:00
Derek Carr
cb1e044a60
Merge pull request #4923 from lavalamp/fix4
...
Allow reflector to do full resync periodically
2015-03-04 09:58:03 -05:00
Justin Santa Barbara
b681a45fb6
Log HTTP InternalServerErrors in the kubelet
...
Otherwise we just get a stack trace and no message
2015-03-04 09:48:44 -05:00
Brendan Burns
fb90b56bf6
Embed VolumeSource in v1beta3 and internal.
2015-03-04 02:25:40 -08:00
Victor Marmol
71e545bf81
Merge pull request #4970 from dchen1107/podstatus
...
Hide POD container from end users
2015-03-02 17:15:24 -08:00
Dawn Chen
dad365fb2b
Hide POD container from end users
2015-03-02 17:03:28 -08:00
Daniel Smith
c4822dc060
Revert "Revert "Adding converter functions to convert field label selectors to internal version before matching""
...
This reverts commit 5f35a67002
.
2015-03-02 15:00:09 -08:00
Brendan Burns
fe973461f5
Merge pull request #4916 from thockin/plural_21_endpoints
...
Rename type Port to ContainerPort
2015-03-02 10:53:32 -08:00
Zach Loafman
5f35a67002
Revert "Adding converter functions to convert field label selectors to internal version before matching"
2015-02-28 11:42:49 -08:00
Tim Hockin
ea548b8260
Rename type Port to ContainerPort
...
Sadly I had to do this by hand - I just could not get gorename to fix up
users of it.
2015-02-27 21:05:59 -08:00
Daniel Smith
554b1c847c
add occasional polling to reflector
2015-02-27 16:59:14 -08:00
Dawn Chen
0fec31a11e
Merge pull request #4918 from vmarmol/handle-crash
...
Handle crash in per-pod thread and container killer.
2015-02-27 16:54:37 -08:00
Victor Marmol
c7e7ecdf2c
Handle crash in per-pod thread and container killer.
2015-02-27 16:33:46 -08:00
Daniel Smith
d68c738fcf
Merge pull request #4575 from nikhiljindal/versionedFieldSelector
...
Adding converter functions to convert field label selectors to internal version before matching
2015-02-27 16:33:15 -08:00
nikhiljindal
48e7945f65
Versioning the field selectors
2015-02-27 16:10:59 -08:00
Victor Marmol
cc3c4414f8
Merge pull request #4915 from yujuhong/hostport
...
kubelet: record an event with a clear reason on host port conflict
2015-02-27 16:04:04 -08:00
Yu-Ju Hong
241df2d3be
kubelet: record an event with a clear reason on host port conflict
...
Currently, kubelet silently ignores pods that caused host port conflict. This
commit surfaces the error by recording an event.
It also makes sure that kubelet iterates through the pods in the order of the
creation timestamp, which ensures that pods created later are ignored on
conflict.
2015-02-27 15:51:53 -08:00
Victor Marmol
556acc792b
Adding ContainersPerPodCount metric.
...
This will let us know the composition of pods in clusters.
2015-02-27 11:27:09 -08:00
Victor Marmol
a9301b1996
Adding metric for latency of SyncPods (synching all pods).
2015-02-27 11:11:43 -08:00
Victor Marmol
cbf93822ac
Adding metrics to measure latency of Docker operations.
...
Part of #4604 .
2015-02-27 10:26:06 -08:00
Victor Marmol
ed0f5885b5
Adding sync pod latency metric (again).
...
Latency is broken down by create, update, and sync pods.
Part of #4604 .
2015-02-27 09:35:20 -08:00
Wojciech Tyczynski
a973f57d6b
Thread per pod
2015-02-27 13:27:29 +01:00
Sami Wagiaalla
9150cb9d95
Catch kubelet-master hostname mismatch during health check
...
During the kubelet's /healthz responce check to see if the
hostname used by the master matches the hostname the kubelet
knows itself by. If not fail the health check.
Signed-off-by: Sami Wagiaalla <swagiaal@redhat.com>
2015-02-26 10:22:03 -05:00
Vish Kannan
e3af23e6e9
Merge pull request #4792 from vmarmol/mon-containers-per-pod
...
Add Kubelet metrics for pod and container counts.
2015-02-25 18:51:22 -08:00
Victor Marmol
95464349d5
Add Kubelet metrics for pod and container counts.
...
Part of #4604 .
2015-02-25 12:18:59 -08:00
Daniel Smith
ec8ecf3993
Merge pull request #4494 from brendandburns/race
...
Add protection for the pods member varaible.
2015-02-25 10:41:32 -08:00
Brendan Burns
801ad909ca
Add protection for the pods member varaible.
...
Address comments.
2015-02-24 19:36:11 -08:00
Vish Kannan
0b15f2ff65
Merge pull request #4784 from vmarmol/pod-restart
...
Kill infra pod when a container is restarted.
2015-02-24 13:37:08 -08:00
Vish Kannan
c561c8b0b1
Merge pull request #4753 from vmarmol/mon
...
First Kubelet metric and overall plumbing.
2015-02-24 12:51:34 -08:00
Victor Marmol
aadbf221d2
Kill infra pod when a container is restarted.
...
Revert 0e20f7d736
.
Fixes #4759 .
2015-02-24 11:52:05 -08:00
Rohit Jnagal
e77322a561
Merge pull request #4755 from yifan-gu/cleanup
...
pkg/kubelet: Fix logging.
2015-02-24 10:12:02 -08:00
Rohit Jnagal
590a62ffe5
Merge pull request #4767 from mikedanese/kind-to-type
...
Rename {Node,Pod}ConditionKind -> {Node,Pod}ConditionType
2015-02-24 10:10:57 -08:00
Yifan Gu
1a5a842ac5
pkg/kubelet: Fix logging.
2015-02-24 09:47:10 -08:00
Wojciech Tyczynski
dcef5e2955
Introduce DockerCache in Kubelet.
2015-02-24 09:10:07 +01:00
Mike Danese
5267127af1
api: rename conditionkind -> conditiontype
2015-02-23 22:13:21 -08:00
Victor Marmol
c40a60e945
Adding image pull latency metric.
...
Also adding TODOs for other metrics.
Part of #4604 .
2015-02-23 16:30:29 -08:00
Rohit Jnagal
50700419ea
Merge pull request #4732 from yifan-gu/cleanup
...
Remove outdated const.
2015-02-23 16:06:32 -08:00
Victor Marmol
f5beb04c53
Adding Prometheus /metrics handler.
2015-02-23 15:42:04 -08:00
Victor Marmol
d880be0301
Merge pull request #4738 from vmarmol/fix-pull
...
Remove pullLock from Kubelet.
2015-02-23 14:34:10 -08:00
Rohit Jnagal
b261d8c60a
Merge pull request #4724 from mikedanese/readiness-states-cleanup
...
Don't lock readinessStates on concurrent reads
2015-02-23 14:29:11 -08:00
Rohit Jnagal
cbcd35539f
Merge pull request #4718 from cjcullen/pdtest
...
Fix PD detach (fix the mount path/device name calculation).
2015-02-23 14:28:02 -08:00
Daniel Smith
650f6cb826
Revert "Multi-port Endpoints"
2015-02-23 13:53:21 -08:00
Tim Hockin
eed36455a7
Merge pull request #4653 from thockin/secret_fixups
...
Secrets fixups
2015-02-23 13:49:19 -08:00
Victor Marmol
a6d975c929
Remove pullLock from Kubelet.
...
The lock was only ever used to grab a read lock before container pulls.
2015-02-23 13:27:55 -08:00
Tim Hockin
607b736a3f
Rename volume source types to be consistent.
2015-02-23 12:39:57 -08:00
CJ Cullen
54e8240916
Fix PD detach (fix the mount path/device name calculation).
...
Fix readonly PD attach (don't try to format).
Add an e2e test to verify that PDs are attached and detached correctly.
Add an e2e test to verify that readonly PDs can be attached to >1 pods.
2015-02-23 12:19:22 -08:00
Yifan Gu
a631252abf
Remove outdated const.
2015-02-23 11:00:38 -08:00
Mike Danese
d6fb8ce05a
Don't lock readinessStates on concurrent reads.
2015-02-23 10:49:39 -08:00
Tim Hockin
e0fd83096c
Rename type Port to ContainerPort
...
Sadly I had to do this by hand - I just could not get gorename to fix up
users of it.
2015-02-21 22:26:38 -08:00
Victor Marmol
ccdbad89ce
Merge pull request #4677 from vmarmol/ooms
...
Check Docker init PID is valid before we use it.
2015-02-20 13:53:01 -08:00
Andy Goldstein
bd2eb2fa8f
Fix flaky exec/portforward tests
...
Fixes #4676
2015-02-20 16:29:57 -05:00
Victor Marmol
da2f4b6d61
Check Docker init PID is valid before we use it.
...
This gives us an error if the PID is not returned as we expect.
2015-02-20 13:10:40 -08:00
Tim Hockin
7fe7f8a542
move pkg/kubelet/server to cmd/kubelet/app
2015-02-20 08:49:12 -08:00
Tim Hockin
646621e0e8
Merge pull request #3763 from ncdc/remote-exec-port-forward
...
Add streaming remote command execution and port forwarding
2015-02-20 08:40:33 -08:00
Victor Marmol
d22fefd72d
Merge pull request #4650 from xiang90/cadvisor
...
pkg/kubelet: minor fixes for cadvisor.go
2015-02-20 08:35:27 -08:00
Andy Goldstein
5bd0e9ab05
Add streaming command execution & port forwarding
...
Add streaming command execution & port forwarding via HTTP connection
upgrades (currently using SPDY).
2015-02-20 09:57:02 -05:00
rsokolowski
e81ef667c2
Fix broken kubelet_test.go.
2015-02-20 11:20:12 +01:00
Dawn Chen
efac150039
Merge pull request #4563 from xiang90/syncpod
...
pkg/kubelet: recreate infra pod if the pod is changed
2015-02-20 00:29:26 -08:00
Dawn Chen
530c1559e1
Merge pull request #4647 from vmarmol/ooms
...
Make POD container last OOM victim
2015-02-20 00:25:52 -08:00
Xiang Li
5dc20421dc
pkg/kubelet: drop the unnecessary method receiver
2015-02-19 21:40:17 -08:00
Xiang Li
c6d8bd8f5e
pkg/kubelet: return error when there is no cadvisor connection
2015-02-19 21:35:57 -08:00
Xiang Li
ce1ced4322
pkg/kubelet: make comments follow go-style
2015-02-19 21:34:52 -08:00
Xiang Li
6433e2dd2b
pkg/kubelet: uncaptialize the error message in cadvisor.go
2015-02-19 21:30:24 -08:00
Victor Marmol
8649628c6c
Make POD container last OOM victim.
...
Setting the oom_score_adj of the PID of the POD container to -100 which is less
than the default of 0. This ensures that this PID is the last OOM victim
chosen by the kernel.
Fixes #3067 .
2015-02-19 19:24:01 -08:00
Victor Marmol
2d1a8d0da0
Allow ApplyOomScoreAdj to specify what PID to adjust for.
2015-02-19 17:16:31 -08:00
Daniel Smith
b7b537efc7
fix confusing defer
2015-02-19 17:11:32 -08:00
Victor Marmol
40cb417901
Merge pull request #4531 from wojtek-t/batch_requests_in_kubelet
...
Batch updates of multiple Pods.
2015-02-19 10:50:26 -08:00
Jerzy Szczepkowski
d614fc7fcc
Fire event for pod when mount fails.
...
Implemented firing event for pod when mount of external volume fails. Fixes #4540 .
2015-02-19 11:08:36 +01:00
Wojciech Tyczynski
702ad7732f
Applied comments
2015-02-19 08:01:16 +01:00
Eric Tune
af67829eca
Merge pull request #4515 from pmorie/secrets_wip
...
Secret volume plugin iteration 1
2015-02-18 15:57:31 -08:00
Xiang Li
0e20f7d736
pkg/kubelet: recreate infra pod if the pod is changed
2015-02-18 15:05:16 -08:00
Dawn Chen
8022c74b55
Merge pull request #4473 from xiang90/server
...
pkg/kubelet/server.go: minor fixes
2015-02-18 14:50:51 -08:00
Paul Morie
a42ff94c8f
Add secret volume plugin and e2e test
2015-02-18 16:27:44 -05:00
Xiang Li
6b91901bd3
pkg/kubelet: minor fixes in server.go
2015-02-18 13:18:45 -08:00
Prashanth Balasubramanian
9427f75788
Cadvisor returns richer errors to the kubelet server.
2015-02-18 09:31:28 -08:00
Wojciech Tyczynski
25c8f07c67
Batch updates of multiple Pods.
2015-02-18 16:46:16 +01:00
Dawn Chen
c843adbd8f
Create docker.Container obj with Name. Integration test is using fake_docker_client
...
to create and start a fake container. When StartContainer, it pass a name as docker
ID for testing purpose, but leave Name uninitialized. This PR fixes such issue.
Fixed #4472 .
2015-02-17 15:23:21 -08:00
Dawn Chen
bafa240187
Add debugging information for #4472
2015-02-17 13:28:15 -08:00
Clayton Coleman
4859aa7cd8
Merge pull request #4453 from derekwaynecarr/make_quota_more_efficient
...
Make ListWatch work with a ListFunc and WatchFunc
2015-02-17 14:48:11 -05:00
Nikhil Jindal
81d0a88f1e
Merge pull request #4459 from xiang90/kubulete
...
kubelet: minor cleaning up
2015-02-17 10:18:47 -08:00
Xiang Li
042dc1faa3
pkg/kubelet: uncaptialize error message
2015-02-16 09:33:20 -08:00
Xiang Li
2437e94248
pkg/kubelet: fix wrong code path in runContainer
2015-02-16 09:32:37 -08:00
Xiang Li
13bb378d1c
pkg/kubelet: reduce indentation
2015-02-16 08:46:41 -08:00
Xiang Li
edc926ffcb
pkg/kubelet: capitalize message in print
2015-02-16 08:40:07 -08:00
Xiang Li
da6d1da12d
pkg/kubelet: remove unused var in handlers.go
2015-02-16 08:38:10 -08:00
Mike Danese
4ba8ecd1fb
move api.Probe timeout default to central defaults
2015-02-15 23:44:55 -08:00
Xiang Li
3c2ead5b29
pkg/kubelet: minor cleanup for probe.go
2015-02-15 22:25:14 -08:00
derekwaynecarr
c0ce15c588
Make list watch take a ListFunc and WatchFunc, provide default funcs from client
2015-02-15 22:26:05 -05:00
Dawn Chen
20dc1c2481
Merge pull request #4410 from brendandburns/fixer
...
Don't delete the pod infrastructure container on health check failures.
2015-02-13 15:18:27 -08:00
Victor Marmol
5d6ad845cc
Use Docker name (not ID) to parse Kubernetes components.
...
Since the parsing function doesn't return an error all the components
returned empty strings. This caused us to enforce the MaxContainerLimit
as a global limit instead of a per-container limit.
Fixes #4413 .
2015-02-13 13:08:15 -08:00
Brendan Burns
4ad3ea438d
Revert "Revert "Add an event for health check failures.""
...
This reverts commit fc4e711a8c
.
2015-02-13 09:23:13 -08:00
Clayton Coleman
09f18031fe
Merge pull request #4285 from brendandburns/auth
...
Add a more detailed error message for potential auth fails in docker pull.
2015-02-13 12:08:48 -05:00
Saad Ali
fc4e711a8c
Revert "Add an event for health check failures."
2015-02-13 08:10:45 -08:00
Saad Ali
c112f8f1bb
Merge pull request #4408 from brendandburns/printing
...
Add an event for health check failures.
2015-02-13 07:59:26 -08:00
Brendan Burns
5e49a606e1
Address changes.
2015-02-12 21:39:42 -08:00
Brendan Burns
8b7dfc9359
Return logs for failed and succeeded pods too.
2015-02-12 21:36:25 -08:00
Brendan Burns
4dbf98e98f
Don't delete the pod infrastructure container on health check failures.
2015-02-12 21:28:32 -08:00
Brendan Burns
c03a435501
Add an event for health check failures.
2015-02-12 19:08:23 -08:00
Brendan Burns
0532c46217
Add a more detailed error message for potential auth fails in docker pull.
2015-02-12 17:00:59 -08:00
Eric Tune
dd8f335380
Merge pull request #4376 from dchen1107/podstatus
...
Fix podstatus issue caused by docker's resource temporarily unavailable issue
2015-02-12 13:16:09 -08:00
Dawn Chen
af54c62766
Fix podstatus issue caused by docker's resource temporarily unavailable error
2015-02-11 23:52:58 -08:00
Vishnu Kannan
922881fcd2
Improve error handling for '/containerLogs' API in kubelet.
2015-02-12 02:22:26 +00:00
Eric Tune
9ea4d2f814
Merge pull request #4323 from dchen1107/podstatus
...
Check if kubelet does know such Pod before querying status.
2015-02-11 11:13:50 -08:00
Dawn Chen
f5f2b6f773
Check if kubelet does know such Pod before querying status.
2015-02-11 10:16:04 -08:00
Dawn Chen
c55921676c
Merge pull request #4271 from ArtfulCoder/logging_etcd
...
Updated etcd-pod-dir-fetch logging.
2015-02-10 13:41:06 -08:00
Abhishek Shah
febf8c9b2c
Fixed formattting issues in etcd.go
2015-02-10 12:03:40 -08:00
Mike Danese
c72c2a0d1e
added tests
2015-02-10 08:30:13 -08:00
Mike Danese
3d0cd81feb
refactor pkg/probe ProbeRunners to interfaces and move global probers into kubelet field for testability
2015-02-10 08:30:11 -08:00
Mike Danese
043794492e
implement readiness.
2015-02-10 08:30:09 -08:00
Abhishek Shah
f136886dde
Updated logging. If etcd-pod-dir-fetch fails because dir was absent, an info message is logged. 2) For all other reasons, the regular error message is logged.
2015-02-09 18:03:58 -08:00
Brendan Burns
cc7279f6a8
Actually use the safeFormatAndMounter...
2015-02-06 17:01:05 -08:00
Zach Loafman
b77abb5945
Merge pull request #4221 from brendandburns/pd_fix
...
Make gce_safe_format_and_mount actually work correctly.
2015-02-06 14:50:20 -08:00
Brendan Burns
3d6c9fc9e8
Fix gce_pd to only use safe_format_and_mount when mounting block devices.
2015-02-06 12:41:21 -08:00
Brendan Burns
35fa143b29
Revert "Revert "Start using GCE safe format and mount for mounting disks.""
...
This reverts commit 858a85e8fe
.
2015-02-06 10:09:00 -08:00
Brendan Burns
94d852e8a6
Merge pull request #4214 from brendandburns/pd_fix
...
Revert "Start using GCE safe format and mount for mounting disks."
2015-02-06 09:58:51 -08:00
Brendan Burns
858a85e8fe
Revert "Start using GCE safe format and mount for mounting disks."
...
This reverts commit 3f109d6d46
.
2015-02-06 09:58:03 -08:00
Dawn Chen
05de54249f
Merge pull request #4191 from simon3z/master
...
api: add image's id to ContainerStatus
2015-02-06 09:35:44 -08:00
Federico Simoncelli
e01df69565
api: add image's id to ContainerStatus
...
Sometimes for external applications it is important to identify
exactly what images are running. Since tags can be moved to point
to newer builds this information can be used to identify old images
running.
Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-02-06 09:01:14 -05:00
Brian Grant
175e9caa55
Merge pull request #4194 from dchen1107/podstatus
...
Kubelet decides podStatus
2015-02-05 17:18:39 -08:00
Brendan Burns
3f109d6d46
Start using GCE safe format and mount for mounting disks.
...
This removes the need for disks to be formatted.
2015-02-05 17:01:37 -08:00
Mike Danese
14bfec92f2
rename probe.Status to probe.Result.
2015-02-05 15:49:58 -08:00
Dawn Chen
f762e062f2
Kubelet decides podStatus
2015-02-05 15:49:41 -08:00
Brendan Burns
8e6f5c7201
Merge pull request #3593 from commonlisp/master
...
Add timeouts to HealthChecks and retry checks
2015-02-05 15:40:22 -08:00
Brendan Burns
8b25b43039
Merge pull request #4117 from wojtek-t/validate_docker_version
...
Check Docker version in Kubelet /healthz handler
2015-02-05 10:06:33 -08:00
George Kuan
e8c33b7916
Add timeouts to HealthChecks and retry checks
...
Fixes issue #3532 . Added timeouts for HTTP and TCP checks
and enabled kubelet/probe to kubelet#maxRetries times
before declaring Failure.
Added Probe.TimeoutSecs to API
Probe variants now check container.LivenessProbe.TimeoutSeconds
Also added a test for timeouts in http_test.go.
2015-02-05 06:04:45 -08:00
Wojciech Tyczynski
1a3419f970
Fix the min allowed Docker version.
2015-02-05 02:34:04 +01:00
Brendan Burns
cfe5b14114
Wait until containers actually finish running before trying to clean up
...
volumes or pods.
2015-02-04 17:28:41 -08:00
Wojciech Tyczynski
524cdba101
Fix hack/test-cmd.sh test.
2015-02-05 01:58:26 +01:00
Brendan Burns
6e897524be
Merge pull request #4093 from nelcy/master
...
Fix orphaned pod & volume cleanup order. Volumes need to be unmounted before pod cleanup.
2015-02-04 14:38:20 -08:00
Wojciech Tyczynski
ead67108ce
Use existing method to get Docker version.
2015-02-04 20:50:21 +01:00
Wojciech Tyczynski
78f66a6ce9
Check Docker version in Kubelet /healthz handler
2015-02-04 18:31:24 +01:00
chakri
9508b2bf12
Fix orphaned pod & volume cleanup order. Volumes need to be unmounted before pod cleanup.
2015-02-04 01:46:28 +00:00
Yu-Ju Hong
4a72addaeb
Factor out API defaulting from validation logic
...
Currently, the validation logic validates fields in an object and supply default
values wherever applies. This change factors out defaulting to a set of
defaulting callback functions for decoding (see #1502 for more discussion).
* This change is based on pull request 2587.
* Most defaulting has been migrated to defaults.go where the defaulting
functions are added.
* validation_test.go and converter_test.go have been adapted to not testing the
default values.
* Fixed all tests with that create invalid objects with the absence of
defaulting logic.
2015-02-03 00:55:42 -08:00
Brian Grant
2903fce2b8
Merge pull request #4031 from jbeda/hyperkube-kubelet
...
Convert kubelet and proxy to hyperkube
2015-02-02 18:08:59 -08:00
Tim Hockin
1ee1702be0
Merge pull request #3808 from brendandburns/master
...
Add a mounter that uses google's safe_format_and_mount.
2015-02-02 16:29:10 -08:00
Brendan Burns
ac21ac24fa
Add a mounter that uses google's safe_format_and_mount.
2015-02-02 16:16:20 -08:00
Tim Hockin
ac399fb354
Merge pull request #3967 from brendandburns/fixer
...
Be a little more careful when removing mount points.
2015-02-02 15:46:18 -08:00
Joe Beda
76df5471b5
Covert the kubelet binary to hyperkube.
...
This leaves `pkg/kubelet/server/server.go` looking a little ugly as there is an extra layer of "config" structs that isn't needed. This is left as a TODO for now.
2015-02-02 14:03:13 -08:00
Joe Beda
d96afdd645
Move 'pkg/standalone' package to 'pkg/kubelet/server'.
...
This paves the way to hyperkube for the kubelet.
2015-02-02 14:03:13 -08:00
Brendan Burns
7f06fbb081
Be a little more careful when removing mount points.
2015-02-02 12:35:24 -08:00
Vishnu Kannan
5e36f63f8b
Adding ResourceRequirementSpec to v1beta1, v1beta2, and v1beta3 APIs. The old resource
...
quantities 'CPU' and 'Memory' will be preserved until support for v1beta1 and v1beta2 APIs are
dropped.
Improved resource validation in the process.
2015-02-01 02:19:55 +00:00
Clayton Coleman
556e59b512
Merge pull request #3810 from ironcladlou/cache-namespacing
...
Support namespacing in cache.Store
2015-01-30 13:19:41 -05:00
Brian Grant
207d0f5d40
Merge pull request #3878 from thockin/infra_name
...
Use a constant for the pod infra container name
2015-01-30 09:18:00 -08:00
Ye Yin
248624fc1f
Add docker's add/drop capabilites
2015-01-30 15:09:31 +08:00
Brendan Burns
a0b8429d2e
Reverse the order of unmounting and removing the pd disk.
...
This should mean that we retry detaching if the original detach fails for some reason.
2015-01-29 16:13:12 -08:00
Dan Mace
5ee943d683
Support namespacing in cache.Store implementations
...
Support namespacing in cache.Store by framing the interface functions
around interface{} and providing a key function to each Store implementation.
Implementation of a fix for #2294 .
2015-01-29 17:39:49 -05:00
Mrunal Patel
19e0605f5b
Replace "net" by "pod infra" in docs and format strings.
2015-01-28 15:03:06 -08:00
Tim Hockin
804643a04b
Merge pull request #3818 from mikedanese/probe-refactor
...
break api.Probe out of api.LivenessProbe
2015-01-28 12:41:35 -08:00
Dawn Chen
b0bcee7b40
Increase timeout for all testcases in file_test.go
2015-01-28 11:27:15 -08:00
Mike Danese
78f33e950a
rename api.LivenessProbe to api.Probe and break out Actions
2015-01-28 11:20:44 -08:00
Tim Hockin
c8f61885df
Merge pull request #3695 from mikedanese/ready
...
refactor pkg/health into more reusable pkg/probe
2015-01-28 11:00:32 -08:00
Tim Hockin
70ab406751
Use a constant for the pod infra container name
...
This is an implementation detail that has leaked out of kubelet. Use a
constant to prevent divergence, for now. Plan to get rid of it.
@dchen1107
2015-01-28 10:13:02 -08:00
Paul Morie
962bdda0dc
Fix typo in kubelet
2015-01-28 12:00:53 -05:00