This architecture uses Oracle Autonomous Data Warehouse and creates a database user with the necessary permissions to perform graph operations. The architecture also includes Graph Studio Notebooks for easy graph data preparation and visualization.
The repository contains the Terraform code to create a Resource Manager stack, that creates all the required resources and configures the created resources to add a graph user and the required BANK_ACCOUNTS
and BANK_TXNS
tables.
- Permission to
manage
the following types of resources in your Oracle Cloud Infrastructure tenancy:autonomous-database-family
,orm-family
,virtual-network-family
,network-security-groups
,bastion
,bastion-session
andinstance-family
,. - Permission to
use
the following types of resources in your Oracle Cloud Infrastructure tenancy:tag-namespaces
. - Quota to create one Autonomous Database on Shared Infrastructure instance with at least 1 OCPU and 1 Tb storage.
Component | Description |
---|---|
Autonomous Data Warehouse | Platform for management and analysis of graph data |
Identity Policy | Statements to grant the user access to the ADW and tags |
- Click Deploy to Oracle Cloud. If you aren't already signed in, when prompted, enter the tenancy and user credentials.
- Review and accept the terms and conditions
- Select the region where you want to deploy the stack.
- Follow the on-screen prompts and instructions to create the stack.
- Wait for the job to be completed, and review the plan. To make any changes, return to the Stack Details page, click Edit Stack, and make the required changes. Then, run the Plan action again.
- If no further changes are necessary, return to the Stack Details page, click Terraform Actions, and select Apply.
-
Perform pre-deployment setup described here.
-
Clone the Module with the following commands to make a local copy fo the repo:
git clone https://github.com/oracle-quickstart/oci-arch-graph.git cd oci-arch-graph/ ls
-
To deploy directly with the terraform CLI, rename
terraform.tfvars.template
toterraform.tfvars
and set all the variables. Runterraform init
and thenterraform apply
.Note, the instructions below are to build a
.zip
file from your local copy for use in ORM. If you do not want to use ORM and instead deploy with the terraform CLI, then you need to renameprovider.tf.cli -> provider.tf
. This is because authentication works slightly differently in ORM vs the CLI. This file is ignored by the build process below. Make sure you have terraform v1.0+ cli installed and accessible from your terminal. -
In order to
build
the zip file with the latest changes you made to this code, you can simply go tobuild-orm
folder and use terraform to generate a new zip file:On the first run you are required to initialize the terraform modules used by the template with
terraform init
command:terraform init
-
Once terraform is initialized, run
terraform apply
to generate ORM zip file:terraform apply data.archive_file.generate_zip: Refreshing state... Apply complete! Resources: 0 added, 0 changed, 0 destroyed.
This command will package the content of
terraform
folder into a zip and will store it in thebuild-orm\dist
folder. You can check the content of the file by runningunzip -l dist/orm-graph-stack.zip
-
Login to Oracle Cloud Infrastructure to import the stack
Home > Developer Services > Resource Manager > Stacks > Create Stack
-
Upload the
orm-graph-stack.zip
and provide a name and description for the stack -
Configure the Stack. The UI will present the variables to the user dynamically, based on their selections.
-
Click Next and Review the configuration.
-
Click Create button to confirm and create your ORM Stack.
-
On Stack Details page, you can now run
Terraform
commands to manage your infrastructure. You typically start with a plan then run apply to create and make changes to the infrastructure. More details below:TERRAFORM ACTIONS DESCRIPTION Plan terraform plan
is used to create an execution plan. This command is a convenient way to check the execution plan prior to make any changes to the infrastructure resources.Apply terraform apply
is used to apply the changes required to reach the desired state of the configuration described by the template.Destroy terraform destroy
is used to destroy the Terraform-managed infrastructure.