Commit Graph

13214 Commits

Author SHA1 Message Date
James O. D. Hunt
726df9dad8
Merge pull request #1162 from jcvenegas/fix-1161
makefile: honor DESDIR on install
2019-01-28 11:42:18 +00:00
Fupan Li
f1a12ce04c shimv2: use the runtime config file passed from containerd/cri
containerd/cri's different runtime handlers can pass different
config files to shimv2 by a generic runtime options, by this kata
can launch the pods using different VMM for different runtime handlers.

Fixes:#1082

Signed-off-by: Fupan Li <lifupan@gmail.com>
2019-01-28 17:31:09 +08:00
Q. Ziv Li
ed7ec36325 docs: Fix typo
Fix typo: librdbd1 -> librbd1

Fixes: #359

Signed-off-by: Q. Ziv Li <qzivli@hotmail.com>
2019-01-26 17:19:50 +08:00
Archana Shinde
fe90fe053f
Merge pull request #361 from grahamwhaley/20190125_snap_docs
install: snap: add link out to config and integrate instrs
2019-01-25 15:19:24 -08:00
Archana Shinde
767ac47a15
Merge pull request #312 from jongwu/memory_hotplug
kernel: Add memory hotplug(add) support for arm64
2019-01-25 14:37:52 -08:00
Samuel Ortiz
18dcd2c2f7 virtcontainers: Decouple the network API from the sandbox one
In order to fix #1059, we want to create a hypervisor package. Some of
the hypervisor implementations (qemu) depend on the network and endpoint
interfaces. We can not have a virtcontainers -> hypervisor -> network,
endpoint -> virtcontainers cyclic dependency.
So before creating the hypervisor package, we need to decouple the
network API from the virtcontainers one.

Fixes: #1180

Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2019-01-25 15:25:49 +01:00
Samuel Ortiz
b39cb1d13a virtcontainers: Remove the network interface
There's only one real implementer of the network interface and no real
need to implement anything else. We can just go ahead and remove this
abstraction.

Fixes: #1179

Signed-off-by: Samuel Ortiz <sameo@linux.intel.com>
2019-01-25 15:25:46 +01:00
Julio Montes
526c5ffd76 snap: fix qemu command name
set qemu-system instead of qemu-lite as default qemu command

Signed-off-by: Julio Montes <julio.montes@intel.com>
2019-01-25 07:53:41 -06:00
Graham Whaley
d90bb59a15 install: snap: add link out to config and integrate instrs
The snap install doc only told you how to install the kata snap,
and did not then go further to describe how to configure and
intergrate it. Those details are available already over in the
packaging repo, so let's link out to them.

Fixes: #360

Signed-off-by: Graham Whaley <graham.whaley@intel.com>
2019-01-25 11:09:36 +00:00
William Douglas
a02c39efd0 Makefile: Set arch regardless of GOPATH state
Architecture-dependent settings were not being populated when GOPATH
was set. This change ensures they are always set.

Fixes #1169

Signed-off-by: William Douglas <william.douglas@intel.com>
2019-01-24 09:20:21 -08:00
James O. D. Hunt
db1fb858a4
Merge pull request #349 from jjolly/opensuse-install-fix
Docs: Remove invalid option from suse guides
2019-01-24 14:27:13 +00:00
Peng Tao
c60b72f5d1
Merge pull request #332 from gnawux/shimv2
document the new introduced shimv2
2019-01-24 10:43:22 +08:00
Jose Carlos Venegas Munoz
411aefb295
Merge pull request #354 from kata-containers/fix-ubuntu-guide
install: have ubuntu install point to master for 1.5 release
2019-01-23 10:56:23 -06:00
Eric Ernst
e797606d4c install: have ubuntu install point to master for 1.5 release
Fixes: #335

Signed-off-by: Eric Ernst <eric.ernst@intel.com>
2019-01-23 16:42:14 +00:00
Julio Montes
33dc19f82a snap: get sources from git repositories
get source from git repositories to show the right commit
version of each component.

fixes #317

Signed-off-by: Julio Montes <julio.montes@intel.com>
2019-01-23 10:07:19 -06:00
James O. D. Hunt
6f2c036601
Merge pull request #1164 from liwei/fix-factory-status
factory: do not destroy vm factory when checking status
2019-01-23 11:48:18 +00:00
James O. D. Hunt
d97e994c47
Merge pull request #348 from bergwolf/vm-template
howto: add vm template introduction and guide
2019-01-23 11:44:41 +00:00
James O. D. Hunt
1353499e74
Merge pull request #1115 from nitkon/P9SMT
runtime: Fix TestCCCheckCLIFunction on P9 system
2019-01-23 10:34:21 +00:00
Peng Tao
07f6cb16e7 howto: add vm template introduction and guide
So that we have a doc to point to when people asks about VM templating.

Fixes: #347

Signed-off-by: Peng Tao <bergwolf@gmail.com>
2019-01-23 16:23:34 +08:00
Wei Li
d78a62da87 factory: do not destroy vm factory when checking status
Fixes: #1163

Signed-off-by: Wei Li <liwei@anbutu.com>
2019-01-23 15:57:04 +08:00
Jose Carlos Venegas Munoz
718488b7b5 makefile: honor DESDIR on install
- Do symlink to a relative path to hypervisor config.
- Create symlink on DESTDIR

Fixes: #1161

Signed-off-by: Jose Carlos Venegas Munoz <jose.carlos.venegas.munoz@intel.com>
2019-01-23 00:27:55 -06:00
Xu Wang
9343ece91e
how-to: a standalone doc for containerd integration
including shimv2 and runtime class

Fixes: 322
Signed-off-by: Xu Wang <xu@hyper.sh>
2019-01-23 14:12:40 +08:00
Xu Wang
04498bd4d2
architecture.md: update the architecture of v1.5
- shimv2 has been introduced
- vsock has been supported

Fixes: #322
Signed-off-by: Xu Wang <xu@hyper.sh>
2019-01-23 14:12:29 +08:00
Xu Wang
75501df2fa
how-to: add shimv2 as the default in the k8s and containerd howto
move the  containerd+kata parts to containerd-kata.md and make
this file simpler

Signed-off-by: Xu Wang <xu@hyper.sh>
2019-01-23 14:12:12 +08:00
Xu Wang
c06e9f241f
developer-guide: update for shimv2
- update cri-containerd to containerd with cri plugin
- suggest the shimv2 to be the preferred kubernetes integration way.

Signed-off-by: Xu Wang <xu@hyper.sh>
2019-01-23 14:11:48 +08:00
Jose Carlos Venegas Munoz
5f7fcd7730
Merge pull request #1156 from katacontainersbot/1.5.0-branch-bump
# Kata Containers 1.5.0
2019-01-22 14:44:35 -06:00
GabyCT
c9ebb56683
Merge pull request #346 from rpw/master
Fix Debian install documentation.
2019-01-22 10:35:17 -06:00
Nitesh Konkar
c93aa53187 runtime: Check SMT=on/off only for P8 or lesser
Set testCPUInfoTemplate to systems /proc/cpuinfo
and check if SMT is on/off only on P8 and lower
systems as Power 9 systems support virtualization
irrespective of SMT being on/off.

Fixes: #1114

Signed-off-by: Nitesh Konkar niteshkonkar@in.ibm.com
2019-01-22 22:04:52 +05:30
James O. D. Hunt
c271d1c055
Merge pull request #1142 from alicefr/pci_type
s390x: change pci bridge type
2019-01-22 15:31:25 +00:00
Xu Wang
2bb23519f7
install: mention shimv2 for the manual installation instruction
- mentioned shimv2 in the configuration part of manual installation
- reference the link of shim v2 api and the k8s containerd howto

Signed-off-by: Xu Wang <xu@hyper.sh>
2019-01-22 15:39:05 +08:00
Xu Wang
3b0b0147bd
Merge pull request #1139 from bergwolf/delete
clean up container dir
2019-01-22 10:16:34 +08:00
katacontainers bot
6875d3f6da release: Kata Containers 1.5.0
- s390x: root parameter is missing
- vc: qemu: fix error message on hotplug.
- virtcontainers: set private propagation in rootfs
- virtcontainers: ppc64le qemu does not have nvdimm capabilities yet
- shimv2: use the UnmarshalAny() to unmarshal Protobuf.Any
- runtime-v2: Make sure Shutdown() only shuts the server down
- Add build support for the firecracker hypervisor
- virtcontainers: Fix unit test typo
- shimv2: multi wait support for wait service
- update: allow do update on ready.
- cli: fix parameter order error in cli/ps.go
- virtcontainers: Add Asset, Capabilities and Bridge to the types package
- katautils: Move SetKernelParams from CreateSandbox to updateRuntimeCo…
- Versions: Add firecracker version
- Hypervisor interface simplification
- kata-runtime: Return correct kata-env on ppc64le
- katautils: Remove unused argument containerID of function SetKernelPa…
- kernel: Revert "versions: Bump to kernel 4.19.10"
- versions: Bump to kernel 4.19.10
- Initial types package creation
- cli: allow to kill a stopped container and sandbox
- virtcontainers: Pass seccomp profile inside VM
- First createSandboxFromConfig simplification
- shimv2: get the kata configure file from env KATA_CONF_FILE
- firecracker: Network API update
- container: Use lazy unmount
- block: Add new block storage driver "nvdimm"

5329a71 runtime-v2: Make sure Shutdown() only shuts the server down
a07b4cd virtcontainers: Fix unit test typo
f542233 s390x: root parameter is missing
18c7aa4 virtcontainers: ppc64le qemu does not have nvdimm capabilities yet
5ee838d shimv2: use the UnmarshalAny() to unmarshal Protobuf.Any
7228bab container: update: Allow updates once container is created
2e1ddbc virtcontainers: Add Bridge to the types package
5ba30fd shimv2: multi wait support for wait service
b25f43e virtcontainers: Add Capabilities to the types package
67e696b virtcontainers: Add Asset to the types package
6c3e0a9 build: Add support for building firecracker hypervisor
6fcb76c build: Handle qemu explicitly
933b16f build: Improve quiet install
a5a74f6 vc: qemu: fix error message on hotplug.
d4dd5f1 qemu: fix gofmt import order.
42a89d0 katautils: Move SetKernelParams from CreateSandbox to updateRuntimeConfig
abcc2d5 Versions: Add firecracker version
db33d71 Kata-runtime: Use correct model name for TestGetCPUDetails
11e24aa kata-runtime: Return correct kata-env on ppc64le
2c1b15d kernel: Revert "versions: Bump to kernel 4.19.10"
b029e44 virtcontainers: set private propagation in rootfs
a02fd59 virtcontainers: Remove code duplication in the test setup
cf22f40 virtcontainers: Remove the hypervisor waitSandbox method
763bf18 virtcontainers: Remove the hypervisor init method
fb149ce katautils: Remove unused argument containerID of function SetKernelParams
b05dbe3 runtime: Convert to the new internal types package
701afe9 virtcontainers: First types package
3ab7d07 virtcontainers: Alias for pkg/types
c2c9c84 virtcontainers: Conditionally pass seccomp profile
bf2813f cli: allow to kill a stopped container and sandbox
09168cc virtcontainers: Call stopVM() from sandbox.Stop()
acf833c virtcontainers: Call agent startSandbox from startVM
ebf8547 virtcontainers: Remove useless startSandbox wrapper
0b28ab9 shimv2: get the kata configure file from env KATA_CONF_FILE
5c6d94d firecracker: Revendor firecracker go sdk to 0.12.0
ec5cf18 firecracker: Network API update
dd28ff5 memory: Add new option memory_offset
ef75c3d block: Add new block storage driver "nvdimm"
c099be5 container: Use lazy unmount
802bfa2 versions: Bump to kernel 4.19.10
08f1c05 Module: fix parameter order error in cli/ps.go

Signed-off-by: katacontainers bot <katacontainersbot@katacontainers.io>
2019-01-21 17:37:58 +00:00
Frank Cao
d1cd82d0c1
Merge pull request #1143 from alicefr/missing_root
s390x: root parameter is missing
2019-01-21 19:40:38 +08:00
Peng Tao
e8788bebd5
Merge pull request #1121 from jcvenegas/fix-memory-max-message
vc: qemu: fix error message on hotplug.
2019-01-21 14:16:41 +08:00
Peng Tao
d75f26d719 vc: set detach flag when umounting rootfs
docker might bind mount some files/dirs under container rootfs
without notifying runtime. We need to unmount them otherwise
docker will fail to clean up containers.

man umount(2):
MNT_DETACH (since Linux 2.4.11)
     Perform a lazy unmount: make the mount point unavailable for new accesses, immediately
     disconnect the filesystem and all filesystems mounted below it from each other and
     from the mount table, and actually perform the unmount when the mount point ceases to be busy.

Signed-off-by: Peng Tao <bergwolf@gmail.com>
2019-01-21 14:11:35 +08:00
Peng Tao
d314e2d0b7 agent: clean up share path created by the agent
The agent code creates a directory at
`/run/kata-containers/shared/sandboxes/sbid/` to hold shared data
between host and guest. We need to clean it up when removing a sandbox.

Fixes: #1138

Signed-off-by: Peng Tao <bergwolf@gmail.com>
2019-01-21 14:10:59 +08:00
Peng Tao
36762c7cad qemu: cleanup vm template path properly
VM templates creates a symlink from `/run/vc/vm/sbid` to
`/run/vc/vm/vmid`. We need to clean up both of them.

Signed-off-by: Peng Tao <bergwolf@gmail.com>
2019-01-21 14:10:51 +08:00
Peng Tao
0c09d2bf9a
Merge pull request #980 from devimc/topic/left_mount_points
virtcontainers: set private propagation in rootfs
2019-01-21 13:28:23 +08:00
Ralf-Philipp Weinmann
771b1b1869 docs: fix Debian install documentation due to OBS repo rename
As the Debian OBS repo was renamed was renamed on 20181219 the corresponding documentation
needs to be fixed. See also #306, more specifically
https://github.com/kata-containers/documentation/pull/306#discussion_r242983373

A test install using the documentation on a fresh Debian Stretch (9.5) was done
on 20190119.

Fixes #344

Signed-off-by: Ralf-Philipp Weinmann <ralf@comsecuris.com>
2019-01-19 07:23:35 +01:00
John L. Jolly
e7d2141648 Docs: Remove invalid option from suse guides
The OpenSUSE and SLES install guide for Docker used the --containerd
option. When this option is used on OpenSUSE Leap 15 or SLES 15, the
following error occurs when starting Docker:

    Failed to connect to containerd: failed to dial
        "/run/containerd/containerd.sock": context deadline exceeded

Removing the --containerd option from the configuration file allows the
Docker daemon to start successfully and a Kata container to be created.

Fixes: #350

Signed-off-by: John L. Jolly <jjolly@suse.com>
2019-01-18 12:35:47 +01:00
Graham Whaley
150a44fa6c
Merge pull request #1137 from nitkon/patch-1
virtcontainers: ppc64le qemu does not have nvdimm capabilities yet
2019-01-18 10:46:32 +00:00
Sebastien Boeuf
744354db56
Merge pull request #1134 from lifupan/marshalany
shimv2: use the UnmarshalAny() to unmarshal Protobuf.Any
2019-01-18 01:33:52 -08:00
Sebastien Boeuf
45f72219f8
Merge pull request #1151 from sboeuf/fix_v2_shutdown
runtime-v2: Make sure Shutdown() only shuts the server down
2019-01-18 01:32:43 -08:00
Jianyong Wu
d2a42cb6d5 kernel: config: bump config
Fixes: #309

Signed-off-by: Jianyong Wu  <jianyong.wu@arm.com>
2019-01-18 02:55:44 -05:00
Jianyong Wu
e654dbd836 kernel: Add memory hotplug(add) support for arm64
As memory hotplug for arm64 by acpi is not ready on qemu, we choose
"probe" instead. You can refer to [1] to get more infomation about
"probe". The process of memory hotplug by "probe" in kata lies below:
firstly, add memory in qemu qmp; secondly, echo the start phyical address
of that memory to /sys/devices/system/memory/probe, which will be done
through kata-agent; thirdly, excute online op, then this newly added
memory is capable to be used.

All functions in this patch will be called after "echo" op. It can be
divided into two parts:
1. create page table for that memory;
2. add that memory to memblock.

In this patch, NUMA must be turned off for not all arm64 machine supports
NUMA.
As the newly added memory should be placed from 2T to 6T which is decided
in qemu and phyical address and virtual address will be one-one mapping
when create pgd for that memory, we must config ARM64_VA_BITS as 48.
Also some configs should be turned on, especially "ARCH_MEMORY_PROBE".

We have tested this patch integrated with another patch which performed
that echo op. It works well when using "-m" in command line when start a
kata-container on aarch64 machine.

This patch derived from Maciej Bielski. You can refer to [2] to get full
infomation about it.

[1] https://www.kernel.org/doc/Documentation/memory-hotplug.txt
[2] https://lkml.org/lkml/2017/11/23/183

Fixes: #309

Signed-off-by: Jianyong Wu  <jianyong.wu@arm.com>
Signed-off-by: Jia He <justin.he@arm.com>
Signed-off-by: Penny Zheng <penny.zheng@arm.com>
2019-01-18 02:52:18 -05:00
Sebastien Boeuf
5329a71b3d runtime-v2: Make sure Shutdown() only shuts the server down
Because the runtime v2 runs as a RPC server, the caller will at some
point use the Shutdown() API to shut down the server. Because this
will cause the server to exit, the caller cannot expect any valid
answer when calling this. That's why we cannot afford stopping and
deleting the sandbox from this function.

Instead, we move sandbox.Stop() and sandbox.Delete() to a more
appropriate API, the Delete() one.

Fixes #1150

Signed-off-by: Sebastien Boeuf <sebastien.boeuf@intel.com>
2019-01-17 22:15:29 -08:00
Eric Ernst
d7b02c502e
Merge pull request #1109 from jodh-intel/create-fc-config
Add build support for the firecracker hypervisor
2019-01-17 21:46:47 -08:00
Eric Ernst
50650e9342
Merge pull request #1146 from sameo/topic/typo
virtcontainers: Fix unit test typo
2019-01-17 21:41:42 -08:00
Peng Tao
ea2086b45f
Merge pull request #1133 from lifupan/multiwait
shimv2: multi wait support for wait service
2019-01-18 12:12:39 +08:00
Frank Cao
6c3277e013
Merge pull request #1126 from jcvenegas/allow-update-on-ready
update: allow do update on ready.
2019-01-18 11:03:12 +08:00