Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add changes for edge-19.8.1 #3184

Merged
merged 5 commits into from
Aug 2, 2019
Merged

Add changes for edge-19.8.1 #3184

merged 5 commits into from
Aug 2, 2019

Conversation

kleimkuhler
Copy link
Contributor

@kleimkuhler kleimkuhler commented Aug 1, 2019

Significant Update

This edge release introduces a new tap APIService. The Kubernetes apiserver
authenticates the requesting tap user and then forwards tap requests to the new
tap APIServer. The linkerd tap command now makes requests against the
APIService.

With this release, users must be authorized via RBAC to use the linkerd tap
command. Specifically linkerd tap requires the watch verb on all resources
in the tap.linkerd.io/v1alpha1 APIGroup. More granular access is also
available via sub-resources such as deployments/tap and pods/tap.

  • CLI
    • Added a check to the linkerd check command to validate the user has
      privileges necessary to create CronJobs
    • Introduced the linkerd --as flag which allows users to impersonate another
      user for Kubernetes operations
    • The linkerd tap command now makes requests against the tap APIService
  • Controller
    • Added HTTP security headers on all dashboard responses
    • Fixed nil pointer dereference in the destination service when an endpoint
      does not have a TargetRef
    • Added resource limits when HA is enabled
    • Added RSA support to TLS libraries
    • Updated the destination service to return InvalidArgument for external
      name services so that the proxy does not immediately fail the request
    • The l5d-require-id header is now set on tap requests so that a connection
      is established over TLS
    • Introduced the APIService/v1alpha1.tap.linkerd.io global resource
    • Introduced the ClusterRoleBinding/linkerd-linkerd-tap-auth-delegator
      global resource
    • Introduced the Secret/linkerd-tap-tls resource into the linkerd
      namespace
    • Introduced the RoleBinding/linkerd-linkerd-tap-auth-reader resource into
      the kube-system namespace
  • Proxy
    • Added the LINKERD2_PROXY_TAP_SVC_NAME environment variable so that the tap
      server attempts to authorize client identities
  • Internal
    • Replaced dep with Go modules for dependency management

Signed-off by: Kevin Leimkuhler kleimkuhler@icloud.com

Signed-off-by: Kevin Leimkuhler <kleimkuhler@icloud.com>
Signed-off-by: Kevin Leimkuhler <kleimkuhler@icloud.com>
@kleimkuhler kleimkuhler self-assigned this Aug 1, 2019
Signed-off-by: Kevin Leimkuhler <kleimkuhler@icloud.com>
@l5d-bot
Copy link
Collaborator

l5d-bot commented Aug 1, 2019

Integration test results for 4089127: success 🎉
Log output: https://gist.github.com/9c3b0bc8b78358443fe946c7c0b03119

Copy link
Member

@siggy siggy left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good, left a few comments 👍 🚢

CHANGES.md Outdated Show resolved Hide resolved
CHANGES.md Outdated Show resolved Hide resolved
CHANGES.md Outdated Show resolved Hide resolved
CHANGES.md Outdated Show resolved Hide resolved
Signed-off-by: Kevin Leimkuhler <kleimkuhler@icloud.com>
Signed-off-by: Kevin Leimkuhler <kleimkuhler@icloud.com>
@kleimkuhler kleimkuhler merged commit 783c0bb into master Aug 2, 2019
@kleimkuhler kleimkuhler deleted the kleimkuhler/edge-19.8.1 branch August 2, 2019 00:06
@l5d-bot
Copy link
Collaborator

l5d-bot commented Aug 2, 2019

Integration test results for 6378fd7: success 🎉
Log output: https://gist.github.com/8c10700428c85a12e89427e72e8b6edb

cpretzer pushed a commit that referenced this pull request Aug 6, 2019
**Significant Update**

This edge release introduces a new tap APIService. The Kubernetes apiserver
authenticates the requesting tap user and then forwards tap requests to the new
tap APIServer. The `linkerd tap` command now makes requests against the
APIService.

With this release, users must be authorized via RBAC to use the `linkerd tap`
command. Specifically `linkerd tap` requires the `watch` verb on all resources
in the `tap.linkerd.io/v1alpha1` APIGroup. More granular access is also
available via sub-resources such as `deployments/tap` and `pods/tap`.

* CLI
  * Added a check to the `linkerd check` command to validate the user has
    privileges necessary to create CronJobs
  * Introduced the `linkerd --as` flag which allows users to impersonate another
    user for Kubernetes operations
  * The `linkerd tap` command now makes requests against the tap APIService
* Controller
  * Added HTTP security headers on all dashboard responses
  * Fixed nil pointer dereference in the destination service when an endpoint
    does not have a `TargetRef`
  * Added resource limits when HA is enabled
  * Added RSA support to TLS libraries
  * Updated the destination service to return `InvalidArgument` for external
    name services so that the proxy does not immediately fail the request
  * The `l5d-require-id` header is now set on tap requests so that a connection
    is established over TLS
  * Introduced the `APIService/v1alpha1.tap.linkerd.io` global resource
  * Introduced the `ClusterRoleBinding/linkerd-linkerd-tap-auth-delegator`
    global resource
  * Introduced the `Secret/linkerd-tap-tls` resource into the `linkerd`
    namespace
  * Introduced the `RoleBinding/linkerd-linkerd-tap-auth-reader` resource into
    the `kube-system` namespace
* Proxy
  * Added the `LINKERD2_PROXY_TAP_SVC_NAME` environment variable so that the tap
    server attempts to authorize client identities
* Internal
  * Replaced `dep` with Go modules for dependency management

Signed-off-by: Kevin Leimkuhler <kleimkuhler@icloud.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants