SlideShare ist ein Scribd-Unternehmen logo
1 von 27
www.rheodata.com Copyright, 2021 RheoData and affiliates
@rheodatallc
Oracle Cloud Infrastructure &
HashiCorp Terraform
in 45 minutes
ECO 2022
www.rheodata.com Copyright, 2021 RheoData and affiliates
@rheodatallc
Roadmap
Introduction
Terraform Basics
OCI Provider & Modules
Coding Examples
Q & A
www.rheodata.com Copyright, 2021 RheoData and affiliates
@rheodatallc
Roadmap
Introduction
Terraform Basics
OCI Provider & Modules
Coding Examples
Q & A
www.rheodata.com Copyright, 2021 RheoData and affiliates
@rheodatallc
Speaker
Bobby Curtis, MBA
Atlanta, GA
• Author
• Speaker
• Former Product Manager for GoldenGate
• Oracle ACE Director Alumni?
@dbasolved
https://dbasolved.com
https://www.rheodata.com/blog
bobby.curtis@rheodata.com
www.rheodata.com Copyright, 2021 RheoData and affiliates
@rheodatallc
License Management for Oracle,
HashiCorp, and Cloud
Get the most out of your license
DBA
Services
Remote and
On-Site
Performance Services
Identify and increase database
performance
Migration Blueprint
Zero Downtime
RheoData Status
How are you running?
On-Call Support
Managed Services
Tactical Assistance Program (TAP)
Experts to help design and manage complex architecture
Take Cloud to next level
Automation of Cloud
www.rheodata.com Copyright, 2021 RheoData and affiliates
@rheodatallc
www.rheodata.com Copyright, 2021 RheoData and affiliates
@rheodatallc
Multi-Cloud Opportunities
+
• Move interdependent enterprise
applications to the cloud
• Deploy custom and packaged application
• Develop cloud native, enterprise
applications
• Cross-Cloud Interconnect
• Unified IAM
• Jointly tested, validated deployment
architectures, best practices
• Collaborative support model
https://www.oracle.com/cloud/azure-interconnect.html
• Innovate across clouds
• Choice
• Maximize ROI
Advantages Possible Now New Capabilities
www.rheodata.com Copyright, 2021 RheoData and affiliates
@rheodatallc
Roadmap
Introduction
Terraform Basics
OCI Provider & Modules
Coding Examples
Q & A
www.rheodata.com Copyright, 2021 RheoData and affiliates
@rheodatallc
Basics
init
validate
plan apply
terraform init
– used to initialize a
working directory with
Terraform files.
– Some validation done
as well
terraform validate
– validates the config
files in a directory
terraform plan
– creates execution plan
– performs a refresh,
unless explicitly disabled
– determines what
needs to be done
terraform apply
– scans the current
directory for the
configuration and
applies changes
www.rheodata.com Copyright, 2021 RheoData and affiliates
@rheodatallc
Roadmap
Introduction
Terraform Basics
OCI Provider & Modules
Coding Examples
Q & A
www.rheodata.com Copyright, 2021 RheoData and affiliates
@rheodatallc
OCI Provider
provider "oci" {
version = ">= 3.76.0"
region = var.region
tenancy_ocid = var.tenancy_ocid
user_ocid = var.user_ocid
fingerprint = var.fingerprint
private_key_path = var.private_key_path
}
• Use of variables file is highly
recommended!
• Use a provider file (provider.tf)
Regions
- locations/data centers
where the workload is
built
Tenancy OCID
- account name when
initially setting up a
cloud account
User OCID
- Identifier that
identifies the user login
into the cloud
Fingerprint
- alpha/numeric string
that will be specific to
public SSH key.
- needed for API access
Key Path
- Location of SSH
private key on localhost
www.rheodata.com Copyright, 2021 RheoData and affiliates
@rheodatallc
OCI Modules
• Modules for most item in
OCI
• VCN – Virtual Network
• Operator – Compute Nodes
• Bastion – add bastion host
• Base – all the above
• Use the lastest version
• 4.46.0
• Downloaded Modules
• .terraform/modules
www.rheodata.com Copyright, 2021 RheoData and affiliates
@rheodatallc
Roadmap
Introduction
Terraform Basics
OCI Provider & Modules
Coding Examples
Q & A
www.rheodata.com Copyright, 2021 RheoData and affiliates
@rheodatallc
Layout
Oracle/OCI/dev
|
/.terraform/modules
/compute-instance/terraform-oci-compute-instance-2.01
-- main.tf
-- variables.tf
-- output.tf
/vcn/terraform-oci-vcn-#.#.#
-- main.tf
-- variables.tf
-- locals.tf
-- nat.tf
-- servicegateway.tf
-- vcn.tf
|
-- main.tf
-- variables.tf
-- output.tf
www.rheodata.com Copyright, 2021 RheoData and affiliates
@rheodatallc
Backend
########################
# Backend
#####################
terraform {
backend "http" {
address = "https://objectstorage.us-ashburn-
1.oraclecloud.com/p/Zi1rw_y.........EA4HjMwEU2zaaBmx71sas_oU/n/idtlingilfcy/b/bucket-terraform/o/terraform.tfstate"
update_method = "PUT"
}
}
HTTP support: uses a cURL-based HTTP command to push/pull state from object store
S3-Compatible support: more complex to setup, requires AWS keys
Pre-Authenticated Requests (PAR): enables accessing a bucket or object in OCI without providing credentials/time-
based.
www.rheodata.com Copyright, 2021 RheoData and affiliates
@rheodatallc
Compartments
##########################
# Compartments - Custom
##########################
resource "oci_identity_compartment" "test_compartment" {
#Required
# ocid1.tenancy.oc1..aaaaaaaaojorxdfprzt2sx75lweivou6xeomto4gvjxuuyraxcdakff4dujq
compartment_id = var.root_compartment_ocid #Compartment to build in
# This is a testing compartment
description = var.compartment_description #Description for the compartment
# testing2
name = var.compartment_name #Name of the compartment
}
data "oci_identity_compartments" "test_compartments" {
compartment_id = var.tenancy_ocid
compartment_id_in_subtree = true
}
output "compartment_info" {
value = data.oci_identity_compartments.test_compartments.compartments
}
www.rheodata.com Copyright, 2021 RheoData and affiliates
@rheodatallc
#########################
# Compute Instance - OCI Provided
#########################
module "compute-instance" {
source = "oracle-terraform-modules/compute-instance/oci"
version = "2.0.1"
#Required Info
compartment_ocid = "ocid1.compartment.oc1..aaaaaaaade5bxtniugmwuiynsonpq74fo2djk6hd64qu3lzw2xybym4svyhq"
source_ocid = "ocid1.image.oc1.iad.aaaaaaaawtb4qxiwri5z2qjeey4zpzqpv2rtxhddzpbvojw2e2c2jevmthva"
ssh_authorized_keys = "~/.ssh/id_rsa.pub"
subnet_ocids = ["ocid1.subnet.oc1.iad.aaaaaaaamlgotv3goqjfihx53abpatmajjh45h32vljzfq3nsvwoqhqmouda"]
#Optional Info
instance_count = ”4"
shape = "VM.Standard2.2"
instance_display_name = "Test-Linux_"
}
output "compute_info" {
value = [
"ID", module.compute-instance.instance_id,
"Private", module.compute-instance.private_ip,
"Public", module.compute-instance.public_ip
]
}
Compute Instances
www.rheodata.com Copyright, 2021 RheoData and affiliates
@rheodatallc
Autonomous Database(s)
• No OCI certified modules available
• Deprecated Resources by version
• Write custom
oci_database_autonomous_database
www.rheodata.com Copyright, 2021 RheoData and affiliates
@rheodatallc
Autonomous Database(s)
##############################
# OCI - Autonomous Database(s)
##############################
resource "oci_database_autonomous_database" "demo_adb" {
#Required
admin_password = ”<Password>"
compartment_id =
"ocid1.compartment.oc1..aaaaaaaade5bxtniugmwuiynsonpq74fo2djk6hd64qu3lzw2xybym4svyhq"
cpu_core_count = "1"
data_storage_size_in_tbs = "1"
db_name = "RDADB1"
#Optional
db_version = "19c"
db_workload = "OLTP"
display_name = "RDADB1"
is_free_tier = "false"
license_model = "BRING_YOUR_OWN_LICENSE"
source = "NONE"
}
output "demo_adb_ocid" {
value = oci_database_autonomous_database.demo_adb.id
}
www.rheodata.com Copyright, 2021 RheoData and affiliates
@rheodatallc
GoldenGate Service (GGS)
• Oracle GoldenGate (Microservices) as a Service
• Builds one (1) deployment only
resource "oci_golden_gate_deployment" "ggdev" {
#Required
compartment_id = "ocid1.compartment.oc1..aaaaaaaaeg3ug2usjziq5smuc5a6oc5up6ngkgy5ilkw2pgnjxz2xe67plbq"
cpu_core_count = "2"
deployment_type = "OGG"
display_name = "ggdev"
is_auto_scaling_enabled = "false"
is_public = "true"
license_model = "LICENSE_INCLUDED"
subnet_id = var.devsubnet
#nsg_ids = ["ocid1.networksecuritygroup.oc1.iad.aaaaaaaal4efdb64mjtutdfw5ju3dthibfmruqavaakx6olkjdx2lyaxmb3q"]
ogg_data {
admin_password = ”<password>
admin_username = "oggadmin"
deployment_name = "ggdev"
}
} #end-resource
www.rheodata.com Copyright, 2021 RheoData and affiliates
@rheodatallc
Kubernetes (OKE)
• Oracle Container Engine (OKE) is Oracle’s managed Kubernetes service
• Lots of components within OCI – OCI module is best option
module "oke" {
source = "oracle-terraform-modules/oke/oci"
version = "2.2.2"
#Required
api_fingerprint = var.fingerprint
api_private_key_path = "~/.ssh/id_rsa"
compartment_id = "ocid1.compartment.oc1……gmwuiynsonpq74fo2djk6hd64qu3lzw2xybym4svyhq"
existing_key_id = "ocid1.key.oc1.iad.bbppj6k3aacuu.a……tsnq3ldofns5czn7vyzvxnvvnliq"
region = var.region
secret_id = "ocid1.vault.oc1.iad.bbppj6k3aacuu………w5e5mc6rhxcm7mzytdbsqt6g6ozaftjtj4uegbmwcuya"
service_account_cluster_role_binding = "clustertestbinding"
tenancy_id = var.tenancy_ocid
user_id = var.user_ocid
#Optional
ssh_public_key_path = "~/.ssh/id_rsa.pub"
}
www.rheodata.com Copyright, 2021 RheoData and affiliates
@rheodatallc
Graph
• Inherently exposes some of Terraform’s Core implementation details
• Handy for debugging how Terraform is executing
$ terraform graph
digraph {
compound = "true"
newrank = "true"
subgraph "root" {
"[root] data.oci_identity_compartments.test_compartments (orphan)" [label = "data.oci_identity_compartments.test_compartments",
shape = "box"]
"[root] module.compute-instance.data.oci_core_instance_credentials.this (expand)" [label = "module.compute-
instance.data.oci_core_instance_credentials.this", shape = "box"]
"[root] module.compute-instance.data.oci_core_subnet.this (expand)" [label = "module.compute-
instance.data.oci_core_subnet.this", shape = "box"]
"[root] module.compute-instance.oci_core_instance.this (expand)" [label = "module.compute-instance.oci_core_instance.this",
shape = "box"]
"[root] module.compute-instance.oci_core_volume.this (expand)" [label = "module.compute-instance.oci_core_volume.this", shape =
"box"]
"[root] module.compute-instance.oci_core_volume_attachment.this (expand)" [label = "module.compute-
instance.oci_core_volume_attachment.this", shape = "box"]
"[root] oci_identity_compartment.test_compartment (orphan)" [label = "oci_identity_compartment.test_compartment", shape = "box"]
"[root] output.compartment_info (destroy)" [label = "output.compartment_info (destroy)", shape = "note"]
"[root] output.compute_info" [label = "output.compute_info", shape = "note"]
"[root] provider["registry.terraform.io/hashicorp/oci"]" [label = "provider["registry.terraform.io/hashicorp/oci"]", shape =
"diamond"]
"[root] var.adw_ocid" [label = "var.adw_ocid", shape = "note"]
"[root] var.compartment_description" [label = "var.compartment_description", shape = "note"]
…
www.rheodata.com Copyright, 2021 RheoData and affiliates
@rheodatallc
Stacks & Jobs
Code Zip Upload & Run
www.rheodata.com Copyright, 2021 RheoData and affiliates
@rheodatallc
Roadmap
Introduction
Terraform Basics
OCI Provider & Modules
Coding Examples
Q & A
www.rheodata.com Copyright, 2021 RheoData and affiliates
@rheodatallc
Questions
www.rheodata.com Copyright, 2021 RheoData and affiliates
@rheodatallc
Contact RheoData
info@rheodata.com
@rheodatallc
http://rheodata.com
www.rheodata.com Copyright, 2021 RheoData and affiliates
@rheodatallc
RheoData Happy Hour
Tonight!
Immediately
After the Networking Event
6 pm – 7 pm EST

Weitere ähnliche Inhalte

Was ist angesagt?

Database As A Service: OEM + ODA (OOW 15 Presentation)
Database As A Service: OEM + ODA (OOW 15 Presentation)Database As A Service: OEM + ODA (OOW 15 Presentation)
Database As A Service: OEM + ODA (OOW 15 Presentation)Bobby Curtis
 
Oracle GoldenGate Presentation from OTN Virtual Technology Summit - 7/9/14 (PDF)
Oracle GoldenGate Presentation from OTN Virtual Technology Summit - 7/9/14 (PDF)Oracle GoldenGate Presentation from OTN Virtual Technology Summit - 7/9/14 (PDF)
Oracle GoldenGate Presentation from OTN Virtual Technology Summit - 7/9/14 (PDF)Bobby Curtis
 
Extreme replication at IOUG Collaborate 15
Extreme replication at IOUG Collaborate 15Extreme replication at IOUG Collaborate 15
Extreme replication at IOUG Collaborate 15Bobby Curtis
 
Oracle GoldenGate on Docker
Oracle GoldenGate on DockerOracle GoldenGate on Docker
Oracle GoldenGate on DockerBobby Curtis
 
IOUG Data Integration SIG w/ Oracle GoldenGate Solutions and Configuration
IOUG Data Integration SIG w/ Oracle GoldenGate Solutions and ConfigurationIOUG Data Integration SIG w/ Oracle GoldenGate Solutions and Configuration
IOUG Data Integration SIG w/ Oracle GoldenGate Solutions and ConfigurationBobby Curtis
 
GoldenGate Monitoring - GOUSER - 4/2014
GoldenGate Monitoring - GOUSER - 4/2014GoldenGate Monitoring - GOUSER - 4/2014
GoldenGate Monitoring - GOUSER - 4/2014Bobby Curtis
 
OEM12c, DB12c and You! - RMOUG TD2014 Edition
OEM12c, DB12c and You! - RMOUG TD2014 EditionOEM12c, DB12c and You! - RMOUG TD2014 Edition
OEM12c, DB12c and You! - RMOUG TD2014 EditionBobby Curtis
 
Enable GoldenGate Monitoring with OEM 12c/JAgent
Enable GoldenGate Monitoring with OEM 12c/JAgentEnable GoldenGate Monitoring with OEM 12c/JAgent
Enable GoldenGate Monitoring with OEM 12c/JAgentBobby Curtis
 
Hit Refresh with Oracle GoldenGate Microservices
Hit Refresh with Oracle GoldenGate MicroservicesHit Refresh with Oracle GoldenGate Microservices
Hit Refresh with Oracle GoldenGate MicroservicesBobby Curtis
 
Terraform & Oracle Cloud Infrastructure
Terraform & Oracle Cloud InfrastructureTerraform & Oracle Cloud Infrastructure
Terraform & Oracle Cloud InfrastructureBobby Curtis
 
GoldenGate CDR from UKOUG 2017
GoldenGate CDR from UKOUG 2017GoldenGate CDR from UKOUG 2017
GoldenGate CDR from UKOUG 2017Bobby Curtis
 
Oracle virtualbox basic to rac attack
Oracle virtualbox basic to rac attackOracle virtualbox basic to rac attack
Oracle virtualbox basic to rac attackBobby Curtis
 
Oracle GoldenGate Architecture Performance
Oracle GoldenGate Architecture PerformanceOracle GoldenGate Architecture Performance
Oracle GoldenGate Architecture PerformanceEnkitec
 
Exachk and oem12c - IOUG C15LV
Exachk and oem12c - IOUG C15LVExachk and oem12c - IOUG C15LV
Exachk and oem12c - IOUG C15LVBobby Curtis
 
How many ways to monitor oracle golden gate - OOW14
How many ways to monitor oracle golden gate - OOW14How many ways to monitor oracle golden gate - OOW14
How many ways to monitor oracle golden gate - OOW14Bobby Curtis
 
How many ways to monitor oracle golden gate-Collaborate 14
How many ways to monitor oracle golden gate-Collaborate 14How many ways to monitor oracle golden gate-Collaborate 14
How many ways to monitor oracle golden gate-Collaborate 14Bobby Curtis
 
Oem12c patching -OOW13
Oem12c patching -OOW13Oem12c patching -OOW13
Oem12c patching -OOW13Bobby Curtis
 
5 Keys to Oracle GoldenGate Implemenations
5 Keys to Oracle GoldenGate Implemenations5 Keys to Oracle GoldenGate Implemenations
5 Keys to Oracle GoldenGate ImplemenationsBobby Curtis
 
Oracle GoldenGate and Baseball - 5 Keys for Moving to the Cloud
Oracle GoldenGate and Baseball - 5 Keys for Moving to the CloudOracle GoldenGate and Baseball - 5 Keys for Moving to the Cloud
Oracle GoldenGate and Baseball - 5 Keys for Moving to the CloudBobby Curtis
 

Was ist angesagt? (20)

Database As A Service: OEM + ODA (OOW 15 Presentation)
Database As A Service: OEM + ODA (OOW 15 Presentation)Database As A Service: OEM + ODA (OOW 15 Presentation)
Database As A Service: OEM + ODA (OOW 15 Presentation)
 
Oracle GoldenGate Presentation from OTN Virtual Technology Summit - 7/9/14 (PDF)
Oracle GoldenGate Presentation from OTN Virtual Technology Summit - 7/9/14 (PDF)Oracle GoldenGate Presentation from OTN Virtual Technology Summit - 7/9/14 (PDF)
Oracle GoldenGate Presentation from OTN Virtual Technology Summit - 7/9/14 (PDF)
 
Extreme replication at IOUG Collaborate 15
Extreme replication at IOUG Collaborate 15Extreme replication at IOUG Collaborate 15
Extreme replication at IOUG Collaborate 15
 
Oracle GoldenGate on Docker
Oracle GoldenGate on DockerOracle GoldenGate on Docker
Oracle GoldenGate on Docker
 
IOUG Data Integration SIG w/ Oracle GoldenGate Solutions and Configuration
IOUG Data Integration SIG w/ Oracle GoldenGate Solutions and ConfigurationIOUG Data Integration SIG w/ Oracle GoldenGate Solutions and Configuration
IOUG Data Integration SIG w/ Oracle GoldenGate Solutions and Configuration
 
GoldenGate Monitoring - GOUSER - 4/2014
GoldenGate Monitoring - GOUSER - 4/2014GoldenGate Monitoring - GOUSER - 4/2014
GoldenGate Monitoring - GOUSER - 4/2014
 
OEM12c, DB12c and You! - RMOUG TD2014 Edition
OEM12c, DB12c and You! - RMOUG TD2014 EditionOEM12c, DB12c and You! - RMOUG TD2014 Edition
OEM12c, DB12c and You! - RMOUG TD2014 Edition
 
Enable GoldenGate Monitoring with OEM 12c/JAgent
Enable GoldenGate Monitoring with OEM 12c/JAgentEnable GoldenGate Monitoring with OEM 12c/JAgent
Enable GoldenGate Monitoring with OEM 12c/JAgent
 
Hit Refresh with Oracle GoldenGate Microservices
Hit Refresh with Oracle GoldenGate MicroservicesHit Refresh with Oracle GoldenGate Microservices
Hit Refresh with Oracle GoldenGate Microservices
 
Terraform & Oracle Cloud Infrastructure
Terraform & Oracle Cloud InfrastructureTerraform & Oracle Cloud Infrastructure
Terraform & Oracle Cloud Infrastructure
 
GoldenGate CDR from UKOUG 2017
GoldenGate CDR from UKOUG 2017GoldenGate CDR from UKOUG 2017
GoldenGate CDR from UKOUG 2017
 
Oracle virtualbox basic to rac attack
Oracle virtualbox basic to rac attackOracle virtualbox basic to rac attack
Oracle virtualbox basic to rac attack
 
Oracle GoldenGate Architecture Performance
Oracle GoldenGate Architecture PerformanceOracle GoldenGate Architecture Performance
Oracle GoldenGate Architecture Performance
 
Exachk and oem12c
Exachk and oem12cExachk and oem12c
Exachk and oem12c
 
Exachk and oem12c - IOUG C15LV
Exachk and oem12c - IOUG C15LVExachk and oem12c - IOUG C15LV
Exachk and oem12c - IOUG C15LV
 
How many ways to monitor oracle golden gate - OOW14
How many ways to monitor oracle golden gate - OOW14How many ways to monitor oracle golden gate - OOW14
How many ways to monitor oracle golden gate - OOW14
 
How many ways to monitor oracle golden gate-Collaborate 14
How many ways to monitor oracle golden gate-Collaborate 14How many ways to monitor oracle golden gate-Collaborate 14
How many ways to monitor oracle golden gate-Collaborate 14
 
Oem12c patching -OOW13
Oem12c patching -OOW13Oem12c patching -OOW13
Oem12c patching -OOW13
 
5 Keys to Oracle GoldenGate Implemenations
5 Keys to Oracle GoldenGate Implemenations5 Keys to Oracle GoldenGate Implemenations
5 Keys to Oracle GoldenGate Implemenations
 
Oracle GoldenGate and Baseball - 5 Keys for Moving to the Cloud
Oracle GoldenGate and Baseball - 5 Keys for Moving to the CloudOracle GoldenGate and Baseball - 5 Keys for Moving to the Cloud
Oracle GoldenGate and Baseball - 5 Keys for Moving to the Cloud
 

Ähnlich wie ECO 2022 - OCI and HashiCorp Terraform

2019 - GUOB Tech Day / Groundbreakers LAD Tour - Database Migration Methods t...
2019 - GUOB Tech Day / Groundbreakers LAD Tour - Database Migration Methods t...2019 - GUOB Tech Day / Groundbreakers LAD Tour - Database Migration Methods t...
2019 - GUOB Tech Day / Groundbreakers LAD Tour - Database Migration Methods t...Marcus Vinicius Miguel Pedro
 
Automating Cloud Operations - Everything you wanted to know about cURL and RE...
Automating Cloud Operations - Everything you wanted to know about cURL and RE...Automating Cloud Operations - Everything you wanted to know about cURL and RE...
Automating Cloud Operations - Everything you wanted to know about cURL and RE...Revelation Technologies
 
2019 - OOW - Database Migration Methods from On-Premise to Cloud
2019 - OOW - Database Migration Methods from On-Premise to Cloud2019 - OOW - Database Migration Methods from On-Premise to Cloud
2019 - OOW - Database Migration Methods from On-Premise to CloudMarcus Vinicius Miguel Pedro
 
Oracle_Patching_Untold_Story_Final_Part2.pdf
Oracle_Patching_Untold_Story_Final_Part2.pdfOracle_Patching_Untold_Story_Final_Part2.pdf
Oracle_Patching_Untold_Story_Final_Part2.pdfAlex446314
 
Dsdt meetup 2017 11-21
Dsdt meetup 2017 11-21Dsdt meetup 2017 11-21
Dsdt meetup 2017 11-21JDA Labs MTL
 
DSDT Meetup Nov 2017
DSDT Meetup Nov 2017DSDT Meetup Nov 2017
DSDT Meetup Nov 2017DSDT_MTL
 
MySQL Shell - The Best MySQL DBA Tool
MySQL Shell - The Best MySQL DBA ToolMySQL Shell - The Best MySQL DBA Tool
MySQL Shell - The Best MySQL DBA ToolMiguel Araújo
 
20180605 sso with apex and adfs the weblogic way
20180605 sso with apex and adfs the weblogic way20180605 sso with apex and adfs the weblogic way
20180605 sso with apex and adfs the weblogic waymakker_nl
 
VMworld 2013: Virtualizing Mission Critical Oracle RAC with vSphere and vCOPS
VMworld 2013: Virtualizing Mission Critical Oracle RAC with vSphere and vCOPSVMworld 2013: Virtualizing Mission Critical Oracle RAC with vSphere and vCOPS
VMworld 2013: Virtualizing Mission Critical Oracle RAC with vSphere and vCOPSVMworld
 
2020 - GUOB Tech Day / Groundbreakers LAD Tour - How to Create an AutoScale C...
2020 - GUOB Tech Day / Groundbreakers LAD Tour - How to Create an AutoScale C...2020 - GUOB Tech Day / Groundbreakers LAD Tour - How to Create an AutoScale C...
2020 - GUOB Tech Day / Groundbreakers LAD Tour - How to Create an AutoScale C...Marcus Vinicius Miguel Pedro
 
An insight to microsoft platform
An insight to microsoft platformAn insight to microsoft platform
An insight to microsoft platformConfiz
 
Cloud Native Application Development - build fast, cheap, scalable and agile ...
Cloud Native Application Development - build fast, cheap, scalable and agile ...Cloud Native Application Development - build fast, cheap, scalable and agile ...
Cloud Native Application Development - build fast, cheap, scalable and agile ...Lucas Jellema
 
Oracle Database Migration to Oracle Cloud Infrastructure
Oracle Database Migration to Oracle Cloud InfrastructureOracle Database Migration to Oracle Cloud Infrastructure
Oracle Database Migration to Oracle Cloud InfrastructureSinanPetrusToma
 
Serverless patterns
Serverless patternsServerless patterns
Serverless patternsJesse Butler
 
OAC and ODI! A Match Made in…the cloud?
OAC and ODI! A Match Made in…the cloud?OAC and ODI! A Match Made in…the cloud?
OAC and ODI! A Match Made in…the cloud?Rodrigo Radtke de Souza
 
SOLID Programming with Portable Class Libraries
SOLID Programming with Portable Class LibrariesSOLID Programming with Portable Class Libraries
SOLID Programming with Portable Class LibrariesVagif Abilov
 
20150425 experimenting with openstack sahara on docker
20150425 experimenting with openstack sahara on docker20150425 experimenting with openstack sahara on docker
20150425 experimenting with openstack sahara on dockerWei Ting Chen
 
Monitor Engineered Systems from a Single Pane of Glass: Oracle Enterprise Man...
Monitor Engineered Systems from a Single Pane of Glass: Oracle Enterprise Man...Monitor Engineered Systems from a Single Pane of Glass: Oracle Enterprise Man...
Monitor Engineered Systems from a Single Pane of Glass: Oracle Enterprise Man...Alfredo Krieg
 
Categorizing Docker Hub Public Images
Categorizing Docker Hub Public ImagesCategorizing Docker Hub Public Images
Categorizing Docker Hub Public ImagesRoberto Hashioka
 

Ähnlich wie ECO 2022 - OCI and HashiCorp Terraform (20)

2019 - GUOB Tech Day / Groundbreakers LAD Tour - Database Migration Methods t...
2019 - GUOB Tech Day / Groundbreakers LAD Tour - Database Migration Methods t...2019 - GUOB Tech Day / Groundbreakers LAD Tour - Database Migration Methods t...
2019 - GUOB Tech Day / Groundbreakers LAD Tour - Database Migration Methods t...
 
Automating Cloud Operations - Everything you wanted to know about cURL and RE...
Automating Cloud Operations - Everything you wanted to know about cURL and RE...Automating Cloud Operations - Everything you wanted to know about cURL and RE...
Automating Cloud Operations - Everything you wanted to know about cURL and RE...
 
2019 - OOW - Database Migration Methods from On-Premise to Cloud
2019 - OOW - Database Migration Methods from On-Premise to Cloud2019 - OOW - Database Migration Methods from On-Premise to Cloud
2019 - OOW - Database Migration Methods from On-Premise to Cloud
 
Oracle_Patching_Untold_Story_Final_Part2.pdf
Oracle_Patching_Untold_Story_Final_Part2.pdfOracle_Patching_Untold_Story_Final_Part2.pdf
Oracle_Patching_Untold_Story_Final_Part2.pdf
 
Dsdt meetup 2017 11-21
Dsdt meetup 2017 11-21Dsdt meetup 2017 11-21
Dsdt meetup 2017 11-21
 
DSDT Meetup Nov 2017
DSDT Meetup Nov 2017DSDT Meetup Nov 2017
DSDT Meetup Nov 2017
 
MySQL Shell - The Best MySQL DBA Tool
MySQL Shell - The Best MySQL DBA ToolMySQL Shell - The Best MySQL DBA Tool
MySQL Shell - The Best MySQL DBA Tool
 
20180605 sso with apex and adfs the weblogic way
20180605 sso with apex and adfs the weblogic way20180605 sso with apex and adfs the weblogic way
20180605 sso with apex and adfs the weblogic way
 
VMworld 2013: Virtualizing Mission Critical Oracle RAC with vSphere and vCOPS
VMworld 2013: Virtualizing Mission Critical Oracle RAC with vSphere and vCOPSVMworld 2013: Virtualizing Mission Critical Oracle RAC with vSphere and vCOPS
VMworld 2013: Virtualizing Mission Critical Oracle RAC with vSphere and vCOPS
 
2020 - OCI Key Concepts for Oracle DBAs
2020 - OCI Key Concepts for Oracle DBAs2020 - OCI Key Concepts for Oracle DBAs
2020 - OCI Key Concepts for Oracle DBAs
 
2020 - GUOB Tech Day / Groundbreakers LAD Tour - How to Create an AutoScale C...
2020 - GUOB Tech Day / Groundbreakers LAD Tour - How to Create an AutoScale C...2020 - GUOB Tech Day / Groundbreakers LAD Tour - How to Create an AutoScale C...
2020 - GUOB Tech Day / Groundbreakers LAD Tour - How to Create an AutoScale C...
 
An insight to microsoft platform
An insight to microsoft platformAn insight to microsoft platform
An insight to microsoft platform
 
Cloud Native Application Development - build fast, cheap, scalable and agile ...
Cloud Native Application Development - build fast, cheap, scalable and agile ...Cloud Native Application Development - build fast, cheap, scalable and agile ...
Cloud Native Application Development - build fast, cheap, scalable and agile ...
 
Oracle Database Migration to Oracle Cloud Infrastructure
Oracle Database Migration to Oracle Cloud InfrastructureOracle Database Migration to Oracle Cloud Infrastructure
Oracle Database Migration to Oracle Cloud Infrastructure
 
Serverless patterns
Serverless patternsServerless patterns
Serverless patterns
 
OAC and ODI! A Match Made in…the cloud?
OAC and ODI! A Match Made in…the cloud?OAC and ODI! A Match Made in…the cloud?
OAC and ODI! A Match Made in…the cloud?
 
SOLID Programming with Portable Class Libraries
SOLID Programming with Portable Class LibrariesSOLID Programming with Portable Class Libraries
SOLID Programming with Portable Class Libraries
 
20150425 experimenting with openstack sahara on docker
20150425 experimenting with openstack sahara on docker20150425 experimenting with openstack sahara on docker
20150425 experimenting with openstack sahara on docker
 
Monitor Engineered Systems from a Single Pane of Glass: Oracle Enterprise Man...
Monitor Engineered Systems from a Single Pane of Glass: Oracle Enterprise Man...Monitor Engineered Systems from a Single Pane of Glass: Oracle Enterprise Man...
Monitor Engineered Systems from a Single Pane of Glass: Oracle Enterprise Man...
 
Categorizing Docker Hub Public Images
Categorizing Docker Hub Public ImagesCategorizing Docker Hub Public Images
Categorizing Docker Hub Public Images
 

Mehr von Bobby Curtis

RheoData_23ai_Vector-Datatype-Webinar-2024.pptx
RheoData_23ai_Vector-Datatype-Webinar-2024.pptxRheoData_23ai_Vector-Datatype-Webinar-2024.pptx
RheoData_23ai_Vector-Datatype-Webinar-2024.pptxBobby Curtis
 
MySQLHeatwave-TheBasics.pptx
MySQLHeatwave-TheBasics.pptxMySQLHeatwave-TheBasics.pptx
MySQLHeatwave-TheBasics.pptxBobby Curtis
 
Oracle GoldenGate Performance Tuning
Oracle GoldenGate Performance TuningOracle GoldenGate Performance Tuning
Oracle GoldenGate Performance TuningBobby Curtis
 
Oracle GoldenGate Studio Intro
Oracle GoldenGate Studio IntroOracle GoldenGate Studio Intro
Oracle GoldenGate Studio IntroBobby Curtis
 
Examining Oracle GoldenGate Trail Files
Examining Oracle GoldenGate Trail FilesExamining Oracle GoldenGate Trail Files
Examining Oracle GoldenGate Trail FilesBobby Curtis
 
Oracle GoldenGate 12c CDR Presentation for ECO
Oracle GoldenGate 12c CDR Presentation for ECOOracle GoldenGate 12c CDR Presentation for ECO
Oracle GoldenGate 12c CDR Presentation for ECOBobby Curtis
 

Mehr von Bobby Curtis (6)

RheoData_23ai_Vector-Datatype-Webinar-2024.pptx
RheoData_23ai_Vector-Datatype-Webinar-2024.pptxRheoData_23ai_Vector-Datatype-Webinar-2024.pptx
RheoData_23ai_Vector-Datatype-Webinar-2024.pptx
 
MySQLHeatwave-TheBasics.pptx
MySQLHeatwave-TheBasics.pptxMySQLHeatwave-TheBasics.pptx
MySQLHeatwave-TheBasics.pptx
 
Oracle GoldenGate Performance Tuning
Oracle GoldenGate Performance TuningOracle GoldenGate Performance Tuning
Oracle GoldenGate Performance Tuning
 
Oracle GoldenGate Studio Intro
Oracle GoldenGate Studio IntroOracle GoldenGate Studio Intro
Oracle GoldenGate Studio Intro
 
Examining Oracle GoldenGate Trail Files
Examining Oracle GoldenGate Trail FilesExamining Oracle GoldenGate Trail Files
Examining Oracle GoldenGate Trail Files
 
Oracle GoldenGate 12c CDR Presentation for ECO
Oracle GoldenGate 12c CDR Presentation for ECOOracle GoldenGate 12c CDR Presentation for ECO
Oracle GoldenGate 12c CDR Presentation for ECO
 

Kürzlich hochgeladen

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Principled Technologies
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 

Kürzlich hochgeladen (20)

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 

ECO 2022 - OCI and HashiCorp Terraform

  • 1. www.rheodata.com Copyright, 2021 RheoData and affiliates @rheodatallc Oracle Cloud Infrastructure & HashiCorp Terraform in 45 minutes ECO 2022
  • 2. www.rheodata.com Copyright, 2021 RheoData and affiliates @rheodatallc Roadmap Introduction Terraform Basics OCI Provider & Modules Coding Examples Q & A
  • 3. www.rheodata.com Copyright, 2021 RheoData and affiliates @rheodatallc Roadmap Introduction Terraform Basics OCI Provider & Modules Coding Examples Q & A
  • 4. www.rheodata.com Copyright, 2021 RheoData and affiliates @rheodatallc Speaker Bobby Curtis, MBA Atlanta, GA • Author • Speaker • Former Product Manager for GoldenGate • Oracle ACE Director Alumni? @dbasolved https://dbasolved.com https://www.rheodata.com/blog bobby.curtis@rheodata.com
  • 5. www.rheodata.com Copyright, 2021 RheoData and affiliates @rheodatallc License Management for Oracle, HashiCorp, and Cloud Get the most out of your license DBA Services Remote and On-Site Performance Services Identify and increase database performance Migration Blueprint Zero Downtime RheoData Status How are you running? On-Call Support Managed Services Tactical Assistance Program (TAP) Experts to help design and manage complex architecture Take Cloud to next level Automation of Cloud
  • 6. www.rheodata.com Copyright, 2021 RheoData and affiliates @rheodatallc
  • 7. www.rheodata.com Copyright, 2021 RheoData and affiliates @rheodatallc Multi-Cloud Opportunities + • Move interdependent enterprise applications to the cloud • Deploy custom and packaged application • Develop cloud native, enterprise applications • Cross-Cloud Interconnect • Unified IAM • Jointly tested, validated deployment architectures, best practices • Collaborative support model https://www.oracle.com/cloud/azure-interconnect.html • Innovate across clouds • Choice • Maximize ROI Advantages Possible Now New Capabilities
  • 8. www.rheodata.com Copyright, 2021 RheoData and affiliates @rheodatallc Roadmap Introduction Terraform Basics OCI Provider & Modules Coding Examples Q & A
  • 9. www.rheodata.com Copyright, 2021 RheoData and affiliates @rheodatallc Basics init validate plan apply terraform init – used to initialize a working directory with Terraform files. – Some validation done as well terraform validate – validates the config files in a directory terraform plan – creates execution plan – performs a refresh, unless explicitly disabled – determines what needs to be done terraform apply – scans the current directory for the configuration and applies changes
  • 10. www.rheodata.com Copyright, 2021 RheoData and affiliates @rheodatallc Roadmap Introduction Terraform Basics OCI Provider & Modules Coding Examples Q & A
  • 11. www.rheodata.com Copyright, 2021 RheoData and affiliates @rheodatallc OCI Provider provider "oci" { version = ">= 3.76.0" region = var.region tenancy_ocid = var.tenancy_ocid user_ocid = var.user_ocid fingerprint = var.fingerprint private_key_path = var.private_key_path } • Use of variables file is highly recommended! • Use a provider file (provider.tf) Regions - locations/data centers where the workload is built Tenancy OCID - account name when initially setting up a cloud account User OCID - Identifier that identifies the user login into the cloud Fingerprint - alpha/numeric string that will be specific to public SSH key. - needed for API access Key Path - Location of SSH private key on localhost
  • 12. www.rheodata.com Copyright, 2021 RheoData and affiliates @rheodatallc OCI Modules • Modules for most item in OCI • VCN – Virtual Network • Operator – Compute Nodes • Bastion – add bastion host • Base – all the above • Use the lastest version • 4.46.0 • Downloaded Modules • .terraform/modules
  • 13. www.rheodata.com Copyright, 2021 RheoData and affiliates @rheodatallc Roadmap Introduction Terraform Basics OCI Provider & Modules Coding Examples Q & A
  • 14. www.rheodata.com Copyright, 2021 RheoData and affiliates @rheodatallc Layout Oracle/OCI/dev | /.terraform/modules /compute-instance/terraform-oci-compute-instance-2.01 -- main.tf -- variables.tf -- output.tf /vcn/terraform-oci-vcn-#.#.# -- main.tf -- variables.tf -- locals.tf -- nat.tf -- servicegateway.tf -- vcn.tf | -- main.tf -- variables.tf -- output.tf
  • 15. www.rheodata.com Copyright, 2021 RheoData and affiliates @rheodatallc Backend ######################## # Backend ##################### terraform { backend "http" { address = "https://objectstorage.us-ashburn- 1.oraclecloud.com/p/Zi1rw_y.........EA4HjMwEU2zaaBmx71sas_oU/n/idtlingilfcy/b/bucket-terraform/o/terraform.tfstate" update_method = "PUT" } } HTTP support: uses a cURL-based HTTP command to push/pull state from object store S3-Compatible support: more complex to setup, requires AWS keys Pre-Authenticated Requests (PAR): enables accessing a bucket or object in OCI without providing credentials/time- based.
  • 16. www.rheodata.com Copyright, 2021 RheoData and affiliates @rheodatallc Compartments ########################## # Compartments - Custom ########################## resource "oci_identity_compartment" "test_compartment" { #Required # ocid1.tenancy.oc1..aaaaaaaaojorxdfprzt2sx75lweivou6xeomto4gvjxuuyraxcdakff4dujq compartment_id = var.root_compartment_ocid #Compartment to build in # This is a testing compartment description = var.compartment_description #Description for the compartment # testing2 name = var.compartment_name #Name of the compartment } data "oci_identity_compartments" "test_compartments" { compartment_id = var.tenancy_ocid compartment_id_in_subtree = true } output "compartment_info" { value = data.oci_identity_compartments.test_compartments.compartments }
  • 17. www.rheodata.com Copyright, 2021 RheoData and affiliates @rheodatallc ######################### # Compute Instance - OCI Provided ######################### module "compute-instance" { source = "oracle-terraform-modules/compute-instance/oci" version = "2.0.1" #Required Info compartment_ocid = "ocid1.compartment.oc1..aaaaaaaade5bxtniugmwuiynsonpq74fo2djk6hd64qu3lzw2xybym4svyhq" source_ocid = "ocid1.image.oc1.iad.aaaaaaaawtb4qxiwri5z2qjeey4zpzqpv2rtxhddzpbvojw2e2c2jevmthva" ssh_authorized_keys = "~/.ssh/id_rsa.pub" subnet_ocids = ["ocid1.subnet.oc1.iad.aaaaaaaamlgotv3goqjfihx53abpatmajjh45h32vljzfq3nsvwoqhqmouda"] #Optional Info instance_count = ”4" shape = "VM.Standard2.2" instance_display_name = "Test-Linux_" } output "compute_info" { value = [ "ID", module.compute-instance.instance_id, "Private", module.compute-instance.private_ip, "Public", module.compute-instance.public_ip ] } Compute Instances
  • 18. www.rheodata.com Copyright, 2021 RheoData and affiliates @rheodatallc Autonomous Database(s) • No OCI certified modules available • Deprecated Resources by version • Write custom oci_database_autonomous_database
  • 19. www.rheodata.com Copyright, 2021 RheoData and affiliates @rheodatallc Autonomous Database(s) ############################## # OCI - Autonomous Database(s) ############################## resource "oci_database_autonomous_database" "demo_adb" { #Required admin_password = ”<Password>" compartment_id = "ocid1.compartment.oc1..aaaaaaaade5bxtniugmwuiynsonpq74fo2djk6hd64qu3lzw2xybym4svyhq" cpu_core_count = "1" data_storage_size_in_tbs = "1" db_name = "RDADB1" #Optional db_version = "19c" db_workload = "OLTP" display_name = "RDADB1" is_free_tier = "false" license_model = "BRING_YOUR_OWN_LICENSE" source = "NONE" } output "demo_adb_ocid" { value = oci_database_autonomous_database.demo_adb.id }
  • 20. www.rheodata.com Copyright, 2021 RheoData and affiliates @rheodatallc GoldenGate Service (GGS) • Oracle GoldenGate (Microservices) as a Service • Builds one (1) deployment only resource "oci_golden_gate_deployment" "ggdev" { #Required compartment_id = "ocid1.compartment.oc1..aaaaaaaaeg3ug2usjziq5smuc5a6oc5up6ngkgy5ilkw2pgnjxz2xe67plbq" cpu_core_count = "2" deployment_type = "OGG" display_name = "ggdev" is_auto_scaling_enabled = "false" is_public = "true" license_model = "LICENSE_INCLUDED" subnet_id = var.devsubnet #nsg_ids = ["ocid1.networksecuritygroup.oc1.iad.aaaaaaaal4efdb64mjtutdfw5ju3dthibfmruqavaakx6olkjdx2lyaxmb3q"] ogg_data { admin_password = ”<password> admin_username = "oggadmin" deployment_name = "ggdev" } } #end-resource
  • 21. www.rheodata.com Copyright, 2021 RheoData and affiliates @rheodatallc Kubernetes (OKE) • Oracle Container Engine (OKE) is Oracle’s managed Kubernetes service • Lots of components within OCI – OCI module is best option module "oke" { source = "oracle-terraform-modules/oke/oci" version = "2.2.2" #Required api_fingerprint = var.fingerprint api_private_key_path = "~/.ssh/id_rsa" compartment_id = "ocid1.compartment.oc1……gmwuiynsonpq74fo2djk6hd64qu3lzw2xybym4svyhq" existing_key_id = "ocid1.key.oc1.iad.bbppj6k3aacuu.a……tsnq3ldofns5czn7vyzvxnvvnliq" region = var.region secret_id = "ocid1.vault.oc1.iad.bbppj6k3aacuu………w5e5mc6rhxcm7mzytdbsqt6g6ozaftjtj4uegbmwcuya" service_account_cluster_role_binding = "clustertestbinding" tenancy_id = var.tenancy_ocid user_id = var.user_ocid #Optional ssh_public_key_path = "~/.ssh/id_rsa.pub" }
  • 22. www.rheodata.com Copyright, 2021 RheoData and affiliates @rheodatallc Graph • Inherently exposes some of Terraform’s Core implementation details • Handy for debugging how Terraform is executing $ terraform graph digraph { compound = "true" newrank = "true" subgraph "root" { "[root] data.oci_identity_compartments.test_compartments (orphan)" [label = "data.oci_identity_compartments.test_compartments", shape = "box"] "[root] module.compute-instance.data.oci_core_instance_credentials.this (expand)" [label = "module.compute- instance.data.oci_core_instance_credentials.this", shape = "box"] "[root] module.compute-instance.data.oci_core_subnet.this (expand)" [label = "module.compute- instance.data.oci_core_subnet.this", shape = "box"] "[root] module.compute-instance.oci_core_instance.this (expand)" [label = "module.compute-instance.oci_core_instance.this", shape = "box"] "[root] module.compute-instance.oci_core_volume.this (expand)" [label = "module.compute-instance.oci_core_volume.this", shape = "box"] "[root] module.compute-instance.oci_core_volume_attachment.this (expand)" [label = "module.compute- instance.oci_core_volume_attachment.this", shape = "box"] "[root] oci_identity_compartment.test_compartment (orphan)" [label = "oci_identity_compartment.test_compartment", shape = "box"] "[root] output.compartment_info (destroy)" [label = "output.compartment_info (destroy)", shape = "note"] "[root] output.compute_info" [label = "output.compute_info", shape = "note"] "[root] provider["registry.terraform.io/hashicorp/oci"]" [label = "provider["registry.terraform.io/hashicorp/oci"]", shape = "diamond"] "[root] var.adw_ocid" [label = "var.adw_ocid", shape = "note"] "[root] var.compartment_description" [label = "var.compartment_description", shape = "note"] …
  • 23. www.rheodata.com Copyright, 2021 RheoData and affiliates @rheodatallc Stacks & Jobs Code Zip Upload & Run
  • 24. www.rheodata.com Copyright, 2021 RheoData and affiliates @rheodatallc Roadmap Introduction Terraform Basics OCI Provider & Modules Coding Examples Q & A
  • 25. www.rheodata.com Copyright, 2021 RheoData and affiliates @rheodatallc Questions
  • 26. www.rheodata.com Copyright, 2021 RheoData and affiliates @rheodatallc Contact RheoData info@rheodata.com @rheodatallc http://rheodata.com
  • 27. www.rheodata.com Copyright, 2021 RheoData and affiliates @rheodatallc RheoData Happy Hour Tonight! Immediately After the Networking Event 6 pm – 7 pm EST