Skip to main content
NetApp Solutions
简体中文版经机器翻译而成,仅供参考。如与英语版出现任何冲突,应以英语版为准。

SnapCenter Oracle克隆生命周期自动化

贡献者

NetApp公司Allen Cao、Niyaz Mohamed

此解决方案提供了一个基于Ans得 的自动化工具包、用于在AWS中配置Oracle数据库高可用性和灾难恢复(High Availability and Disaster Recovery、HA/DR)、其中AWS FSx ONTAP用作Oracle数据库存储、EC2实例用作计算实例。

目的

客户喜欢NetApp ONTAP存储的FlexClone功能、该功能可为数据库节省大量存储成本。此基于Ans可 通过NetApp SnapCenter命令行实用程序按计划自动设置、克隆和刷新已克隆的Oracle数据库、以简化生命周期管理。该工具包适用于部署到ONTAP存储(内部未命中或公共云)并由NetApp SnapCenter UI工具管理的Oracle数据库。

此解决方案 可解决以下使用情形:

  • 设置Oracle数据库克隆规范配置文件。

  • 按照用户定义的计划创建和刷新克隆Oracle数据库。

audience

此解决方案 适用于以下人员:

  • 使用SnapCenter管理Oracle数据库的数据库管理员。

  • 使用SnapCenter管理ONTAP存储的存储管理员。

  • 有权访问SnapCenter UI的应用程序所有者。

许可证

访问、下载、安装或使用此GitHub存储库中的内容即表示您同意中列出的许可条款 "许可证文件"

备注 在使用此GitHub存储库中的内容制作和/或共享任何衍生作品方面存在一些限制。在使用内容之前、请确保您已阅读许可条款。如果您不同意所有条款、请勿访问、下载或使用此存储库中的内容。

解决方案 部署

部署的前提条件

Details

部署需要满足以下前提条件。

Ansible controller:
  Ansible v.2.10 and higher
  ONTAP collection 21.19.1
  Python 3
  Python libraries:
    netapp-lib
    xmltodict
    jmespath
SnapCenter server:
  version 5.0
  backup policy configured
  Source database protected with a backup policy
Oracle servers:
  Source server managed by SnapCenter
  Target server managed by SnapCenter
  Target server with identical Oracle software stack as source server installed and configured

下载此工具包

Details
git clone https://bitbucket.ngage.netapp.com/scm/ns-bb/na_oracle_clone_lifecycle.git

Ans可 处理目标主机文件配置

Details

该工具包包含一个主机文件、用于定义运行Ands得以 执行的Playbook的目标。通常、它是目标Oracle克隆主机。下面是一个示例文件。主机条目包括目标主机IP地址以及用于管理员用户访问主机以执行克隆或刷新命令的ssh密钥。

# Oracle克隆主机

[clone_1]
ora_04.cie.netapp.com ansible_host=10.61.180.29 ansible_ssh_private_key_file=ora_04.pem
[clone_2]
[clone_3]

全局变量配置

Details

AnsablePlaybooks从多个变量文件中获取变量输入。下面是一个全局变量文件vars.yml示例。

# ONTAP specific config variables
# SnapCtr specific config variables
snapctr_usr: xxxxxxxx
snapctr_pwd: 'xxxxxxxx'
backup_policy: 'Oracle Full offline Backup'
# Linux specific config variables
# Oracle specific config variables

主机变量配置

Details

主机变量在名为{{host_name}}.yml的host_vars目录中定义。以下是显示典型配置的目标Oracle主机变量文件ora_04.cie.netapp.com.yml的示例。

# User configurable Oracle clone db host specific parameters
# Source database to clone from
source_db_sid: NTAP1
source_db_host: ora_03.cie.netapp.com
# Clone database
clone_db_sid: NTAP1DEV
snapctr_obj_id: '{{ source_db_host }}\{{ source_db_sid }}'

其他克隆目标Oracle服务器配置

Details

克隆目标Oracle服务器应与安装并修补的源Oracle服务器具有相同的Oracle软件堆栈。Oracle用户.bash_profile已配置$oracle_base和$oracle_home。此外、$oracle_home变量应与源Oracle服务器设置匹配。下面是一个示例。

# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi
# User specific environment and startup programs
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/19.0.0/NTAP1

执行操作手册

Details

共有三本使用SnapCenter命令行界面实用程序执行Oracle数据库克隆生命周期的操作手册。

  1. 安装Andsone控制器的前提条件-仅一次。

    ansible-playbook -i hosts ansible_requirements.yml
  2. 设置克隆规范文件—仅一次。

    ansible-playbook -i hosts clone_1_setup.yml -u admin -e @vars/vars.yml
  3. 使用shell脚本定期从crontab创建和刷新克隆数据库、以调用刷新操作手册。

    0 */4 * * * /home/admin/na_oracle_clone_lifecycle/clone_1_refresh.sh

对于其他克隆数据库、请创建一个单独的CLONE n_setup.yml和CLONE n_refresh .yml以及CLONE n_refresh。在host_vars目录中相应地配置"Andsvey"目标主机和hostname.yml文件。

从何处查找追加信息

要了解有关NetApp 解决方案 自动化的详细信息、请查看以下网站 "NetApp 解决方案自动化"