Commit graph

812 commits

Author SHA1 Message Date
Michael Crosby
654c537d38 Call start in containerd
This fixes a sync issue when the containerd api returns after a
container has started.  It fixes it by calling the runtime start inside
containerd after the oom handler has been setup.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-06-27 10:49:20 -07:00
Kenfe-Mickaël Laventure
14e79494da Merge pull request #272 from liubin/fix-typos
Fix typos
2016-06-22 07:30:48 -07:00
bin liu
004efe5991 fix typos
Signed-off-by: bin liu <liubin0329@gmail.com>
2016-06-22 14:23:32 +08:00
Kenfe-Mickaël Laventure
a8c73b6959 Merge pull request #270 from crosbymichael/shim-start-error
Return the start error and reap
2016-06-17 11:18:23 -07:00
Michael Crosby
f44458d6b5 Return the start error and reap
Make sure that if we get an error from start it is returned and that we
reap the container's process from create before existing if we were to
send a kill signal.

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-06-17 11:03:52 -07:00
Julio Montes
0227e9fb94 Micro Benchmarks: multiples runtimes (#268)
* Micro benchmarks: use container.Runtime to kill container

Signed-off-by: Julio Montes <julio.montes@intel.com>

* Micro benchmarks: add support for multiples runtimes

Signed-off-by: Julio Montes <julio.montes@intel.com>
2016-06-16 14:39:19 -07:00
Kenfe-Mickaël Laventure
2d2dfab85a Set parent death signal to all exec within the shim (#269)
This will prevent from leaving hung processes around if there's a bug
in the runtime.

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-06-16 14:38:28 -07:00
Kenfe-Mickaël Laventure
3c889979c9 Update runc to version cc29e3dded8e27ba8f65738f40d251c885030a28 (#267)
It fixes issue encountered while inside a user namespace

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-06-15 15:08:09 -07:00
Kenfe-Mickaël Laventure
860f3a9494 Merge pull request #266 from crosbymichael/bump-runc
Bump runc to 85873d917e86676e44ccb80719fcb47a79467
2016-06-13 13:15:51 -07:00
Michael Crosby
d307ab6fa2 Bump runc to 85873d917e86676e44ccb80719fcb47a79467
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-06-13 12:50:23 -07:00
Kenfe-Mickaël Laventure
098f9f1a1b Use uin64 for UpdateResource rpc (#265)
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-06-13 10:59:12 -07:00
Kenfe-Mickaël Laventure
3d900051b6 Fix panic within ctr if the daemon dies while attached to a container (#264)
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-06-09 14:36:42 -07:00
Kenfe-Mickaël Laventure
a5968ecb85 Update runc to version eb217f273125d3e4d6731389fe804e46e0b14ac6 (#263)
This is needed to get the new `--empty-ns` flag for the restore
operation.

NOTE: I've also updated the vendor.sh script even though this doesn't
pull any new code in

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-06-09 14:17:04 -07:00
Kenfe-Mickaël Laventure
71c8c8c3b7 Merge pull request #254 from boucher/empty-ns
Support the new empty-ns flag in RunC
2016-06-09 13:58:26 -07:00
boucher
a135e1093d Support the new --empty-ns flags in RunC for checkpoint/restore.
Signed-off-by: Ross Boucher <rboucher@gmail.com>
2016-06-09 16:49:26 -04:00
Kenfe-Mickaël Laventure
8040df4e89 New oom sync (#257)
* Vendor in runc afaa21f79ade3b2e99a68f3f15e7219155aa4662

This updates the Dockerfile to use go 1.6.2 and install pkg-config are
both are now needed by runc.

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>

* Add support for runc create/start operation

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>

* Remove dependency on runc state directory for OOM handler

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>

* Add OOM test

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-06-09 13:33:26 -07:00
Ross Boucher
cf554d59dd Store the checkpoint and restore logs in the same directory as the (#253)
checkpoint image itself.

Signed-off-by: Ross Boucher <rboucher@gmail.com>
2016-06-07 14:05:22 -07:00
Kenfe-Mickaël Laventure
16a8dfe6a8 Add support for updating Kernel Memory Limits (#256)
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-06-06 11:26:07 -07:00
Kenfe-Mickaël Laventure
5624732128 Add golint to test (#255)
* Add a new lint rule to the Makefile

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>

* Fix linter errors

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>

* Allow replacing the default apt mirror

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-06-03 15:00:49 -07:00
zhangwei_cs
4176ba7b52 Add multi OCI runtime support for ctr (#250)
Add ctr command line args `--runtime` and `--runtime-args` for multiple
OCI runtime support.

Signed-off-by: Zhang Wei <zhangwei555@huawei.com>
2016-05-31 10:14:31 -07:00
Anusha Ragunathan
24144682a0 Micro benchmarks for containerd. (#244)
This is the first in a series of micro benchmarks for containerd.
Performance measurement will use containerd objects and methods
that are not dependent on the grpc API and dont require the daemon
to the running. Test will require containerd-shim and runc.

The motivation is to understand the baseline performance at the lowest
containerd layer. A natural extension to this effort would be to write
macro benchmarks which would include API and daemon.

Note:
- Currently measures only one workload (busybox sh) start times. Will
add other bundles and args soon.
- Can use integration-test utils for bundle processing. However, json
marshal/unmarshal is currently timing out standard benchmark times. So
going with default spec for now.

Sample run:
BenchmarkBusyboxSh-4    / # / # / #        2     576013841 ns/op
ok      github.com/docker/containerd/runtime    1.800s

Signed-off-by: Anusha Ragunathan <anusha@docker.com>
2016-05-27 10:35:42 -07:00
Michael Crosby
7fa8fc1477 Regen proto for checkpoint pr (#249)
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-05-25 17:52:46 -07:00
Ross Boucher
e756ae42d1 Add support for specifying a checkpoint directory. (#245)
Signed-off-by: Ross Boucher <rboucher@gmail.com>
2016-05-25 17:42:37 -07:00
Kenfe-Mickaël Laventure
76dd6710dc Merge pull request #248 from thaJeztah/fix-typo-in-error-message
fix typo in error-message
2016-05-25 07:35:08 -07:00
Sebastiaan van Stijn
d191f5bd1e
fix typo in error-message
Signed-off-by: Sebastiaan van Stijn <github@gone.nl>
2016-05-25 13:26:20 +02:00
Kenfe-Mickaël Laventure
126e5c403e Allow specifying runtime to be used when creating container (#247)
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-05-23 15:43:47 -07:00
Amit Krishnan
62e1370f91 containerd build clean on Solaris (#203)
* containerd build clean on Solaris

Signed-off-by: Amit Krishnan <krish.amit@gmail.com>

* Vendor golang.org/x/sys

Signed-off-by: Amit Krishnan <krish.amit@gmail.com>
2016-05-19 10:12:50 -07:00
Kenfe-Mickaël Laventure
b5981e004f Merge pull request #238 from duglin/fixErrMsg
Add a better error msg
2016-05-18 14:04:19 -07:00
Doug Davis
8ffaa02cd9 Add a better error msg
See https://github.com/docker/docker/issues/22643 for an example
where we get an error running a cmd but there's no output so `b`
is an empty string, which means the user doesn't see any interesting
error message to help them.

This PR will send back the `err` and `b` so that between those two
bits of info they should get something more than a blank string.

Signed-off-by: Doug Davis <dug@us.ibm.com>
2016-05-18 13:52:57 -07:00
Kenfe-Mickaël Laventure
cdbe1d05f8 Merge pull request #242 from mYmNeo/uninstall
Add uninstall target
2016-05-18 09:24:00 -07:00
Michael Crosby
614df93b92 Update grpc and protobufs dep (#243)
* Update grpc and protobufs dep

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>

* Fix grpc error check

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-05-18 09:16:55 -07:00
thomassong
1f4c441d17 add uninstall target
Signed-off-by: thomassong <thomassong@tencent.com>
2016-05-18 09:19:45 +08:00
Michael Crosby
c3da771256 Merge pull request #241 from mlaventure/makefile-improv
Makefile improv
2016-05-17 15:54:48 -07:00
Kenfe-Mickael Laventure
496007897f Remove unneeded compilation when running test
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-05-13 11:44:33 -07:00
Kenfe-Mickael Laventure
552547834b Install containerd binaries into built docker image
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-05-13 11:44:01 -07:00
Stephen J Day
41aadb3fb0 log: replace grpc logger with logrus
Signed-off-by: Stephen J Day <stephen.day@docker.com>
2016-05-12 15:53:32 -07:00
Kenfe-Mickaël Laventure
57b7c3da91 Merge pull request #237 from crosbymichael/create-status
Use state for container create
2016-05-09 14:55:08 -07:00
Michael Crosby
6fae7fd8fc Use state for container create
Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-05-09 14:51:19 -07:00
Michael Crosby
f1582e73c3 Merge pull request #236 from mlaventure/add-version-rpc
Add version rpc
2016-05-09 14:19:07 -07:00
Kenfe-Mickael Laventure
efc47463cd Add new version command to ctr
This method allow retrieving the target daemon version information.

Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-05-09 11:38:41 -07:00
Kenfe-Mickael Laventure
ba465c17a7 Add new GetServerVersion rpc method
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-05-09 11:38:28 -07:00
Michael Crosby
9344ea9d7d Merge pull request #235 from mlaventure/update-via-runc
Use the new runtime update command to process UpdateResources requests
2016-05-09 11:27:00 -07:00
Kenfe-Mickael Laventure
1ebdf69a58 Use the new runtime update command to process UpdateResources requests
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-05-09 11:21:45 -07:00
Kenfe-Mickael Laventure
2f69e11b1a Vendor in runc d49ece5a83da3dcb820121d6850e2b61bd0a5fbe
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-05-09 08:53:43 -07:00
Michael Crosby
3062918899 Merge pull request #230 from amitkris/uprev_solaris_deps
uprev dependencies required for build clean on Solaris
2016-05-06 10:48:49 -07:00
Michael Crosby
269487be8f Merge pull request #231 from mlaventure/fix-ctr-file-leak-and-exec-after-restore
Fix ctr file leak and exec after restore
2016-05-06 10:45:31 -07:00
Michael Crosby
121437994c Merge pull request #226 from hqhq/hq_fix_epoll_arm64
Correct build flag for arm64
2016-05-06 10:40:41 -07:00
Kenfe-Mickaël Laventure
eb9807ea22 Merge pull request #232 from crosbymichael/update-runc
Update runc to 89c3c97a8482f3a57cd4bb683df1a7b2c61405d8
2016-05-04 11:43:34 -07:00
Michael Crosby
4a341841c5 Update runc to 89c3c97a8482f3a57cd4bb683df1a7b2c61405d8
Fixes #211

Signed-off-by: Michael Crosby <crosbymichael@gmail.com>
2016-05-04 11:36:07 -07:00
Kenfe-Mickael Laventure
7979ac24fe Fix restore to correctly set the exec timeout value (containerd)
Signed-off-by: Kenfe-Mickael Laventure <mickael.laventure@gmail.com>
2016-05-02 14:04:14 -07:00