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

[v16] Add a two-part Terraform starter guide #46260

Merged
merged 5 commits into from
Sep 5, 2024

Conversation

ptgott
Copy link
Contributor

@ptgott ptgott commented Sep 4, 2024

Backport #44834 to branch/v16

Closes #41055

Add a learning series for users who wants to get started with managing
Teleport resources using Terraform. The guide takes the user through
some fundamental cluster setup tasks: deploying Agents, enrolling
resources, adding labels, configuring roles, and setting up SSO. The
series includes two guides:

- Part One: Enrolling resources
- Part Two: Configuring RBAC

Part One of the series is based on the "Deploy Agents with Terraform"
guide. This change adds instructions to the guide to label
infrastructure resources so the user can access those resources with the
roles configured in Part Two.

Other changes:

- Rename `agent-pool-terraform` to `terraform-starter`.
- Rename the "Dynamic Resources" guide to be more explicitly about
  Infrastructure as Code. Organize this section into subsections to make
  room for the new starter guide.
- Edit the Further Reading discussion in Part One. Move the static
  resource discussion to Further Reading because, otherwise, there is
  too much explanatory text between instructions. Also mention
  auto-discovery.
- Fix link syntax.
- Set expectations that the child modules downloaded in the two guides
  are examples.
- Remove diagram with outdated logo.
- Use purpose-oriented names for TF files instead of `main.tf`
- Use `tctl terraform env` to get credentials
Responds to hugoShaka feedback.

Resources that are not SSH servers registered via the SSH Service have
some complexities that don't make sense to cover in this guide. Instead,
for simplicity, the guide has the user deploy SSH Service instances,
then includes the possibility of enrolling other kinds of resources in a
"Next steps" section.

Changes:
- Remove the `agent_roles` input in the
  `terraform-starter/agent-installation` module.
- Only deploy a token for the Node role, and configure the Agents
  deployed by the module to only enable the SSH Service.
- Add an agent_labels input to the `agent-installation` module.
- Move non-server deployment instructions to "Next steps".
Note that you can skip the SSO step in the RBAC guide. Include links to
relevant docs.
@ptgott ptgott added the no-changelog Indicates that a PR does not require a changelog entry label Sep 4, 2024
Copy link

github-actions bot commented Sep 4, 2024

🤖 Vercel preview here: https://docs-qarucg2dj-goteleport.vercel.app/docs/ver/preview

@ptgott
Copy link
Contributor Author

ptgott commented Sep 5, 2024

Hi @mmcallister, would you have time to give this one a look? Thanks!

@ptgott ptgott added this pull request to the merge queue Sep 5, 2024
Merged via the queue into branch/v16 with commit b8d6516 Sep 5, 2024
44 of 45 checks passed
@ptgott ptgott deleted the bot/backport-44834-branch/v16 branch September 5, 2024 17:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport documentation no-changelog Indicates that a PR does not require a changelog entry size/lg
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants