Commit Graph

2884 Commits

Author SHA1 Message Date
Ciprian Hacman 07be801a12 Only add additional policies to kops managed IAMRoles 2020-09-12 08:36:24 +03:00
Kubernetes Prow Robot 69f22a4b52
Merge pull request #9918 from olemarkus/validate-labels
Validate labels
2020-09-11 09:04:15 -07:00
Kubernetes Prow Robot ccd810dad9
Merge pull request #9907 from olemarkus/openstack-no-volume-type
Remove constraint of setting volume type for OS
2020-09-11 01:14:14 -07:00
Ole Markus With 9f5ba43445 Validate labels 2020-09-11 09:59:24 +02:00
Evgeny Zislis 608a561f8c
only apply external policy tasks on non-shared iam 2020-09-10 12:58:54 +03:00
Kubernetes Prow Robot 036ea69525
Merge pull request #9352 from justinsb/irsa_with_public
Simplified form of IAM Roles for ServiceAccounts
2020-09-09 22:23:44 -07:00
Kubernetes Prow Robot 4508406515
Merge pull request #9908 from rdrgmnzs/CacheNodeidentityInfo
Allow caching of Nodeidentity Info in kops-controller for AWS.
2020-09-09 13:01:44 -07:00
Rodrigo Menezes 4c057f138a Allow caching of Nodeidentity Info in kops-controller for AWS to reduce the number of DescribeInstances API calls. 2020-09-09 22:11:29 +03:00
Ole Markus With ecfdf5715b Remove constraint of setting volume type for OS
There is no real reason to do this. In some cases this may even prevent
clusters from starting where there is no explicit volume type defined in
cinder.
2020-09-09 20:53:17 +02:00
Chris Loukas 65610dbcee Update NodeLocalDNSConfig with Mem/CPU requests
Add NodeLocalDNS.CPURequest and NodeLocalDNS.MemoryRequest to
configure resource requests.

If not explicitly set, fall back to 25m and 5Mi
2020-09-09 18:40:14 +03:00
Justin SB 6fa8be2716 JSON formatting of IAM: Workaround for optional fields
AWS IAM is very strict and doesn't support `Resource: []` for example.
We implement a custom MarshalJSON method to work around that.
2020-09-09 09:57:07 -04:00
Justin Santa Barbara d8895c57ec Add version logic to UseServiceAccountIAM
Co-authored-by: John Gardiner Myers <jgmyers@proofpoint.com>
2020-09-09 09:57:07 -04:00
Justin SB a61ecf4c58 Refactor to use interface for iam Subjects
Hat-tip to johngmyers for the idea!
2020-09-09 09:57:07 -04:00
Justin SB f05980f6ba IAM Policy: rely on stub resolution/unification
This avoids the hacky search through the list of tasks.
2020-09-09 09:57:06 -04:00
Justin SB 8498ac9dbb Create PublicJWKS feature flag
This should be much easier to start and to get under testing; it only
works with a load balancer, it sets the apiserver into anonymous-auth
allowed, it grants the anonymous auth user permission to read our jwks
tokens.  But it shouldn't need a second bucket or anything of that
nature.

Co-authored-by: John Gardiner Myers <jgmyers@proofpoint.com>
2020-09-09 09:57:06 -04:00
Kubernetes Prow Robot 4604fa53b3
Merge pull request #9899 from olemarkus/remove-insecure-bind-address
Don't explicitly set insecure-bind-address on newer k8s
2020-09-09 03:25:53 -07:00
Ole Markus With 886b4c97cb Don't explicitly set insecure-bind-address on newer k8s 2020-09-09 11:41:51 +02:00
Kubernetes Prow Robot 766e65c725
Merge pull request #9884 from hakman/mock-1.19.0-alpha.3
Update mock version to 1.19.0-alpha.3
2020-09-08 00:09:43 -07:00
Ciprian Hacman c7bc3d4397 Update mock version to 1.19.0-alpha.3 2020-09-08 08:45:25 +03:00
Barry Melbourne 21fe46ce12 Add kubelet cgroup driver property 2020-09-07 17:11:33 +01:00
Ole Markus With 54ccc92829 Remove unused functions 2020-09-05 20:22:21 +02:00
Ole Markus With 0bd29dd4c7 Remove old servergroup test 2020-09-05 20:22:21 +02:00
Ole Markus With 4a21a532da Add golden tests for openstack servergroup 2020-09-05 20:22:21 +02:00
Ole Markus With 5e7ec64347 Move abs resolution a bit earlier to make it clear where we are looking for golden output 2020-09-05 20:10:43 +02:00
Kubernetes Prow Robot bac4afa3e5
Merge pull request #9871 from olemarkus/cilium-upgrades-sept-2
Bump cilium to 1.8.3
2020-09-05 09:15:41 -07:00
Ole Markus With 3ac61c7ea9 Bump cilium to 1.8.3 2020-09-05 10:47:48 +02:00
Ole Markus With a0e9fab104 Implement cluster autoscaler as bootstrap addon
Use provider-agnostic node definition for cas instead of aws auto-discovery

Validate clusterAutoscalerSpec

Add spec documentation

Add cas docs

Make CRDs

Apply suggestions from code review

Co-authored-by: John Gardiner Myers <jgmyers@proofpoint.com>

Add enabled flag to cas config

Apply suggestions from code review

Co-authored-by: Guy Templeton <guyjtempleton@googlemail.com>

Add support for custom cas image

Support more k8s versions

Use full image names
2020-09-03 09:52:13 +02:00
Justin SB 5d1e7bcf82 Refactor IAM route53 construction
This helps for the JWKS / ServiceAccount role support.
2020-09-01 11:34:42 -04:00
Kubernetes Prow Robot e11146c0df
Merge pull request #9799 from olemarkus/cloudinstances-refactor
Cloudinstances refactor
2020-08-31 23:23:50 -07:00
Ole Markus With 715e46d58e Upgrade cilium versions 2020-08-31 12:01:03 +02:00
Kubernetes Prow Robot 5d09a9a95b
Merge pull request #9667 from justinsb/kubectl_auth_helper
Support authentication helper for kubectl
2020-08-30 21:46:21 -07:00
Kubernetes Prow Robot 56bab9fa4f
Merge pull request #9813 from justinsb/expose_jwks
Expose JWKS via a feature-flag
2020-08-30 21:06:20 -07:00
Ole Markus With 0ec71686b9 Refactor cloudinstancegroupmember in a more independent cloud instance representation
Apply suggestions from code review

Co-authored-by: John Gardiner Myers <jgmyers@proofpoint.com>
2020-08-30 21:37:03 +02:00
Justin SB 8757a2ce2a kubeconfig generation: add tests for kops plugin
Also slightly simplify the tests and Kubecfg Builder signature by
passing in the ConfigAccess only when needed.
2020-08-30 15:17:36 -04:00
Justin SB 0cda0f5068 Support authentication helper for kubectl
We create a simple exec plugin command which can create and renew
short-lived admin credentials on the fly, essentially leveraging the
security of the underlying cloud credentials.

Co-authored-by: John Gardiner Myers <jgmyers@proofpoint.com>
2020-08-30 15:16:20 -04:00
Justin SB 786423f617 Expose JWKS via a feature-flag
When the PublicJWKS feature-flag is set, we expose the apiserver JWKS
document publicly (including enabling anonymous access).  This is a
stepping stone to a more hardened configuration where we copy the JWKS
document to S3/GCS/etc.

Co-authored-by: John Gardiner Myers <jgmyers@proofpoint.com>
2020-08-30 10:15:11 -04:00
Justin SB c63ce4b5ab Implement setter by reflection
This means we no longer have to individually hard-code the `kops set`
fields, however we use the "language" we're now demonstrated.

We add tests to ensure we have parity with our existing (hard-coded)
setter logic.
2020-08-30 09:59:52 -04:00
Kubernetes Prow Robot e6b8c82d88
Merge pull request #9838 from etwillbefine/api-server-cors
add support for cors-allowed-origins
2020-08-29 16:54:21 -07:00
etwillbefine 2b0970376e use list of strings for CORS 2020-08-29 22:11:24 +02:00
etwillbefine 1b6ee2c7e8 add support for cors-allowed-origins
closes https://github.com/kubernetes/kops/issues/2045

correct typo in flag attribute

run code-gen, correct field description
2020-08-29 19:14:39 +02:00
Justin Santa Barbara f32fcc35fa Addons: Support arbitrary additional objects
We will be managing cluster addons using CRDs, and so we want to be
able to apply arbitrary objects as part of cluster bringup.

Start by allowing (behind a feature-flag) for arbitrary objects to be
specified.

Co-authored-by: John Gardiner Myers <jgmyers@proofpoint.com>
2020-08-28 09:03:41 -04:00
Ole Markus With ff6c04938d Add kops delete instance command
Add support for deleting instance by k8s node name

Add yes flag
2020-08-28 08:43:30 +02:00
Kubernetes Prow Robot e5e8908cce
Merge pull request #9821 from olemarkus/openstack-newer-nova-3
Reconcile ports and floating ips
2020-08-27 07:15:53 -07:00
Kubernetes Prow Robot 3a75ecc864
Merge pull request #9732 from rifelpet/export-kubecfg-internal
Add --internal flag for export kubecfg that targets the internal dns name
2020-08-27 06:01:53 -07:00
Kubernetes Prow Robot 6a33402702
Merge pull request #9820 from olemarkus/managed-sgs
Remove unknown rules from managed security groups on openstack
2020-08-27 03:43:03 -07:00
Peter Rifel d0b8c654bd
Add --internal flag for export kubecfg that targets the internal dns name
Kops creates an "api.internal.$clustername" dns A record that points to the master IP(s)

This adds a flag that will use that name and force the CA cert to be included.
This is a workaround for client certificate authentication not working on API ELBs with ACM certificates.
The ELB has a TLS listener rather than TCP, so the client certificate is not passed through to the apiserver.
Using --internal will bypass the API ELB so that the client certificate will be passed directly to the apiserver.
This also requires that the masters' security groups allow 443 access from the client which this does not handle automatically.
2020-08-26 21:15:18 -05:00
Kubernetes Prow Robot b00f8049b6
Merge pull request #9808 from hakman/kope-to-k8s.gcr.io
Pull images from k8s.gcr.io/kops instead of docker.io/kope
2020-08-26 07:18:05 -07:00
Ole Markus With 8e4f3b1458 Tags are never used 2020-08-26 14:17:24 +02:00
Ole Markus With 5cb63fb788 Fail if we find multiple sgs with same name 2020-08-26 13:41:15 +02:00
Kubernetes Prow Robot 165933852d
Merge pull request #9790 from olemarkus/openstack-newer-nova
Remove compute floating ip extension
2020-08-26 04:26:03 -07:00