Toolkit for managing Oracle databases on Google Cloud.
Supports usage with:
-
Create a Google Cloud VM to act as a control node; it should be on a VPC network that has SSH access to the database host.
-
Create a Google Cloud VM to act as the database host. Add aditional disks named
oracle_home
,data
, andreco
for the oracle_home, database data, and recovery area, respectively. -
Extract the toolkit code on the control node.
-
Create a Cloud Storage bucket to host Oracle software images.
gsutil mb -b on gs://installation-media-1234
-
Download software from Oracle and populate the bucket. Use check-swlib.sh to determine which files are required for your Oracle version.
-
On the control node, create a SSH key
~/.ssh/db1
-
On the database host, create a user
ansible
with sudo privileges. Add the SSH public key from the previous step into a~ansible/.ssh/authorized_keys
file. -
Create a JSON file
db1_mounts.json
with disk mounts:[ { "purpose": "software", "blk_device": "/dev/disk/by-id/google-oraclehome", "name": "u01", "fstype": "xfs", "mount_point": "/u01", "mount_opts": "nofail" }, { "purpose": "data", "blk_device": "/dev/disk/by-id/google-data", "name": "u02", "fstype": "xfs", "mount_point": "/u02", "mount_opts": "nofail" }, { "purpose": "reco", "blk_device": "/dev/disk/by-id/google-reco", "name": "u03", "fstype": "xfs", "mount_point": "/u03", "mount_opts": "nofail" }, ]
-
Execute
install-oracle.sh
, substituting the correct IP address for the database VM:bash install-oracle.sh \ --ora-swlib-bucket gs://installation-media-1234 \ --instance-ssh-user ansible \ --instance-ssh-key ~/.ssh/id_rsa \ --backup-dest /u03/backups \ --ora-swlib-path /u01/oracle_install \ --ora-version 19 \ --ora-release latest \ --ora-swlib-type gcs \ --ora-data-mounts db1_mounts.json \ --ora-data-destination /u02/oradata \ --ora-reco-destination /u03/fast_recovery_area \ --ora-db-name orcl \ --instance-ip-addr 172.16.1.1
Full documentation is available in the user guide
An Ansible role and playbook performs a destructive brute-force removal of Oracle software and configuration. It does not remove other host prerequisites.
Run the destructive brute-force Oracle software removal with cleanup-oracle.sh
or ansible-playbook brute-cleanup.yml
Contributions and pull requests are welcome. See docs/contributing.md and docs/code-of-conduct.md for details.
This product is licensed under the Apache 2 license. This is not an officially supported Google project