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 ability to manage auto-discovery settings dynamically #25494

Closed
27 of 28 tasks
Tracked by #21222
r0mant opened this issue May 2, 2023 · 0 comments
Closed
27 of 28 tasks
Tracked by #21222

Add ability to manage auto-discovery settings dynamically #25494

r0mant opened this issue May 2, 2023 · 0 comments
Assignees
Labels
discover Issues related to Teleport Discover feature-request Used for new features in Teleport, improvements to current should be #enhancements

Comments

@r0mant
Copy link
Collaborator

r0mant commented May 2, 2023

We will be adding auto-discovery support to our Teleport Discover resource adding UI, starting with RDS.

To support it, we need ability to manage auto-discovery settings (e.g. update cloud resource filters) dynamically.
Right now it's just a static configuration with discovery_service config file.

The approach we discussed with @marcoandredinis is to create a new resource e.g. DiscoveryConfig that supports same filters as discovery_service:

kind: DiscoveryConfig
version: v1
metadata:
  name: production-resources
spec:
  discovery_group: prod
  // AWS auto-discovery matchers
  aws:
    ...
  // Azure auto-discovery matchers
  azure:
    ...
  // GCP auto-discovery matchers
  gcp:
    ...
  // Kube auto-discovery matchers
  kube:
    ...

discovery_service

discovery_service:
  enabled: "yes"
  discovery_group: prod

A discovery_service will monitor DiscoveryConfig resources and will dynamically update its auto-discovery configuration based on the resources that match its discovery_group field.

A DiscoveryService must be running with a well known discovery_group (eg "default").
For Cloud customers, this will be automatic (managed by Teleport Cloud).

When enrolling an RDS database, during the Deploy Database Service step, users should be able to enable auto-discovery for the current resource type/region and a set of labels.
This will create the following DiscoveryConfig:

kind: DiscoveryConfig
metadata:
  name: <uuid>
spec:
  discovery_group: default
  aws:
  - types: ["rds"]
    region: ["<db-region>"]
    labels: ...
    integration: "<integration>"

The DiscoveryService will receive this new matcher and will monitor those resources.
However, instead of using the credentials provider chain, it will use the integration to authenticate in AWS APIs.

Tasks

  1. discover rfd size/md
  2. backport/branch/v13 database-access discovery size/sm
  3. backport/branch/v14 size/sm
  4. backport/branch/v14 discover size/md
  5. backport/branch/v14 discover size/lg
  6. backport/branch/v14 discover size/lg
  7. backport/branch/v14 database-access discover discovery size/lg
  8. backport/branch/v14 discover size/md tctl
  9. backport/branch/v14 discover size/md
  10. backport/branch/v14 database-access discover discovery size/lg
  11. backport/branch/v14 discovery no-changelog size/md
  12. backport/branch/v14 discover discovery no-changelog size/md
  13. backport/branch/v14 discovery no-changelog size/md
  14. backport/branch/v14 discover no-changelog size/lg
  15. backport/branch/v14 discover discovery no-changelog size/sm
  16. aws backport/branch/v14 discover no-changelog size/sm
  17. backport/branch/v14 database-access discover discovery size/sm
  18. backport/branch/v14 database-access discover no-changelog size/sm
  19. backport/branch/v14 backport/branch/v15 discover no-changelog size/md
  20. backport/branch/v14 backport/branch/v15 no-changelog size/sm
  21. backport/branch/v14 backport/branch/v15 no-changelog size/sm
  22. backport/branch/v14 backport/branch/v15 no-changelog size/md
  23. backport/branch/v15 discovery kubernetes-access no-changelog size/lg
  24. backport/branch/v15 no-changelog size/sm
  25. backport/branch/v15 discovery no-changelog size/md
  26. aws backport/branch/v15 discover discovery no-changelog size/md
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
discover Issues related to Teleport Discover feature-request Used for new features in Teleport, improvements to current should be #enhancements
Projects
None yet
Development

No branches or pull requests

2 participants