Commit Graph

425 Commits

Author SHA1 Message Date
Ciprian Hacman 99bec7e9a0 Use containerd 1.2.13 with Docker 19.03.8 2020-03-16 08:03:35 +02:00
Kubernetes Prow Robot e7846fd0db
Merge pull request #8402 from rdrgmnzs/etcd-setting-overwrite
Allow users to overwrite etcd settings.
2020-03-15 11:34:35 -07:00
Ciprian Hacman 3310885064 Update Docker to 19.03.8 for 1.18 2020-03-15 12:31:26 +02:00
Kubernetes Prow Robot 0a6dcce580
Merge pull request #8525 from hakman/docker-tgz
Update support for docker tgz package
2020-03-14 16:40:35 -07:00
Rodrigo Menezes 7e16cad334 Add test and rebase 2020-03-12 10:54:16 -07:00
Rodrigo Menezes 5901ba05fc updated to use #8455 2020-03-12 10:25:52 -07:00
Rodrigo Menezes 301463577e Allow users to overwrite etcd settings.
Fix typo

fix env vars config  ordering
2020-03-12 10:25:52 -07:00
tanjunchen b8020aa8fc remove // TODO path.Join here? 2020-03-09 14:13:22 +08:00
tanjunchen b6fd377af8 remove // TODO path.Join here? 2020-03-09 14:01:47 +08:00
Justin SB 280d8d7729
Update etcd-manager to 3.0.20200307
Changelog:

* Allow overwriting etcd configs with env variables  [#296](https://github.com/kopeio/etcd-manager/pull/296)
* Update kops dependency to v1.16.0 [#302](https://github.com/kopeio/etcd-manager/pull/302)
2020-03-07 18:55:15 -05:00
Ciprian Hacman a57aba01bf Update support for docker tgz package 2020-03-07 08:20:39 +02:00
Shukun c907df426a Resolve TODO in /pkg/model/component/context.go 2020-02-17 17:52:22 +09:00
Ciprian Hacman 7048755c0e Add support for containerd v1.3.3 2020-02-07 08:01:09 +02:00
Kubernetes Prow Robot 044196ac94
Merge pull request #8016 from bittopaz/ali-patch-6
Alicloud: etcd-manager support
2020-01-28 22:52:14 -08:00
Ciprian Hacman 5f930683ed Update support for Amazon Linux 2 2020-01-28 08:13:45 +02:00
mmerrill3 751ce5d19f Bump etcd-manager to 3.0.20200116 (#8310)
Signed-off-by: mmerrill3 <michael.merrill@vonage.com>
2020-01-23 11:09:14 -05:00
Kubernetes Prow Robot 77d6d381c3
Merge pull request #8327 from johngmyers/remove-code
Remove code for unsupported Kubernetes versions
2020-01-15 14:54:22 -08:00
John Gardiner Myers 83bdb3ef88 Remove code for unsupported k8s versions from pkg/model/components 2020-01-12 16:05:00 -08:00
Justin SB 4fe3db7faa
Don't share /etc/hosts when using etcd-manager
With etcd-manager the DNS names should only be used by the
etcd-manager pod itself, so we don't need to share /etc/hosts with the
host.

By not sharing we avoid:

(1) the temptation to address etcd directly
(2) problems of concurrent updates to /etc/hosts being hard from within a container (because locking is difficult across bind mounts)

Introducing with kubernetes 1.17 to avoid changing behavior of existing versions.
2020-01-12 11:56:14 -05:00
Ciprian Hacman 0781afdce7 Set a default version for containerd even with Kubernetes 1.17 2020-01-06 22:04:29 +02:00
tanjunchen 7e25f9831d nodeup/pkg/ pkg/ staticcheck 2019-12-31 15:03:39 +08:00
tanjunchen 8acb51e061 pkg/apis/ pkg/commands/ pkg/model/ staticcheck 2019-12-30 21:13:40 +08:00
Kubernetes Prow Robot adf659370c
Merge pull request #8170 from hakman/coninerd-add-1.2.4
containerd: Use containerd 1.2.4 with Docker 18.09.3
2019-12-27 09:29:38 -08:00
Kubernetes Prow Robot dd608e879b
Merge pull request #7770 from mitch000001/external-cloud-controller-feature-flag
Guard External cloud controller manager with its feature flag
2019-12-26 14:03:38 -08:00
Ciprian Hacman 760c7b06b4 Use containerd 1.2.4 with Docker 18.09.3 2019-12-23 19:26:38 +02:00
Ciprian Hacman f1ffd9a7f6 Rename config option contained.configFile to containerd.configOverride 2019-12-16 00:59:26 +02:00
Ciprian Hacman 92cd1842c6 Add support for containerd container runtime - generated 2019-12-15 21:37:57 +02:00
Ciprian Hacman 1a4d8bf49c Add support for containerd container runtime - tests 2019-12-15 21:37:57 +02:00
Ciprian Hacman 42b73b877d Add support for containerd container runtime 2019-12-15 21:37:57 +02:00
Kubernetes Prow Robot 11cec04bab
Merge pull request #7792 from tanjunchen/remove-some-unused-code
remove unused functions and simplify return str
2019-12-09 21:15:28 -08:00
Xiaoyu Zhong d81566482b Alicloud: etcd-manager support 2019-11-28 10:00:08 +08:00
陈谭军 e197b32b0e
Merge branch 'master' into remove-some-unused-code 2019-11-13 09:50:30 +08:00
Ciprian Hacman 3e07810e0b Update Docker version defaults 2019-11-09 07:11:52 +02:00
Justin SB 9108b69798
Update etcd-manager to 3.0.20191025
Primarily for DigitalOcean support

Changes:

* fix issues in pr#253
* Update rules-docker to 0.12
* [DO-7442] Fix logic for Digital Ocean volume tag
* Update release process to use shipbot
* Move to go modules
* Update golang to 1.13.3
* travis: Test newer bazel versions
* Fix unit tests
* Test everything, not just //test
2019-10-25 09:47:22 -04:00
Xiaoyu Zhong 002ddbb270 Alicloud: add hostname override 2019-10-16 21:53:40 +08:00
tanjunchen fa6d0130c8 remove unused functions and simplify return str 2019-10-15 23:54:10 +08:00
Justin SB b6862103bb
Change default port for memberlist from 3997
We had a port collision on 3997; change the default memberlist ports
to avoid the collision (we haven't shipped a release with this in it).

Also create a go file so that we can use constants to keep track of
our port numbers, rather than magic values.
2019-10-14 07:26:27 -04:00
Kubernetes Prow Robot 211d272f80
Merge pull request #7760 from tanjunchen/fix-up-unnecessary-newline
remove the unnecessary newline and unused vars
2019-10-13 09:18:36 -07:00
Michael Wagner bfe9b21213 fix(external-ccm): prevent core components to be misconfigured
Previously when setting the external cloud controller manager
configuration the core components `kubelet`, `apiserver` and
`kubecontroller-manager` were configured to use the external cloud
controller manager. Without setting the feature flag
EnableExternalCloudController this lead to a cluster in which the
masters had the cloud controller taint
`node.cloudprovider.kubernetes.io/uninitialized` which prevents
essential pods, like dns-controller to not be scheduled and leaves a
cluster where worker nodes can't connect to the api server because they
cannot resolve its hostname.
2019-10-10 21:38:50 +02:00
tanjunchen 279c429abd remove the unnecessary newline and unused vars 2019-10-08 22:43:10 +08:00
tanjunchen 28fdb358f8 fix-up staticcheck error 2019-10-08 13:53:04 +08:00
Kubernetes Prow Robot 5700b98bc2
Merge pull request #7713 from justinsb/update_etcd_manager_backup
Update etcd-manager backup image
2019-09-30 12:45:01 -07:00
Kubernetes Prow Robot bbe979f56e
Merge pull request #7710 from justinsb/update_etcd_manager
Update etcd-manager with OpenStack fixes
2019-09-30 12:44:53 -07:00
Justin SB 025fd44827
Update etcd-manager backup image
Should be no changes in the backup image (so no need to backport), but
just want to sync up the versions so I don't forget it again!
2019-09-30 13:40:24 -04:00
Justin SB e1be7aeba1
Update etcd-manager with OpenStack fixes
etcd-manager changes:

* Use disk by id for mounting devices in OpenStack [zetaab](https://github.com/zetaab) [#253](https://github.com/kopeio/etcd-manager/pull/253)
2019-09-30 13:15:27 -04:00
Jesse Haka 4ccad007ce mountcerts -> usehostcerts 2019-09-30 11:36:32 +03:00
Jesse Haka 352bc1eaa2 Allow to use custom rootCAs 2019-09-30 11:35:58 +03:00
Peter Rifel 1f4e9510f8 Remove unnecssary Sprintf 2019-09-27 12:51:19 -07:00
Justin SB 71fed5e6ff
Fix for tarball image names after 1.16
Image names from 1.16 on include an architecture suffix,
e.g. "-amd64"; the generic alias continues to work when pulling, but
when loading from a tarball (i.e. running in CI) we must use the
per-architecture name.
2019-09-26 10:20:54 -04:00
Kubernetes Prow Robot 070498ba2d
Merge pull request #7566 from srikiz/DO-7442-AddTagsForCreateVolumeRequest
[DO-7442] Digital Ocean add consistent volume and droplet tags for multi master feature
2019-09-16 08:22:38 -07:00
Srikanth 88850e2151 Additional review comments addressed, also reverted back to Replace instead of ReplaceAll 2019-09-12 15:31:55 +05:30
Srikanth a5cda6643c Address review comments 2019-09-12 10:38:48 +05:30
Srikanth 84da7d00ef Add tags for droplets and volumes 2019-09-12 00:27:12 +05:30
mikesplain 9e55b8230a Update copyright notices
Also cleans some white spaces
2019-09-09 14:47:51 -04:00
Justin SB 3fbc906cbc
Create env-var helper function
Refactor to start to centralize the env-var configuration for system
components, also start to add test coverage so we can be sure we
haven't broken things!
2019-09-02 10:26:09 -07:00
Kubernetes Prow Robot 195297eb0e
Merge pull request #7435 from srikiz/DO-7148-EtcdManagerUpdates
[DO-7148] Digital Ocean support for etcd-manager
2019-08-25 12:48:20 -07:00
Srikanth 704d32a87f Go Fmt code 2019-08-20 07:18:30 +05:30
Srikanth e4f4767ed9 Update documentation to remove the override flag 2019-08-19 23:46:09 +05:30
Srikanth 706c0e3777 Update model.go after rebase with master 2019-08-19 23:26:13 +05:30
Srikanth 2bfd3ff356 Update to use the latest etcdmanager image 2019-08-19 23:11:26 +05:30
Srikanth 6f71e27229 Update to etcdManager model to pass DO specific environment variables 2019-08-19 23:10:32 +05:30
Peter Rifel 3d8f57fa24 Dont set CriticalPodAnnotation feature gate in k8s 1.16
The E2E tests are currently failing [0] due to this kubelet error [1]:

`F0818 22:43:57.642896    6424 server.go:179] unrecognized feature gate: ExperimentalCriticalPodAnnotation`

This feature gate was removed in Kubernetes 1.16 [2]

[0] https://testgrid.k8s.io/sig-cluster-lifecycle-kops#kops-aws-1.14
[1] https://storage.googleapis.com/kubernetes-jenkins/logs/ci-kubernetes-e2e-kops-aws-beta/1163216201782923264/artifacts/52.77.251.45/kubelet.log
[2] https://github.com/kubernetes/kubernetes/pull/80342
2019-08-18 19:53:15 -04:00
Jesse Haka 1adaf0ccea update etcd-manager to 3.0.20190816 2019-08-16 16:54:37 +03:00
Jesse Haka 0b9a5fe2c9 add openstack env values for swift 2019-08-13 16:48:59 +03:00
Jesse Haka 0a1d85639d add env variables 2019-08-13 16:48:59 +03:00
Jesse Haka a7fc695ce2 add OpenStack etcd-manager support 2019-08-13 16:48:53 +03:00
Justin SB 62e8ebff8f
Bump etcd-manager to 3.0.20190801
Relnotes are at https://github.com/kopeio/etcd-manager/blob/master/docs/relnotes/3.0.20190801.md

Highlights:

* etcd-manager-ctl is now available in the image, and for download from github
* etcd 3.3.13 is included
* etcd-manager will now run a compatible version of etcd if it is available (for example, etcd 3.3.13 instead of 3.3.11), to better import backups or support migration
* listen-metrics-urls can now be specified and will be passed through to etcd
* improved docs around internals
2019-08-01 01:56:48 -04:00
Kubernetes Prow Robot 1d79cbf928
Merge pull request #7340 from justinsb/check_etcd_version
Warn/prevent if the version of etcd is unsupported with etcd-manager
2019-07-29 18:48:50 -07:00
Justin SB 1795d2586d
Default etcd-version to 3.3.10 for >= 1.14
This is the current recommended etcd version for 1.14 / 1.15
2019-07-29 18:29:05 -04:00
Justin SB 72b4563729
Warn/prevent if the version of etcd is unsupported with etcd-manager
Should prevent the scenario where etcd-manager can't come up because of a different version.

Can be bypassed with the SkipEtcdVersionCheck feature flag.
2019-07-29 18:28:15 -04:00
Kubernetes Prow Robot cdd3496c8a
Merge pull request #6229 from justinsb/gce_ipalias
GCE: support ipalias networking mode, named "gce"
2019-07-22 06:26:51 -07:00
Kubernetes Prow Robot 039cee170f
Merge pull request #7221 from srikiz/DO-7148-legacyetcdSupport
[Issue-7148] Legacyetcd support for Digital Ocean
2019-07-19 09:55:15 -07:00
Justin SB 62f7c26f98
Support "gce" networking mode, which uses ip aliases 2019-07-19 07:54:13 -04:00
Srikanth 63927250ba Initial changes to add DO models for etcd-manager
update template

Update notes for digital ocean

Update TTL to 60 seconds and version upgrade to 0.1.15 for DO Cloud Controller Manager

Update review comments

Format go code
2019-07-17 20:08:04 +05:30
Kubernetes Prow Robot dd6b0314fc
Merge pull request #6897 from vainu-arto/set-priority-for-static-pods
Set priority for static pods
2019-07-12 00:41:07 -07:00
Kashif Saadat 2b61ace49c goimports update 2019-07-03 16:43:20 +01:00
Austin Moore 00ad7316a4
Read egressProxy spec into etcdmanager 2019-06-05 15:59:19 -04:00
Jesse Haka 4cad3676a7 implement append admission controllers 2019-05-26 12:38:16 +03:00
Justin SB b29426e2b4
etcd-manager: update to 3.0.20190516
Main fixes:

https://github.com/kopeio/etcd-manager/pull/208

https://github.com/kopeio/etcd-manager/pull/209

https://github.com/kopeio/etcd-manager/pull/210
2019-05-16 11:18:13 -07:00
Justin SB 7b858f7cfa
etcd-manager: Update to 3.0.20190513
In particular, we are picking up the fix for #6098.
2019-05-13 17:59:06 -07:00
Justin SB 8809b5aeaf
Update to etcd-manager 3.0.20190509
Includes the fixes for concurrent file writes
2019-05-09 22:58:32 -04:00
Arto Jantunen 238fdaf1c1 Give etcd pods system-cluster-critical priority
Again unlikely to matter since master nodes aren't expected to run out of
capacity, done mostly for completeness (all pods should usually have a
priority defined if the cluster is running with PodPriority enabled).
2019-05-09 16:03:08 +03:00
Justin SB ba9a4afc43
apigroup -> kops.k8s.io: Tests & supporting changes
Autogenerated code, docs & test changes

Also a new test for the older "kops" apiGroup, to make sure that
continues to work.
2019-05-06 22:26:29 -04:00
Justin SB 76d03b3f71
Generated files: glog -> klog 2019-05-06 12:56:03 -04:00
Justin SB 3e33ac7682
Change code from glog to klog
We don't call klog.InitFlags yet, because that will cause a flag
redefinition error until we get everyone to stop using glog.  That
will happen when we update to k8s 1.13.
2019-05-06 12:54:51 -04:00
Ryan Bonham 189ccfe919 Fix spelling error. 2019-04-02 10:50:58 -05:00
Ryan Bonham 73845e200d Fix handling of nil and set correct defaults for memory. 2019-04-02 10:38:12 -05:00
Ryan Bonham 88a2a3f11f Cleanup changes to kubedns 2019-04-01 14:04:28 -05:00
Ryan Bonham 1fe925e01f Update BUILD.bazel 2019-04-01 13:51:56 -05:00
Ryan Bonham 9d36a0ab13 Add missing dep. 2019-04-01 08:49:46 -05:00
Ryan Bonham 2fc67b4678 Add DNS Resource Settings 2019-04-01 08:09:29 -05:00
Justin Santa Barbara 4999f95c26 Update etcd-manager to 1.0.20190328
Significant changes:

* Support adoption of tls-enabled etcd databases (i.e. migration from
  legacy to etcd-manager when using https)
2019-03-28 07:23:18 -04:00
Justin SB 29445998e7
Bump etcd-manager / etcd-backup to 3.0.20190325
Picking up kopeio/etcd-manager#192, for #6562
2019-03-25 13:01:50 -04:00
Kubernetes Prow Robot 9ecabb9159
Merge pull request #6628 from AliyunContainerService/flags
add ALI flags
2019-03-25 09:23:09 -07:00
Lily e4cbd3c17c add ALI flags 2019-03-16 17:26:44 +08:00
Justin SB 31f408c978
Support etcd-manager in kops 1.12
In 1.12 (kops & kubenetes):

* We default etcd-manager on
* We default to etcd3
* We default to full TLS for etcd (client and peer)
* We stop allowing external access to etcd
2019-03-14 23:13:06 -04:00
Kubernetes Prow Robot c2bcefd82f
Merge pull request #6340 from mtaufen/rm-allow-privileged
Stop setting deprecated --allow-privileged Kubelet flag in 1.14
2019-03-05 18:48:03 -08:00
Michael Taufen 798044b720 Stop setting deprecated --allow-privileged Kubelet flag in 1.14 2019-03-04 13:28:41 -08:00
Kashif Saadat 72882ed370 update bazel 2019-03-01 12:31:55 +00:00
Kashif Saadat 34b5b6c3ac Fix panic when using etcd-manager and resource requests are nil 2019-03-01 12:17:54 +00:00
Justin SB 8a22a257f1
Bump etcd-manager version to 3.0.20190224
Includes https://github.com/kopeio/etcd-manager/pull/190, fix for
symlinks as seen on GCE.
2019-02-24 15:15:25 -05:00
Justin SB 8539d54565
Make docker 18.06.3 the default for k8s >= 1.12
Includes the fix for CVE-2019-5736
2019-02-23 17:23:48 -05:00
Eric Greer 89a5fa58a4 removig unecessary package after squashing and patching to current master 2019-02-21 18:12:42 -08:00
Eric Greer 31a4c40131 merge conflict resolution 2019-02-21 15:20:05 -08:00
Eric Greer 8362b1260e etcd memory requests can now be specified 2019-02-21 15:14:51 -08:00
Justin SB aa5024f2c6
Choose docker version 18.06.2 for k8s >= 1.12
Helps us avoid the recent CVE
2019-02-19 21:24:00 -05:00
Justin SB dd7533398d
Support etcd-manager v3, suitable for backporting
Add etcd-manager v3 in a way that we can safely backport.
2019-01-29 23:51:26 -05:00
Derek Lemon -T (delemon - AEROTEK INC at Cisco) c9b5911b1c Openstack gopkg updates 2019-01-19 08:41:15 -07:00
Jordan Liggitt 32f196fd71 Remove Initializers from default admission plugins 2019-01-16 16:49:46 -05:00
Derek Lemon -T (delemon - AEROTEK INC at Cisco) 4f0169bb79 codegen 2019-01-16 09:30:40 -07:00
Kubernetes Prow Robot f5ce011fa0
Merge pull request #6242 from justinsb/bulk_fix_typos
Bulk spelling fixes
2018-12-21 07:45:14 -08:00
Justin SB 26bd75aecb
Bulk spelling fixes
Experimenting with my own spelling checker, these are the typos it caught.
2018-12-20 17:43:56 -05:00
Rodrigo Menezes 2b9243ff8c Getting things ready for when we are ready for 1.12 2018-12-04 18:50:17 -08:00
Chris Phillips 2b9a56f8e6 rename to LyftVPC. Removes all the settings from the NetworkingSpec 2018-11-07 08:08:44 -08:00
Chris Phillips 3a8078763a Adds support for Lyft's cni-ipvlan-vpc-k8s
https://github.com/lyft/cni-ipvlan-vpc-k8s

This cni solution is slightly different in that it doesn't require running a daemonset

It requires:
  * a config file in /etc/cni/net.d
  * the binaries in /opt/cni/bin
  * adding the --node-ip param to the kubelet

This code is modeled after the AmazonVPC cni bits.

I've left the setup of the required subnets as an exercise to the reader.
2018-11-07 08:08:13 -08:00
Justin SB 4b3e66b347
Use hostPID: true with etcd-manager
Addresses issues with mounting inside a container with systemd
("Failed to add PIDs to scope's control group: Invalid argument")
2018-10-18 20:20:11 -07:00
k8s-ci-robot c81a0c64c5
Merge pull request #5868 from gambol99/fix_up_client
Node Authorizer Fixes
2018-10-03 06:12:55 -07:00
k8s-ci-robot 9c851ddcda
Merge pull request #5867 from gambol99/node_mode_controllers
Node mode controllers
2018-10-03 06:12:45 -07:00
Rohith aa700961b5 - fixing up the prometheus metrics annotation to indicates a https scheme 2018-10-03 11:39:35 +01:00
Rohith 2ce1df88cc - fixing the logging message, variable were wrong way around 2018-10-03 11:39:35 +01:00
Rohith 97dc2beb71 Node Authorizer Client Fix
- fixing up the client for reboots ... somewhat of a oversight on my part :-)
- added the reason to the node denial message
2018-10-03 11:39:35 +01:00
Rohith cf67cfd030 - enabling the tokencleaner controller when bootstrap tokens are enabled 2018-10-03 11:36:51 +01:00
k8s-ci-robot b3d61542cd
Merge pull request #5820 from justinsb/etcd_manager_channels_step1
etcd: introduce field to specify whether we are using etcd-manager or legacy mode
2018-10-02 14:20:37 -07:00
Justin Santa Barbara 9a9a947f7d Extract default etcd versions as constants 2018-10-02 13:13:11 -07:00
Justin Santa Barbara 54c499fe9b Introduce field to specify whether we are using etcd-manager or legacy mode
Splitting this out from the bigger bundle PR
2018-10-01 15:36:24 -07:00
Rohith 8401273b06 - fixing the reference to the import, goimports made an error
- updating the version of the node-authorizer manifest
2018-09-27 10:21:10 +01:00
Rohith 26942eb601 - updating to the fix rollout image for node authorizer 2018-09-27 09:59:23 +01:00
Justin Santa Barbara 7cf432fcba Add test for etcd-manager output
We need to get this under test coverage so we can start changing it confidently!
2018-09-14 08:46:32 -04:00
andrewsykim 6dc9f01a41 add kube-proxy hostname override 2018-08-16 23:26:37 -04:00
Justin Santa Barbara b208bd44b3 Create ExperimentalClusterDNS feature flag
This currently just turns off validation of the kubelet cluster dns
flag, which should allow for experimenting with more complicated DNS
configurations such as local proxies, which may address shortcomings
of DNS retries with UDP.

Issue #5584
2018-08-14 14:59:20 -04:00
Spike Curtis 1540f906d2 Don't set kube-proxy cluster-cidr with aws-vpc-cni
Signed-off-by: Spike Curtis <spike@tigera.io>
2018-08-03 15:48:14 -07:00
k8s-ci-robot 56ccfac26d
Merge pull request #5317 from gambol99/node_registration
Node Authorization Service
2018-07-19 05:17:41 -07:00
Rohith 92115b2341 - dropping the specific flags and using a genenic --feature gate model for the authorizers, meaning i don't need to come back to the API whenever we want to make changes 2018-07-06 20:15:18 +01:00
Rohith ce55c257eb - making the node-authorizer image default v0.0.1 (with sha) or use an environment variable override 2018-07-06 20:14:35 +01:00
Rohith fd6cef8180 Requested Changes
- switching to using code rather than a template for the systemd unit creation as requested in review
- as part of the review, changing the name of the ca from tls-ca to tls-client-ca
- changing the api from DisableAddressCheck to EnableAddressCheck and defaulting to true if no set
- fixing up the test for node-authorizer and shifting the parsing of the certificates as suggested in reviews to a method
2018-07-06 20:14:35 +01:00
Rohith 304d0ce8a9 - consuming the node authorization api spec in nodeup binary
- adding the options builder to fill in the model
- adding the spec into the bootstrap config
2018-07-06 20:14:35 +01:00
Mike Splain 48c9f3d7c9 Fixes issue when setting docker version
Previously when setting docker version, logdriver was automatically
added to cluster config. Switching it to a pointer fixes this issue.

Fixes #5384
2018-07-06 11:29:11 -04:00
k8s-ci-robot 019ecdecae
Merge pull request #5335 from justinsb/gce_etcd_manager
etcd-manager: GCE support
2018-06-20 08:45:08 -07:00
Justin Santa Barbara 5120b913a5 Initial work for etcd-manager on GCE 2018-06-14 17:50:07 -04:00
Justin Santa Barbara 553e519a56 Set log-verbosity for etcd-manager 2018-06-14 17:40:06 -04:00
Rohith d2bae64dd1 - adding the enable-bootstrap-token-auth to the kubeapi and fixing up the various compoents 2018-06-11 09:57:26 +01:00
Rohith 2d5bd2cfd9 - update the IAM policy to ensure the kubelet permision is skipped
- update the PKI to ensure on new clusters the certificate it not created
2018-06-11 09:57:26 +01:00
Rohith 4531384649 This PR attempts to solve two issues
a) The current implementation use's a static kubelet which doesn't not conform to the Node authorization mode (i.e. system:nodes:<nodename>)
b) As present the kubeconfig is static and reused across all the masters and nodes

The PR firstly introduces the ability for users to use bootstrap tokens and secondly when enabled ensure the kubelets for the masters as have unique usernames.  Note, this PR does not attempt to address the distribution of the bootstrap tokens themselves, that's for cluster admins. One solution for this would be a daemonset on the masters running on hostNetwork and reuse dns-controller to annotated the pods and give as the DNS

Notes:
- the master node do not use bootstrap tokens, instead given they have access to the ca anyhow, we generate certificates for each.
- when bootstrap token is not enabled the behaviour will stay the same; i.e. a kubelet configuration brought down from the store.
- when bootstrap tokens are enabled, the Nodes sit in a timeout loop waiting for the configuration to appear (by third party).
- given the nodeup docker and manifests builders are executed before the kubelet builder, the assumption here is a unit file kicks of a custom container to bootstrap the rest.
- the current firewalls on between the master and nodes are fairly open so no need to open ports between the two
- much of the work was ported from @justinsb PR [here](https://github.com/kubernetes/kops/pull/4134/)
- we add a very presumptuous server and client certificates for use with an authorizer (node-bootstrap-internal.dns_zone)

I do have an additional PR which performs the entire thing. The process being a node_authorizer which runs on the master nodes via a daemonset, the service implements a series of authorizers (i.e. alwaysallow, aws, gce etc). For aws, the process is similar to how vault authorizes nodes [here](https://www.vaultproject.io/docs/auth/aws.html). Nodeup no then calls out to the node_authorizer on bootstrap and provisions the kubelet.
2018-06-11 09:56:32 +01:00
k8s-ci-robot aef1afbc02
Merge pull request #4724 from gambol99/custom_kube_dns
Customize KubeDNS
2018-06-10 18:52:01 -07:00
Andrew Sy Kim 5004652505
Revert "digitalocean: don't set --cloud-provider=external on control plane starting v1.10" 2018-06-08 11:41:07 -04:00
Justin Santa Barbara 2b4888a596 Delay overlay2 to 1.11
Gives us more time to consider image support.
2018-06-07 17:11:19 -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
Tomas Virgl 874e2a514f Override hostname with '@aws' only if hostname override is not specified. 2018-06-06 13:54:19 -07:00
Rohith 67296c2db9 - fixing up the spelling mistakes found 2018-06-06 10:03:51 +01:00
Justin Santa Barbara 53bf6ea6ad Replace deprecated flags: address -> insecure-bind-address 2018-05-31 23:23:33 -04:00
Ripta Pasay dfa4190cb5 Add --enable-admission-plugins API server flag, deprecating --admission-control in v1.10 2018-05-29 16:42:23 -07:00
k8s-ci-robot ad60dbd63d
Merge pull request #5178 from dims/patch-1
Add a FIXME and don't log about insecure ports
2018-05-26 14:22:41 -07:00
k8s-ci-robot e323fa918f
Merge pull request #5126 from justinsb/optional_etcd_manager
Support (optional) etcd-manager
2018-05-25 15:45:32 -07:00
Justin Santa Barbara ba87c36f73 Support (optional) etcd-manager 2018-05-25 16:01:22 -04:00
Davanum Srinivas 3e075fcab5
Add a FIXME and don't log about insecure ports
Thanks to @craigtracey for spotting this.
2018-05-25 09:35:06 -07:00
Rohith de977e627e Customize KubeDNS
This PR adds the ability for users to customize the kubedns upstream nameservers and provider stubdomains, as per [here](https://kubernetes.io/docs/tasks/administer-cluster/dns-custom-nameservers/)
2018-05-13 17:08:56 +01:00
andrewsykim 2b325be8cf digitalocean: don't set --cloud-provider=external on control plane starting v1.10 2018-04-16 18:19:38 -04:00
James McMinn 458f59d5d8 Add dnsmasq parameteres to kubeDNS config 2018-04-06 09:09:54 +10:00
andrewsykim 54bee09f47 digitalocean: add kubelet hostname override 2018-04-03 01:16:50 -04:00
k8s-ci-robot fc1bed4353
Merge pull request #4224 from nebril/cilium-support
Add Cilium as CNI plugin
2018-03-26 07:49:02 -07:00
Justin Santa Barbara 2bccf880d2 etcd-quorum-read flag: explicitly default to off for v2
Kubernetes 1.9 changed the default for etcd-quorum-read flag value to
true, in the hope of fixing some of the edge-case controller issues.

However, while this is cheap on etcd3, that fix was not backported to
etcd2, and performance there of quorum reads is poor.

For non-HA clusters with etcd2, it still goes through raft, but does not
need to - we set etcd-quorum-read to false, as this is just a missed
optimization in etcd2.

For HA clusters with etcd2, it's trickier, but at least for now we're
going to avoid the (crippling) performance regression.  kops 1.10 should
have etcd-manager (allowing upgrades to etcd3), and the ability to
configure IOPS on the etcd volume, so we can revisit this in 1.10 /
1.11.
2018-03-25 19:08:05 -04:00
Maciej Kwiek ed67c013f5 Validate etcd and k8s version for Cilium
Signed-off-by: Maciej Kwiek <maciej@covalent.io>
2018-03-20 13:08:39 +01:00
Maciej Kwiek bca52dede9 Add Cilium as CNI plugin
Signed-off-by: Maciej Kwiek <maciej@covalent.io>
2018-03-20 13:07:26 +01:00
Justin Santa Barbara b2fa0bfa09
Merge pull request #4443 from zacblazic/update-default-docker-in-k8s-1.8
Set the default docker for kubernetes 1.9 to 17.03.2
2018-02-28 00:23:18 -05:00
k8s-ci-robot 0ab8b57c2a
Merge pull request #4493 from justinsb/vfs_streaming
VFS: WriteFile takes an io.ReadSeeker
2018-02-26 15:50:45 -08:00
Zac Blazic 935251413c
Set the default docker for kubernetes 1.9 to 17.03.02
As 17.03.2 has been validated for 1.8 and 1.9.
2018-02-26 19:11:18 +02:00
Zac Blazic 2518b3b656
Revert default docker version for kubernetes 1.8 back to 1.13.1 2018-02-26 19:10:23 +02:00
Mike Splain 45a57915e2 Fix bazel deprecation notice 2018-02-26 09:36:13 -05:00
Justin Santa Barbara 412cf377c2 VFS: WriteFile takes an io.ReadSeeker
Means we don't have to buffer big files in memory, in combination with
WriteTo for reading.
2018-02-26 09:09:17 -05:00
chrislovecnm fe790df0ce fixing bazel files to pass CI 2018-02-23 17:36:43 -07:00
Justin Santa Barbara c74f956697 Add test for image name remap 2018-02-22 21:42:41 -08:00
Justin Santa Barbara b68f58d746 Change NewAssetBuilder to take a kops.Cluseter 2018-02-22 21:42:40 -08:00
Justin Santa Barbara dde7600dae Initial support for standalone etcd-manager backups
The etcd-manager will (ideally) take over etcd management.  To provide a
nice migration path, and because we want etcd backups, we're creating a
standalone image that just backs up etcd in the etcd-manager format.

This isn't really ready for actual usage, but should be harmless because
it runs as a sidecar container.
2018-02-20 20:06:08 -05:00
Tim Hockin 79d5f793e7 Convert registry to k8s.gcr.io 2018-02-14 10:08:41 -08:00
Zac Blazic 32a7f770b8
Set the default docker for kubernetes 1.8 to 17.03.02
Since 17.03.2 has been validated for 1.8 and GKE are now using
it in their COS images, I think it's a better default than 1.13.1.
2018-02-14 18:34:01 +02:00
zhangxiaoyu-zidif 30b10cb1c8 modify check require-kubeconfig 2018-01-30 17:53:16 +08:00
k8s-ci-robot cbf16fd6e2
Merge pull request #4245 from ottoyiu/etcd-override
Allow image override for etcd
2018-01-26 10:11:33 -08:00
k8s-ci-robot b68ff3893f
Merge pull request #4308 from justinsb/stop_specifying_require_kubeconfig
Don't specify require-kubeconfig from 1.10
2018-01-23 15:44:01 -08:00
Justin Santa Barbara 4dccf6d56d Don't specify require-kubeconfig from 1.10
Should fix https://github.com/kubernetes/kubernetes/pull/58367
2018-01-20 17:57:58 -05:00
Blake e37be9a88c Update list of AdmissionControllers for k8s 1.9 2018-01-18 13:40:23 -08:00
Otto Yiu 2b12b59d75 add ability to override etcd image and update apimachinery generated files from EtcdClusterSpec changes 2018-01-10 13:39:07 -08:00
chrislovecnm 4dd3bb1dea Updating bazel BUILD files with new go_rules version 2017-12-29 15:03:14 -07:00
Kubernetes Submit Queue 15c7d61dfb
Merge pull request #3997 from aledbf/amazon-vpc-cni
Automatic merge from submit-queue.

Add support for Amazon VPC CNI plugin

TODO:
- [x] IAM perms so that the CNI provider only has perms for the nodes in the cluster
- [x] Cleanup of security groups
- [ ] Replace image aledbf/k8s-ec2-srcdst:v0.1.0-5 with the official after https://github.com/ottoyiu/k8s-ec2-srcdst/pull/5 and https://github.com/ottoyiu/k8s-ec2-srcdst/pull/6
2017-12-17 21:41:13 -08:00
chrislovecnm 7057aaf1bb Enabling the file assets
File assets and the SHA files are uploaded to the new location. Files
when are users uses s3 are upload public read only. The copyfile task
uses only the existing SHA value.

This PR include major refactoring of the use of URLs.  Strings are no
longer categnated, but converted into a URL struct and path.Join is
utlilized.

A new values.go file is included so that we can start refactoring more
code out of the "fi" package.

A
2017-12-17 15:26:57 -07:00
Manuel de Brito Fontes 2e05dd17aa Add support for Amazon VPC CNI plugin 2017-12-17 18:08:24 -03:00
Kubernetes Submit Queue ac7ae3fd58
Merge pull request #3809 from rdrgmnzs/hostnameOverride_use_hostname
Automatic merge from submit-queue.

Let a user set a hostnameOverride when the cloud provider is aws.

Let a user use the hostname or set a hostnameOverride when the cloud provider is aws. This would allow for a more descriptive name to be used. The name of the hosts when using @hostname can be set by using a hook or some other method.
2017-12-13 17:46:21 -08:00
zengchen1024 f9c98c3b4c add openstack cloud provider 2017-11-13 16:59:24 +08:00
Rodrigo Menezes 255305b8ef Let a user use the hostname or set a hostnameOverride when the cloud provider is aws 2017-11-08 23:59:21 -08:00
chrislovecnm 609e268a1d gazelle updates with new bazel version 2017-11-05 17:41:53 -07:00
chrislovecnm 9647b1d349 deprecated API values that are no longer used with kube-dns 2017-11-04 22:15:48 -06:00
chrislovecnm 1e418c3e13 more goimport updates 2017-11-04 10:03:02 -06:00
chrislovecnm 8d1ee1fa16 updating files for goimports 2017-11-01 12:51:43 -06:00
Manatsawin Hanmongkolchai a708919bf4 Generate scheduler policy by dynamic cluster addons 2017-10-27 08:56:07 +07:00
chrislovecnm 4de78b0055 setting up etcd to use asset builder for its container 2017-10-26 17:25:50 -06:00
Kubernetes Submit Queue 8df13bd468 Merge pull request #3679 from justinsb/support_api_aggregation
Automatic merge from submit-queue.

Initial aggregation work

Create the keypairs, which are supposed to be signed by a different CA.
    
Set the `--requestheader-...` flags on apiserver.
    
Fix #3152
Fix #2691
2017-10-24 12:08:27 -07:00
Justin Santa Barbara a879521ba3 Initial aggregation support
Create the keypairs, which are supposed to be signed by a different CA.

Set the `--requestheader-...` flags on apiserver.

Fix #3152
Fix #2691
2017-10-22 14:41:38 -04:00
wlan0 d3143ec3cc add Cloud Controller Manager addon 2017-10-19 12:33:44 -07:00
Justin Santa Barbara 19677523c0 Mock kops version in tests
This avoids having to update the tests every time our version changes.
2017-10-10 11:11:57 -04:00
Manatsawin Hanmongkolchai a06fbbac79 Added documentation that PolicyConfigMap should not be used during cluster creation 2017-10-10 09:33:48 +07:00
Manatsawin Hanmongkolchai c00f5ea9a7 Added error when trying to use kube-scheduler policyConfigMap before Kube 1.7.x 2017-10-10 09:10:05 +07:00