Commit Graph

2360 Commits (e7a9f309361787679f2210ea4714b79420fc3cba)

Author SHA1 Message Date
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