Commit Graph

172 Commits (8cabbcbdcfa2bdf17c9ddc1db6754c862d6e08a2)

Author SHA1 Message Date
David McMahon ef0c9f0c5b Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
k8s-merge-robot c4aa7ee0b2 Merge pull request #25024 from xiangpengzhao/fix_typos
Automatic merge from submit-queue

Fix typos in docker.go

Fix minor typos in variable name
2016-06-24 13:56:22 -07:00
Random-Liu 52ebd4ecf1 Add runtime-request-timeout kubelet flag. 2016-06-17 18:18:41 -07:00
Xiangpeng Zhao 33039c2883 Fix typos in docker.go 2016-06-13 03:01:29 -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
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
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
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
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
Random-Liu d981fee2ee Refactor Info and Version. 2016-04-21 12:02:50 -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 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 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
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
Random-Liu 8fb7ee38b0 Set fake docker client to minimum required version. 2016-04-04 17:41:01 -07: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
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
Random-Liu d2524bf291 Start using docker engine-api 2016-03-28 15:39:11 -07:00
harry 8472cfa214 Refactor throttle into util pkg
Fix missing throttle.go
2016-03-25 08:32:23 +08: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
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
Lantao Liu 4a386f881f Deprecate HostConfig at container start 2016-02-04 01:00:03 +00: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
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
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
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
Hongchao Deng 13d152a873 RateLimiter: change CanAccept() to TryAccept() 2015-11-23 16:42:53 -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
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
jiangyaoguo 3b512add9c check image present after pulled image with no error 2015-11-06 10:58:55 +08:00
Lantao Liu eff4533efc Move findPodContainer to docker_test.go 2015-11-02 09:49: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
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
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
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
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
jiangyaoguo af46c69553 Distinguish image registry unavailable and pull failure 2015-10-09 01:16:31 +08: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
Mikaël Cluseau 99a1cfa8ff hairpin support 2015-09-12 08:43:45 +11:00
derekwaynecarr 5dc74e8dbf Add support for CFS quota in kubelet 2015-09-03 13:44:28 -04: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
peter-edge 0458d707ac use docker.NewClientFromEnv for creation of docker.Client 2015-08-10 13:29:56 +02:00