Commit Graph

274 Commits

Author SHA1 Message Date
k8s-ci-robot f346efd290
Merge pull request #5240 from nebril/etcd-tls
Add etcd TLS support for Cilium
2018-06-21 09:23:37 -07: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
Maciej Kwiek a72b9e4b38 Generalize CalicoBuilder into EtcdTLSBuilder
Cilium was using the same code as Calico to retrieve etcd certs, new
builder is not Calico-specific.

calico name of certs is retained to ensure backward compatibility

Signed-off-by: Maciej Kwiek <maciej@covalent.io>
2018-06-20 15:25:23 +02:00
k8s-ci-robot cd820a6be9
Merge pull request #5351 from gambol99/remove_unrequired
Removing Duplication
2018-06-20 02:06:06 -07:00
Rohith f4e90e1035 Removing Duplication
- removing the duplication code (i think by me :-)) and reusing the BuildCertificateTaskd and BuildPrivateKeyTask
2018-06-19 23:15:53 +01:00
Rohith 61a3e29b67 Code Clean
- just cleaning up the path concat to use filepath.Join() rather then string formats
2018-06-19 22:33:17 +01:00
Justin Santa Barbara 45eeddb560 protokube: only specify etcd flags when managing etcd
If we're using etcd-manager, we don't need to pass the flags to protokube.
2018-06-14 17:40:51 -04:00
Rohith 516fa2348f File Path fixes
- nothing much here, just fixing up to use filepath.Join rather than strins.Join which is cleaner
2018-06-12 10:22:05 +01:00
Rohith cdfa45d1ca - fixing up the paths to use a strings.Join rather than a fiddly
fmt.Sprintf
2018-06-11 21:30:35 +01:00
Rohith e77000f138 - fixing up the variable name to following a more suitable convention 2018-06-11 21:23:04 +01: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
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
Rohith 67296c2db9 - fixing up the spelling mistakes found 2018-06-06 10:03:51 +01: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
Rohith b62d6df115 Admission Controller Fix
A previous PR https://github.com/kubernetes/kops/pull/5221/ introduced the --enable-admission-plugins for >= 1.10.0 as recommended, it does however cause an issue if you already have AdmissionControl is specified in the Spec as both flags get rendered
2018-06-02 19:46:55 +01:00
Rohith f31f544ff2 File Permissions Private Key
- adjusting the file permissions on the heptio authenticator to 0600
2018-06-01 15:34:37 +01:00
k8s-ci-robot 775b877a10
Merge pull request #5197 from rdrgmnzs/heptio_authenticator
Setup heptio authenticator
2018-06-01 07:12:55 -07:00
Rodrigo Menezes f0476776b1 fix file perms 2018-05-31 21:11:06 -07:00
AdamDang 918d510909
Typo fix: are be->are
are be->are
2018-06-01 08:54:36 +08: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
Rodrigo Menezes 5ce8f9e712 Setup heptio authenticator 2018-05-23 17:48:33 -07:00
Rohith c6c842112e CA Key File Permissions
- locking down the ca.key somewhat by forcing the file permissions to 0600
2018-05-23 21:06:27 +01:00
Cryptophobia c9cf51f5ad Add docker 17.09.0 version for Debian 9 2018-04-19 12:17:07 -04:00
Justin Santa Barbara b1384b3bc0 Only do etcd backups on main
Because our implementation can't actually differentiate settings for
events & main, we only support backup of main for now.
2018-04-10 18:52:08 -04:00
Kashif Saadat 3d1203f0f4 Disable locksmithd on CoreOS if UpdatePolicy set 2018-04-10 13:05:00 +01:00
AdamDang 71d8d23982
Typo fix an->and
Typo fix an->and
2018-04-06 10:13:57 +08:00
andrewsykim 89960aff67 coreos/containeros: restart kops-configuration service after docker drop-in is loaded 2018-04-03 12:47:19 -04:00
andrewsykim 27e8902016 digitalocean: add nodeup support 2018-04-01 10:11:07 -04:00
k8s-ci-robot cebc7017bc
Merge pull request #4760 from louismunro/add_AfterFiles_dependencies
Add AfterFiles dependencies to File tasks
2018-03-30 15:20:03 -07: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
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
k8s-ci-robot 84b75cc7ec
Merge pull request #4744 from locationlabs/ca_bundle_fix
use the primary cert from the ca cert bundle
2018-03-21 19:27:05 -07:00
k8s-ci-robot 8d8e35aeae
Merge pull request #4575 from erks/admin_token_access
add system:masters group to admin user in static token file
2018-03-20 19:21:13 -07:00
Chris Phillips bce2c346c3 use the primary cert from cert bundles
If the ca cert bundle has multiple certs, some things (kube-controller-manager in particular) will fail to startup correctly
2018-03-20 19:20:12 -07:00
Justin Santa Barbara e93d88ecc2 Mount the iptables lock file
We only do this for >= 1.9 so we don't change existing clusters.

Equivalent of https://github.com/kubernetes/kubernetes/pull/46259
2018-03-20 18:07:17 -04: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
Leon Waldman 1fa6bfb612 Fix kubeScheduler.usePolicyConfigMap - missing namespace flag 2018-03-19 19:42:27 -03:00
Justin Santa Barbara 90ac573594 Centos: add selinux package dependencies
Issue #4091
2018-03-18 17:49:45 -04:00
Touch Ungboriboonpisal eddf4ae7a0 make admin user in token auth have the same group (system:masters) as basic auth.
this should fix https://github.com/kubernetes/kops/issues/4369
2018-03-04 16:46:17 -08:00
k8s-ci-robot e634143c43
Merge pull request #4417 from dezmodue/amazon-vpc-cni
Bind the kubelet to the local ipv4 address
2018-03-02 15:22:54 -08:00
Rohith 23f9c63bf3 Kube Proxy IPVS Kernel Module
- fixing the the 'Could not get ipvs family information from the kernel. It is possible that ipvs is not enabled in your kernel. Native loadbalancing will not work until this is fixed.' error
2018-03-02 15:05:22 +00:00
Simone Sciarrati fcd08f1535 add BUILD.bazel 2018-03-01 18:05:15 +01:00
Simone Sciarrati e406dbf501 Bind the kubelet to the local ipv4 address if the cni plugin is AmazonVPC - #4218 2018-03-01 17:47:54 +01:00
Horace Heaven 13244a5ce8 Kube-proxy API to accept cpu: limit, mem: request and limit 2018-02-28 15:26:19 -04:00
k8s-ci-robot 37d4b53d0d
Merge pull request #4010 from gambol99/etcd_options
Etcd TLS Peer & CLient Auth
2018-02-27 22:27:56 -08:00
Mike Splain 45a57915e2 Fix bazel deprecation notice 2018-02-26 09:36:13 -05:00
Rohith a140d5b7f1 - fixing the protokube flag issue 2018-02-24 10:03:43 +00:00