Enterprises are moving to the hybrid cloud and NetApp automation solutions, such as the NetApp Ansible automation toolkit, provide the fast tracks to help you reach your destination. In this series of Oracle database automation blog posts, I showcase how NetApp can help you manage your Oracle database workload and environment with the Ansible automation toolkit.
NetApp Oracle database automation solutions
The Oracle database remains the cornerstone of many enterprise applications despite dramatic evolution in the database landscape over the past decades, with the rise of NO SQL, affordable in-memory, and GPU-accelerated compute databases, among others. As more enterprises adopt hybrid cloud strategies for their database workload, it is essential that you have a good plan to manage your Oracle database in the hybrid cloud to ensure you have a successful enterprise database operation.
To easily facilitate you in adopting a hybrid multi-cloud strategy for your enterprise business operation, NetApp invented the concept of data fabric and has gone on to build extensive enabling technology stacks, solutions, and services to help you achieve your operational goals in a hybrid multi-cloud setting.
NetApp data fabric orchestration removes the complexity of operating your Oracle databases in hybrid multi-cloud environment. At the core of NetApp data fabric, ONTAP is the central software that enables smooth data flow between your on-prem and your public cloud of choice. Better yet, the NetApp solution team has built an automation tool kit using Ansible that helps you deliver the objectives of your Oracle database infrastructure automation in the areas of database deployment, data protection, disaster recovery, DevOps, data migration, and database consolidation in a hybrid multi-cloud environment.
Using the Ansible automation toolkit
Starting from database deployment, the Ansible automation toolkit empowers you to run your Oracle database workload where it makes most business and economic sense, either on-prem or in the cloud, at the push of a button.
The Ansible automation toolkit is a declarative, state-based, idempotent configuration management platform. It uses simple to read/write YAML files to perform setup, configuration, and operation management of your Oracle environment. It is a powerful tool that is easy to use and with its low learning curve is ideal for a beginner.
In the Ansible automation toolkit, Oracle deployment and configuration tasks are defined in playbook files, which you can execute from either command line, the Ansible Tower, or an equivalent GUI tool such as AWX, against your defined on-prem or cloud target. You can also logically group Ansible tasks into roles to streamline and simplify the tasks groups. The Ansible Oracle database deployment solution toolkit is powered by three roles driven by the user defined parameters as shown in the following table.
Roles
|
Number of Tasks
|
User Defined Parameters
|
ONTAP
|
20
|
10
|
Linux
|
34
|
4
|
Oracle
|
29
|
11
|
- The ONTAP role performs functions such as running a prerequisites check, creating database storage SVM, provisioning database volumes, configuring logical interfaces for client access, exporting NFS policy, and so on.
- The Linux role configures and optimizes OS kernel before Oracle installation, which includes mounting database volumes, installing Oracle preinstall rpm, disabling transparent huge page, SElinux, firewall, enabling NTP services, configuring huge pages if desired, and, or, other preinstall configuration tasks.
- The Oracle role installs Oracle 19c software and applies the RU patch in the process. It then creates an Oracle database listener and a container database with a predefined number of pluggable databases. The Oracle role finishes up with a post-install configuration by setting up an Oracle user environment, enabling Oracle NFS client, configuring the database archive mode, and automating the database shutdown and startup when you reboot your operating system, and so on.
For an overview on how automation playbook works, have a look at these short videos that demonstrates how an Oracle 19c database is deployed with automation, Part1 – Requirements and AWX Setup, Part2 – AWX Execution and Takeaways, Part3 - Requirements and CLI Setup, Part4 – CLI Execution and Takeaways.
The current version of the Oracle playbook is highly modularized to support Oracle database single instance deployment on both RHEL 7, and 8, and Oracle Linux 7, and 8, and it supports ONTAP® NFS data protocols for Oracle data storage.
Regardless of the number of Oracle hosts and the number of container databases you deploy on a single Oracle host, your playbooks are executed the same way without requiring you to change a single line of code. The deployment consists of setting up your Ansible controller and then copying and pasting your user defined parameters, as noted in column 3 in the previous table, to AWX or CLI variable files before execution. To help you with the user defined parameter file configuration, a variables generation form is embedded in the deployment instruction page that allows you to enter parameters while going through the deployment instruction details. A copy button on the form allows you to easily transfer your user definable parameters to the Ansible runtime environment.
The NetApp Oracle database automation solution overcomes the complexities in hybrid cloud database operation and delivers the benefits of reducing time to value, implementing best practices, database customization, and eliminating human errors while improving database administrator productivity.
How to get started
If you are intrigued and interested in trying out the NetApp Oracle automation solution kit, go to NetApp Oracle Database Infrastructure Automation.
If you are new to NetApp solution automation, here is a brief introduction to help kick-start your automation journey.
For detailed instruction on automating your Oracle database deployment, see Oracle 19c Database Deployment Instruction.
The NetApp Oracle automation solution kit is supported with a community support slack channel at the NetApp Community Support.