Commit Graph

4791 Commits

Author SHA1 Message Date
Rolf Neugebauer
cf2d88bb83 Merge pull request #2515 from eyz/open-vm-tools-poweroff
added support for guest shut down in pkg/open-vm-tools
2017-09-17 22:02:50 +01:00
Isaac Rodman
38452aa742 added poweroff.sh for pkg/open-vm-tools to allow shutdown from hypervisor
Signed-off-by: Isaac Rodman <isaac@eyz.us>
2017-09-16 10:39:23 -07:00
Rolf Neugebauer
6845f602dc Merge pull request #2506 from eyz/master
new pkg/modprobe from linuxkit/alpine base onto scratch
2017-09-16 17:21:15 +01:00
Rolf Neugebauer
d38ea16f4a Merge pull request #2513 from rn/lcow-kernel
Update 4.12.13 kernel patches and use it for LCOW
2017-09-15 21:41:44 +01:00
Isaac Rodman
0cce316caa pkg/modprobe from linuxkit/alpine base, using established multistage build onto scratch pattern
Signed-off-by: Isaac Rodman <isaac@eyz.us>
2017-09-15 12:38:40 -07:00
Justin Cormack
9d55b197c0 Merge pull request #2483 from zx2c4/custom-wg-script
wireguard: use custom wg-quick
2017-09-15 09:51:54 -07:00
Rolf Neugebauer
f547ac7259 blueprint: Update LCOW blueprint
- Use the new 4.12.13 kernel as it now seems to work
- Update LCOW to latest rev of OpenGCS

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-09-15 14:50:23 +01:00
Rolf Neugebauer
adb92ca672 pkg/init-lcow: Update to the latest version
This includes fixes to the intermittent on pull as well as
other fixes.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-09-15 14:47:12 +01:00
Rolf Neugebauer
7ba00c001b kernel: Update 4.12.x kernel patches
These are the recommended patches for 4.12 for Hyper-V sockets
and LCOW. Based on: https://github.com/Microsoft/opengcs/pull/138

This also includes a cherry-pick from upstream which fixes the
ext4/nvdimm/pax failures we have seen since 4.11.2.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-09-15 14:46:25 +01:00
Jason A. Donenfeld
8f3847e985 wireguard: use custom wg-quick
This removes things we do not need and expects the interface to
already be created.

Signed-off-by: Justin Cormack <justin.cormack@docker.com>
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2017-09-15 01:01:55 +02:00
Rolf Neugebauer
0968be802f Merge pull request #2508 from rn/kern-up
kernel update to 4.12.13/4.9.50/4.4.88
2017-09-14 20:54:11 +01:00
Rolf Neugebauer
2d20ef1014 Update YAML files to new kernels
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-09-14 17:21:01 +01:00
Rolf Neugebauer
59782d502e kernel: Update to 4.12.13/4.9.50/4.4.88
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-09-14 17:19:43 +01:00
Rolf Neugebauer
7ac06c5ad4 Merge pull request #2507 from djs55/fix-logging
service: log stdout and stderr to separate files
2017-09-14 13:23:26 +01:00
David Scott
2b80ff5a0f Update init version in YAML files
Signed-off-by: David Scott <dave.scott@docker.com>
2017-09-14 11:47:38 +01:00
David Scott
9c35dbaac2 service: log stdout and stderr to separate files
Previously we would pass the path `/var/log/service.log` for both
stdout and stderr to containerd. containerd would construct a dict
with the paths as keys[1] and, due to the duplicate key, would only
open one of the files and start one `io.Copy` instance. Writes to
the other stream would be buffered by the pipe connected to
containerd-shim and would eventually block.

If we modified containerd to open the file twice and start 2
`io.Copy` instances, we would end up with the two streams interleaved
together. It seems cleaner to keep the streams separate; therefore
this patch logs stdout to `/var/log/service.out.log` and stderr to
`/var/log/service.err.log`.

[1]
49437711c3/linux/shim/io.go (L51)

Signed-off-by: David Scott <dave.scott@docker.com>
2017-09-14 11:15:04 +01:00
Rolf Neugebauer
3b097e6056 Merge pull request #2504 from rn/lcow-up
Update OpenGCS and LCOW blueprint
2017-09-12 20:11:59 +01:00
Rolf Neugebauer
eb874e8078 blueprints: Open LCOW blueprint to latest
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-09-12 17:46:43 +01:00
Rolf Neugebauer
36c84004a2 pkg/init-lcow: Update to latest version of OpenGCS
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-09-12 16:59:07 +01:00
Justin Cormack
0125a95879 Merge pull request #2502 from rn/kern-up
Update kernel to 4.12.12/4.9.49 and enable TASK_XACCT/TASK_IO_ACCOUNTING
2017-09-12 15:06:36 +01:00
Rolf Neugebauer
95a1c51d0d Merge pull request #2501 from ijc/qemu-reinstate-persistent-mac
qemu: restore persistent mac address support
2017-09-12 13:39:18 +01:00
Ian Campbell
16147a7591 qemu: restore persistent mac address support
If the state dir is preserved then the VM should come up with the same mac
address on subsequent reboots.

Fixes regression in #2498.

Rather than fixing the typo in the associated comments just remove them since
they don't really convey any useful information.

Signed-off-by: Ian Campbell <ijc@docker.com>
2017-09-12 12:12:03 +01:00
Rolf Neugebauer
11d9dc1e99 Update YAML files to latest kernels
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-09-12 11:49:52 +01:00
Rolf Neugebauer
3ed92e7497 kernel: Enable TASK_XACCT and TASK_IO_ACCOUNTING
This enables per task (IO) accounting which is useful
for monitoring IO activity and the like.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-09-12 11:47:05 +01:00
Rolf Neugebauer
7bc93a6c46 kernel: Update to 4,9.49/4.12.12
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-09-12 11:23:41 +01:00
Justin Cormack
ca4ee13fca Merge pull request #2499 from zx2c4/wireguard-bump
wireguard: bump to new snapshot with better RTS semantics
2017-09-11 20:51:34 +02:00
Jason A. Donenfeld
7fa39b172e wireguard: bump to new snapshot with better RTS semantics
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2017-09-11 18:46:07 +02:00
Justin Cormack
e3fbef6037 Merge pull request #2493 from rn/kup
Update kernels to 4.12.10/4.12.11/4.9.48/4.4.87
2017-09-11 11:18:41 +02:00
Rolf Neugebauer
7c78352a74 Merge pull request #2498 from arm64b/arm64-qemu-networking-tap
qemu: Fix the networking issue in 'tap' mode on arm64
2017-09-11 09:47:12 +01:00
Dennis Chen
147964b241 qemu: Fix the networking issue in 'tap' mode on arm64
This PR is used to fix the issue #2488.

Currently we use '-net' the old way to initialize a host nic
interface, this method will not work on arm64 platform(#2488 issue),
so we use the '-netdev' method which will work on both arm64 and amd64.

Signed-off-by: Dennis Chen <dennis.chen@arm.com>
2017-09-11 05:33:06 +00:00
Rolf Neugebauer
61c74e2e72 Merge pull request #2494 from rn/qarm64
cmd: On KVM/aarch64 add gic_version=host
2017-09-08 18:50:59 +01:00
Rolf Neugebauer
57394620b8 cmd: On KVM/aarch64 add gic_version=host
This picks the correct GIC version to be emulated.
Without it you get an error on Thunder-X (and possibly others):

KVM_SET_DEVICE_ATTR failed: No such device

See also https://bugzilla.redhat.com/show_bug.cgi?id=1375571#c6

Fixes #2360

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-09-08 16:34:33 +01:00
Rolf Neugebauer
a1dcdd6495 Update YAML files with latest kernels
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-09-08 15:46:02 +01:00
Rolf Neugebauer
5427147e3b kernel: Update to 4.12.11/4.9.48/4.4.87
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-09-08 14:44:44 +01:00
Rolf Neugebauer
c6af2f4d6b kernel: Update to 4.12.10
I must have missed the update earlier this week

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-09-08 14:08:04 +01:00
Rolf Neugebauer
c89af36c36 Merge pull request #2475 from rn/zfs
Add support for building ZFS kernel modules
2017-09-08 10:35:56 +01:00
Rolf Neugebauer
c19f6e99dc Merge pull request #2491 from rn/lcow-linux-v4.11.1
Use Linux kernel 4.11.1 for LCOW for now
2017-09-07 22:05:48 +01:00
Rolf Neugebauer
792f4030c9 Merge pull request #2492 from ijc/containerd-v1.0.0-beta.0
Containerd v1.0.0 beta.0
2017-09-07 22:02:04 +01:00
Ian Campbell
b7ec19bb1f Update yml for containerd beta.0
Signed-off-by: Ian Campbell <ijc@docker.com>
2017-09-07 18:46:40 +01:00
Ian Campbell
6cbc3ed518 Bump init+containerd to new alpine base with containerd beta.0
Signed-off-by: Ian Campbell <ijc@docker.com>
2017-09-07 18:31:57 +01:00
Ian Campbell
b736afeee3 alpine: bump to containerd v1.0.0-beta.0
Signed-off-by: Ian Campbell <ijc@docker.com>
2017-09-07 17:28:38 +00:00
Rolf Neugebauer
b9ff4e536d blueprints: Use kernel 4.11.1 for LCOW (for now)
Newer 4.11.x kernels seem to trigger a bug (either in Linux or the
NVDIMM backend in Hyper-V) which causes silent failures of the
container VM.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-09-07 18:02:08 +01:00
Rolf Neugebauer
ce9054efdb kernel: Remove 4.11 support (again!)
Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-09-07 17:55:43 +01:00
Rolf Neugebauer
4036e71c0d kernel: Temporarily revert 4.11.x to 4.11.1 on x86_64
Commit 5a3651b4a92c ("ext4: return to starting transaction in
ext4_dax_huge_fault()") introduced between 4.11.1 and 4.11.2
causes LCOW to stop working (VM silently exits). It is unclear
if this commit is the root cause or if it triggers something
in the Hyper-V backend or if it is unrelated.

But, in order make progress on other LCOW testing, we temporarily
use need to use this older kernel untile the issue has been
root caused.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
2017-09-07 17:37:00 +01:00
Rolf Neugebauer
997a0a4756 kernel: Add additional patch to 4.11 kernel
This is required for LCOW, see:
https://github.com/Microsoft/opengcs/pull/127/files#diff-6de848311cf35e3295214a8d10e3142cR62

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
(cherry picked from commit 38a2d57dc8)
2017-09-07 17:34:38 +01:00
Rolf Neugebauer
5325984124 kernel: Temporarily resurrect the 4.11 kernel
We need to apply an additional patch for LCOW.

Signed-off-by: Rolf Neugebauer <rolf.neugebauer@docker.com>
(cherry picked from commit 66d96b4749)
2017-09-07 17:34:38 +01:00
Rolf Neugebauer
c793ea973c Merge pull request #2490 from MagnusS/update-vpnkit
Update to latest Hyperkit API
2017-09-07 17:08:53 +01:00
Magnus Skjegstad
c8ba942a80 Update to new Hyperkit API / VPNKit protocol
This adds support for the updated Hyperkit API, which is needed to
request a specific IP address in new versions of VPNKit / Docker for
Mac. IPs encoded in the UUID (the old method) will now be ignored by
VPNKit.

A preferred IPv4 address can be requested directly via the new API. The
IP is then associated with the VPNKit UUID identifying the connection.
The UUID is either user specified or randomly assigned if left empty.
VMs launched with the same VPNKit UUID it will get the same IP address.

To avoid having to copy the assigned UUID manually, a file `uuid.vpnkit`
is now saved in the state directory when the UUID is generated.  The UUID
from this file is reused automatically if it exists, unless a different
VPNKit UUID is specified on the command line. This also means that VMs
that use dynamically assigned IPs will by default get the same IP each
time they are started, as long as the state directory exists.

This change is incompatible with earlier versions of VPNKit / Hyperkit
and a recent version of Docker for Mac has to be installed. If the
feature is unsupported using the `--ip` parameter will exit with an
error message.

Signed-off-by: Magnus Skjegstad <magnus@skjegstad.com>
2017-09-07 12:15:49 +02:00
Magnus Skjegstad
241136e910 Update Hyperkit to latest version
Signed-off-by: Magnus Skjegstad <magnus@skjegstad.com>
2017-09-07 10:49:45 +02:00
Riyaz Faizullabhoy
ce829e3878 Merge pull request #2486 from rn/lcow
Update LCOW
2017-09-06 11:19:42 -07:00