Configure the Terraform Modules
The networking resources necessary to host single-tenant SaaS applications on Oracle Cloud are defined in Terraform modules. Download the modules and set the required variables.
Download the Terraform Code
The Terraform code for this solution is available on GitHub.
- In the navigation pane on the left, click Download Code.
- Click Git Repo.
- Clone or download the repository to your local computer.
About the Terraform Code
The Terraform code for this solution is organized into several modules, each containing the resources for a specific component of the target topology.
chef
: This directory contains the Chef recipes for installing and configuring the routing gateways.examples
: This directory contains the Terraform code required to implement this solution. The code in this directory uses the modules defined in themodules
directory.LICENSE.txt
: This file contains the license terms and conditions for the sample code.modules
: This directory contains the Terraform modules that provide the building blocks for the solution.README.md
: This file provides a brief description of the code and basic instructions to use the code.test
: This directory contains test scripts that you can use to verify the deployment.
examples/full-deployment
directory contains the code that calls the Terraform modules required for this solution. It contains the following subdirectories and files:examples/full-deployment
├── common
│ ├── compartments
│ └── configuration
├── Makefile
├── management
│ ├── access
│ ├── network
│ ├── server_attachment
│ └── servers
├── peering
│ ├── network
│ └── routing
├── README.md
├── tenant
│ ├── network
│ └── servers
├── terraform.tfvars.sample
└── terragrunt.hcl
Configuration Directory or File | Resources Defined in the Configuration |
---|---|
common/configuration |
None.
The code in this directory uses the Terraform module in |
common/compartments |
|
management/access |
An Oracle Linux compute instance attached to a public subnet in the ISV VCN. This instance is the bastion server for the topology. |
management/network |
|
management/server_attachment |
|
management/servers |
An Oracle Linux compute instance attached to the management subnet in the ISV VCN.
You can use the management server to install and run an infrastructure monitoring application, such as Nagios Core. |
peering/network |
|
peering/routing |
|
tenant/network |
The following resources for each tenant:
|
tenant/servers |
An Oracle Linux compute instance in each of the tenant compartments.
You can use this instance to install and run an infrastructure monitoring agent. For example, if you install Nagios Core in the management server in the ISV VCN, then you can install the Nagios agent in the compute instance in each tenant compartment. The agent can monitor the servers in the compartment and send metrics to the Nagios monitoring server. |
terraform.tfvars.sample |
A template for the Terraform variables file. |
terragrunt.hcl |
The Terragrunt configuration. |