In this self-paced exercise, you will setup and use Environment Manager to build and manage resources in Azure. These resources will be controlled as a single environment through the controller.
Environment Manager enables a self-service experience for developers and other users in an Organization. They can provision and destroy environments at will with the guarantee that security and controls are automatically enforced. In this exercise, the environment resources that will be created in Azure are defined in Terraform IaC that are stored in a Git repository.
The following resources will be created as part of the environment:
- Resource Group
This exercise is expected to take ~60 minutes to complete.
A setup script will be used to assist in setting up the pre-requisites for this guide. The setup script will perform the following actions:
- Create a Git repository to access your IaC
- Create a Secret Sealer to ensure sensitive data is encrypted before being stored in the Git repository.
- Create a GitOps Agent that will run on the machine where the setup script is executed from
- Create a GitOps System-Sync pipeline in the controller that will be used to automatically perform bi-directional sync of resources between the controller and the forked Git repository
The sequence diagram below illustrates the steps you will experience at a high level.
Either the Environment Template User or the Infra Admin can perform the deploy/destroy operations on an environment.
sequenceDiagram autonumber participant admin as Platform Team participant rafay as Rafay participant user as Developer rect rgb(191, 223, 255) Note over admin,rafay: Setup Environment Template admin->>admin: Clone Git Repo admin->>rafay: Setup Env Manager <br>Resources admin->>rafay: Input Cloud Credentials end rect rgb(191, 223, 255) Note over rafay,user: Provision & Use Environment user->>rafay: Create Environment user->>rafay: Use Environment user->>rafay: Destroy Environment end
What Will You Do by Part¶
|Part||What will you do?|
|1||Setup and Configure Environment Manager|
|2||Manage the lifecycle of an Azure environment|
- You have access to a Microsoft Azure account
- You have access to a Mac or Linux machine
- You have a Git client on your machine that is setup for push/pull
- You have Docker installed on your machine