Commit Graph

57 Commits

Author SHA1 Message Date
Benoit Sigoure e4691cd704 nodeup: Add support for Docker 18.09.3.
Starting from Docker 18.09.0, the Docker distribution has been split in
3 packages: the Docker daemon, the Docker CLI, and for containerd.  This
adds a twist to how to upgrade Docker from the base image as the daemon
and CLI packages must be installed at the same time, otherwise dpkg/rpm
will refuse to upgrade (the new CLI is incompatible with the old package
and the daemon can't be installed without first installing the CLI and
the new containerd, so the upgrade MUST happen in a single transaction).

This code change thus adds the possibility to specify additional packages
to install in the same dpkg/yum transaction, such as the Docker CLI and
containerd in nodeup, and the ability to apply the multi-package upgrade
atomically with dpkg/rpm.

We also use this new mechanism for the SELinux policy on RHEL/CentOS.
2019-03-04 15:39:12 -08:00
Kubernetes Prow Robot 743b319fc9
Merge pull request #6506 from justinsb/chattr_docker_runc_17_03_2
Try using chattr to mark docker-runc as immutable
2019-02-25 07:22:12 -08:00
Justin SB 5d28bed21f
Map docker 18.06.3
Docker 18.06.2 on RHEL/Centos did not actually contain the fix, so we
need 18.06.3.
2019-02-23 17:19:44 -05:00
Justin SB 9bfa0cdd2a
Try using chattr to mark docker-runc as immutable
May be a workaround for CVE-2019-5736, is defense in depth in any case.
2019-02-20 22:26:44 -05:00
Kubernetes Prow Robot 823f769a95
Merge pull request #6492 from justinsb/package_names_for_container_selinux
Fix package name & version for container-selinux
2019-02-20 08:14:50 -08:00
Justin SB f094d16d0f
Fix package name & version for container-selinux 2019-02-19 21:25:38 -05:00
Justin SB ea4e57145c
Workaround for overlay2 vs rhel-family docker bug
Docker 17.x with rhel-family fails to detect overlay2 correctly, and
need us to pass overlay2.override_kernel_check=true for docker to
correctly detect overlay2 support.
2019-02-19 21:25:12 -05:00
mikesplain 54c969c521 Add debian jessie patch for CVE-2019-5736 2019-02-12 08:42:49 -05:00
JuanJo Ciarlante 6bb897d7ac
add Xenial, fix Stretch Version to 18.06.2~ce~3-0~debian (same as for Xenial, Bionic, Stretch) 2019-02-11 19:44:25 -03:00
JuanJo Ciarlante b761a809d5
add 18.06.2 entries instead of replacing 18.06.1 ones 2019-02-11 17:05:12 -03:00
JuanJo Ciarlante 49615d5afa [jjo] update docker-ce 18.06 for CVE-2019-5736
Fixes #6459.

* Update CoreOS, Debian Stretch and Ubuntu Bionic
  docker-ce packages to 18.06.2
2019-02-11 16:26:17 -03:00
Naresh Kumar Amrutham 6a0bdfda31 fixed comment 2019-01-15 10:04:41 -08:00
Naresh Kumar Amrutham c5c26fe4d2 include dependency container-selinux for docker v17.09 2019-01-15 10:01:28 -08:00
Naresh Kumar Amrutham f1fb335fbe include docker 18.06.1 missed dependency
container-selinux-2
2019-01-14 14:40:13 -08:00
Bruno 069db70f57 Add Docker 18.06.1 for CentOS and RHEL 7 2018-12-12 11:46:22 +01:00
Ryan Bonham 8489f2a2d9 Fix go formating 2018-09-06 15:15:16 -05:00
Ryan Bonham 6207b56077 Add Docker 18.06.1 for Debian Stretch 2018-09-06 08:59:46 -05:00
Justin Santa Barbara 2faa68426f Docker installation from tar.gz
Ubuntu 18.04 doesn't have a package for docker 17.03, but we can still
support it by using the tar.gz package.

This could be a nice fallback for other operating systems in future,
and it might prove to be more reliable than the OS packages.

But start with supporting ubuntu 18.04 with older docker versions!
2018-07-24 21:58:54 -04:00
Mike Splain 8aa5059038 Initial Bionic Support
Kubernetes doesn't officially support bionic.
Docker has only released 18.03.1 for Bionic.
Kubernetes also doesn't officially support 18.03.1
Use at your own risk.
2018-06-29 11:11:59 -04:00
Justin Santa Barbara 1e381996ce Handle storage flag on COS more carefully
Only clear the flag if there is a docker config file, so that we can
continue to set the storage flag on older COS images.  We could be
smarter about checking if the storage driver is actually set in the
docker config, but for now we just start by logging it.
2018-06-20 19:34:10 -04:00
Justin Santa Barbara ef5936d8b5 Support overlay2 in docker
We also have to stop passing the flag on ContainerOS, because it's set
in /etc/docker/default.json and it's now an error to pass the flag.

That in turn means we move those options to code, which are the last of
those legacy config options.  (We still have a few tasks declaratively
defined though)
2018-06-07 17:11:11 -04:00
Justin Santa Barbara 088d14e2bd docker: Set TasksMax to infinity
Equivalent of https://github.com/kubernetes/kubernetes/pull/51986
2018-06-03 13:14:15 -07:00
Cryptophobia c9cf51f5ad Add docker 17.09.0 version for Debian 9 2018-04-19 12:17:07 -04:00
andrewsykim 89960aff67 coreos/containeros: restart kops-configuration service after docker drop-in is loaded 2018-04-03 12:47:19 -04:00
Louis Munro 487dc33b7e Adds an AfterFiles field to nodetasks.File and makes sure CoreOS uses it 2018-03-26 18:30:36 +00:00
Justin Santa Barbara 90ac573594 Centos: add selinux package dependencies
Issue #4091
2018-03-18 17:49:45 -04:00
Kubernetes Submit Queue d0618e1471
Merge pull request #4014 from blakebarnett/bdb/fix_docker_stretch_url
Automatic merge from submit-queue.

Fix URL for Docker 17.03.2 on Debian Stretch
2017-12-11 06:26:30 -08:00
wannabesrevenge 4661fd5e8e
Fix libcgroup dependency typo
In nodeup/pkg/model/docker.go, libcgroup is listed as a dependency for various environments. A couple times this is misspelled as libgcroup
2017-12-08 13:35:13 -06:00
Blake d3615cb1d9 Fix URL for Docker 17.03.2 on Debian Stretch 2017-12-05 17:40:22 -08:00
Divya Vavili b698c684a9 Add support for docker 17.09.0 version
Signed-off-by: Divya Vavili <vavili.divya@gmail.com>
2017-11-16 11:55:11 -08:00
Mikael Knutsson 2de2ab53a8
Debian Stretch versions for Docker to support K8s 1.8 2017-11-09 10:41:17 +08:00
Kubernetes Submit Queue 8718b4a4a0 Merge pull request #3628 from justinsb/rhel7_docker_1_12_6_deps
Automatic merge from submit-queue.

Docker dependencies for docker 1.12.6 on RHEL
2017-10-13 23:38:42 -07:00
Justin Santa Barbara 437a4c832c Docker dependencies on RHEL
Add missing docker depednencies
2017-10-13 22:27:04 -04:00
Kashif Saadat c78790f902 Modified OS detection logic when updating http proxy settings. 2017-10-13 19:08:47 +01:00
Rodrigo Menezes 3b3453d7c5 Newer versions of docker do not follow Semantic Versioning 2017-10-07 17:04:32 -07:00
Justin Santa Barbara d835cb690a nodeup: warn if no docker version matched
Helps to understand what went wrong if something went wrong.
2017-10-04 02:39:09 -04:00
Justin Santa Barbara cc559dc373 Map docker 1.13.1 & 17.03.2, default 1.8 to 1.13.1
Kubernetes 1.8 is validated with 1.13.1 and 17.03.2.

For 1.8, the default should be 1.13.1
2017-10-03 19:04:20 -04:00
Justin Santa Barbara 6059fdf9cb Debian 9 (stretch) support
Recognize debian 9 and map docker on it
2017-09-30 10:24:34 -04:00
Rohith 9b9e4bb123 Docker Default Ulimits
The current implementation does not permit us to set the default ulimit on docker daemon (currently a requirement for our logstash). This PR add the DefaultUlimit option to the DockerConfig
2017-08-24 21:24:41 +01:00
Kubernetes Submit Queue df4aa41322 Merge pull request #3092 from justinsb/xenial_packages
Automatic merge from submit-queue

Add iptables to docker-xenial dependencies
2017-08-18 15:24:10 -07:00
Johannes Würbach 47256fed82
CoreOS: Ensure docker configuration is loaded
Previously the configuration has been written after docker has been started and
was actually only applied after a reboot.

Manually reload system and restart docker to ensure the configuration has been
applied.
2017-08-04 11:44:12 +02:00
Johannes Würbach 798d87da32
Configure docker on CoreOS/ContainerOS
While the installation of docker should be skipped, docker should still be
configured to allow overriding the docker config using kops.

Fixes https://github.com/kubernetes/kops/issues/3057
2017-08-02 13:32:33 +02:00
Justin Santa Barbara 532585dbf4 Add iptables to docker-xenial dependencies
It isn't always installed, apparently!
2017-07-30 21:44:16 -04:00
Justin Santa Barbara bc0063e1cb Update to docker 1.12.6 for k8s 1.6 2017-04-04 01:24:49 -04:00
Justin Santa Barbara cb8ea7e043 Use repeated flags for log-opt to docker
Also add tests for the expected format
2017-03-28 00:53:31 -04:00
Justin Santa Barbara b9204e9911 Initial Container-Optimized OS support
Add initial support for google's container-optimized OS (available on
GCE).
2017-03-20 23:47:37 -04:00
Justin Santa Barbara 1bacf8271e Initial (experimental) CoreOS support
* Detect CoreOS
* Move key manifests to code, to tolerate read-only mounts
* Misc refactorings so more code can be shared
* Change lots of ints to int32s in the models
* Run nodeup as a oneshot systemd service, rather than relying on
cloud-init behaviour which varies across distros
2017-02-11 13:57:30 -03:00
Justin Santa Barbara a909f38b9c Merge pull request #1790 from justinsb/k8s_version_per_kops_version
Recommend a k8s version based on each kops version
2017-02-06 20:13:57 -05:00
Justin Santa Barbara 2d37ab1ca5 Recommend a k8s version based on each kops version
So the flow is that we recommend (or strongly recommend) a new kops
version when one is required for a new version, and then the new kops
version will recommend (or strongly recommend) a new k8s version.

We don't have a notion of multiple recommended k8s versions per kops
version - that is what channels are for.

Users are always free to disregard updates, even "required" ones by
setting a flag.
2017-02-06 01:06:03 -05:00
Justin Santa Barbara 46a770bf43 Don't set docker.socket on RHEL
For Docker >= 1.12

Fix #1781
2017-02-05 23:50:56 -05:00