Skip to content

Commit

Permalink
Migrating old keps to new template - provider-aws
Browse files Browse the repository at this point in the history
kep-numbers added
  • Loading branch information
shekhar-rajak committed Jan 22, 2021
1 parent 0fba843 commit 3976951
Show file tree
Hide file tree
Showing 9 changed files with 100 additions and 106 deletions.
Original file line number Diff line number Diff line change
@@ -1,20 +1,3 @@
---
title: aws-k8s-tester
authors:
- "@gyuho"
owning-sig: sig-cloud-provider
reviewers:
- "@d-nishi"
- "@shyamjvs"
approvers:
- "@d-nishi"
- "@shyamjvs"
editor: TBD
creation-date: 2018-11-26
last-updated: 2018-11-29
status: provisional
---

# aws-k8s-tester - kubetest plugin for AWS and EKS

## Table of Contents
Expand Down Expand Up @@ -97,6 +80,6 @@ We implement kubetest plugin, out-of-tree and provided as a single binary file.

## Implementation History

* Initial integration with upstream has been tracked
* Initial integration with upstream has been tracked
* Initial proposal to SIG 2018-11-26
* Initial KEP draft 2018-11-26
15 changes: 15 additions & 0 deletions keps/provider-aws/2313-aws-k8s-tester/kep.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
title: aws-k8s-tester
kep-number: 2313
authors:
- "@gyuho"
owning-sig: sig-cloud-provider
reviewers:
- "@d-nishi"
- "@shyamjvs"
approvers:
- "@d-nishi"
- "@shyamjvs"
editor: TBD
creation-date: 2018-11-26
last-updated: 2018-11-29
status: provisional
Original file line number Diff line number Diff line change
@@ -1,24 +1,3 @@
---
title: Custom endpoints support for AWS Cloud Provider
authors:
- "@micahhausler"
owning-sig: sig-cloud-provider
participating-sigs:
- sig-cloud-provider
reviewers:
- "@justinsb"
- "@mcrute"
approvers:
- "@justinsb"
editor: "@micahhausler"
creation-date: 2019-01-28
last-updated: 2019-01-28
status: provisional
see-also:
replaces:
superseded-by:
---

# Custom endpoint support for AWS Cloud Provider

## Table of Contents
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
title: Custom endpoints support for AWS Cloud Provider
kep-number: 2314
authors:
- "@micahhausler"
owning-sig: sig-cloud-provider
participating-sigs:
- sig-cloud-provider
reviewers:
- "@justinsb"
- "@mcrute"
approvers:
- "@justinsb"
editor: "@micahhausler"
creation-date: 2019-01-28
last-updated: 2019-01-28
status: provisional
see-also:
replaces:
superseded-by:
48 changes: 48 additions & 0 deletions keps/provider-aws/2315-aws-loadbalancer-prefix/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
# AWS LoadBalancer Prefix Annotation Proposal

## Table of Contents

<!-- toc -->
- [Summary](#summary)
- [Motivation](#motivation)
- [Goals](#goals)
- [Non-Goals](#non-goals)
- [Proposal](#proposal)
- [User Stories [optional]](#user-stories-optional)
- [Implementation Details/Notes/Constraints [optional]](#implementation-detailsnotesconstraints-optional)
- [Risks and Mitigations](#risks-and-mitigations)
- [Graduation Criteria](#graduation-criteria)
- [Implementation History](#implementation-history)
- [Drawbacks [optional]](#drawbacks-optional)
- [Alternatives [optional]](#alternatives-optional)
- [Infrastructure Needed [optional]](#infrastructure-needed-optional)
<!-- /toc -->

## Summary
AWS load balancer prefix annotation adds a control over the naming of the AWS ELB resources that are being generated when provisioning a Kubernetes service of type `LoadBalancer`. The current implementation provisions AWS ELB with a unique name based on the resource UID. The resulted unpredicted name makes it impossible to integrate the provisioning with existing IAM policies in situations when these two operations are controlled by two different groups. For example, IAM policies are defined and controlled by InfoSec team while provisioning of resources is under CloudOps team. The AWS IAM policies allow definition when only a prefix of the resource identifier is known. Using Kubernetes service with this annotation when it is provisioned in AWS, will allow an integration with existing IAM policies.

## Motivation
Current way of provisioning load balancer (for a Kubernetes service of the type `LoadBalancer`) is to use the service's UID and to follow Cloud naming conventions for load balancers (for AWS it is a 32 character sequence of alphanumeric characters or hyphens that cannot begin or end with hypen [link1](https://docs.aws.amazon.com/elasticloadbalancing/2012-06-01/APIReference/API_CreateLoadBalancer.html), [link2](https://docs.aws.amazon.com/cli/latest/reference/elbv2/create-load-balancer.html)). When it is provisioned on AWS account with predefined IAM policies that limit access to ELB resources using wildcarded paths (IAM identifiers), the Kubernetes service cannot be provisioned. Providing a way to define a short known prefix to ELB resource makes it possible to match IAM policies conditions regarding the resource identifiers.

### Goals
* Support provisioning of AWS ELB resources for Kubernetes services of the type `LoadBalancer` that match AWS IAM policies
### Non-Goals
* Provide meaningful names for AWS ELB resources generated for Kubernetes services of the type `LoadBalancer`

## Proposal

### User Stories [optional]

### Implementation Details/Notes/Constraints [optional]

### Risks and Mitigations

## Graduation Criteria

## Implementation History

## Drawbacks [optional]

## Alternatives [optional]

## Infrastructure Needed [optional]
17 changes: 17 additions & 0 deletions keps/provider-aws/2315-aws-loadbalancer-prefix/kep.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
title: AWS LoadBalancer Prefix
kep-number: 2315
authors:
- "@minherz"
owning-sig: sig-cloud-provider
participating-sigs:
reviewers:
- TBD
approvers:
- TBD
editor: TBD
creation-date: 2018-11-02
last-updated: 2018-11-02
status: provisional
see-also:
replaces:
superseded-by:
67 changes: 0 additions & 67 deletions keps/provider-aws/aws-lb-prefix-annotation.md
Original file line number Diff line number Diff line change
@@ -1,67 +0,0 @@
---
title: AWS LoadBalancer Prefix
authors:
- "@minherz"
owning-sig: sig-cloud-provider
participating-sigs:
reviewers:
- TBD
approvers:
- TBD
editor: TBD
creation-date: 2018-11-02
last-updated: 2018-11-02
status: provisional
see-also:
replaces:
superseded-by:
---

# AWS LoadBalancer Prefix Annotation Proposal

## Table of Contents

<!-- toc -->
- [Summary](#summary)
- [Motivation](#motivation)
- [Goals](#goals)
- [Non-Goals](#non-goals)
- [Proposal](#proposal)
- [User Stories [optional]](#user-stories-optional)
- [Implementation Details/Notes/Constraints [optional]](#implementation-detailsnotesconstraints-optional)
- [Risks and Mitigations](#risks-and-mitigations)
- [Graduation Criteria](#graduation-criteria)
- [Implementation History](#implementation-history)
- [Drawbacks [optional]](#drawbacks-optional)
- [Alternatives [optional]](#alternatives-optional)
- [Infrastructure Needed [optional]](#infrastructure-needed-optional)
<!-- /toc -->

## Summary
AWS load balancer prefix annotation adds a control over the naming of the AWS ELB resources that are being generated when provisioning a Kubernetes service of type `LoadBalancer`. The current implementation provisions AWS ELB with a unique name based on the resource UID. The resulted unpredicted name makes it impossible to integrate the provisioning with existing IAM policies in situations when these two operations are controlled by two different groups. For example, IAM policies are defined and controlled by InfoSec team while provisioning of resources is under CloudOps team. The AWS IAM policies allow definition when only a prefix of the resource identifier is known. Using Kubernetes service with this annotation when it is provisioned in AWS, will allow an integration with existing IAM policies.

## Motivation
Current way of provisioning load balancer (for a Kubernetes service of the type `LoadBalancer`) is to use the service's UID and to follow Cloud naming conventions for load balancers (for AWS it is a 32 character sequence of alphanumeric characters or hyphens that cannot begin or end with hypen [link1](https://docs.aws.amazon.com/elasticloadbalancing/2012-06-01/APIReference/API_CreateLoadBalancer.html), [link2](https://docs.aws.amazon.com/cli/latest/reference/elbv2/create-load-balancer.html)). When it is provisioned on AWS account with predefined IAM policies that limit access to ELB resources using wildcarded paths (IAM identifiers), the Kubernetes service cannot be provisioned. Providing a way to define a short known prefix to ELB resource makes it possible to match IAM policies conditions regarding the resource identifiers.

### Goals
* Support provisioning of AWS ELB resources for Kubernetes services of the type `LoadBalancer` that match AWS IAM policies
### Non-Goals
* Provide meaningful names for AWS ELB resources generated for Kubernetes services of the type `LoadBalancer`

## Proposal

### User Stories [optional]

### Implementation Details/Notes/Constraints [optional]

### Risks and Mitigations

## Graduation Criteria

## Implementation History

## Drawbacks [optional]

## Alternatives [optional]

## Infrastructure Needed [optional]

0 comments on commit 3976951

Please sign in to comment.