Skip to main content
NetApp Solutions
O português é fornecido por meio de tradução automática para sua conveniência. O inglês precede o português em caso de inconsistências.

Automação do ciclo de vida do clone do SnapCenter

Colaboradores

NetApp

Essa solução oferece um kit de ferramentas de automação baseado em Ansible para configurar o banco de dados Oracle de alta disponibilidade e recuperação de desastres (HA/DR) com o AWS FSX ONTAP como armazenamento de banco de dados Oracle e instâncias EC2 como instâncias de computação na AWS.

Finalidade

Os clientes adoram o recurso FlexClone do storage NetApp ONTAP para bancos de dados com uma economia significativa de custos de storage. Este kit de ferramentas baseado em Ansible automatiza a instalação, clonagem e atualização de bancos de dados Oracle clonados conforme o cronograma usando os utilitários de linha de comando NetApp SnapCenter para otimizar o gerenciamento do ciclo de vida. O kit de ferramentas é aplicável aos bancos de dados Oracle implantados no storage ONTAP on-premises ou na nuvem pública e gerenciados pela ferramenta de IU do NetApp SnapCenter.

Esta solução aborda os seguintes casos de uso:

  • Configurar o arquivo de configuração de especificação clone do banco de dados Oracle.

  • Criar e atualizar clone banco de dados Oracle na programação definida pelo usuário.

Público-alvo

Esta solução destina-se às seguintes pessoas:

  • Um DBA que gerencia bancos de dados Oracle com o SnapCenter.

  • Um administrador de storage que gerencia o storage ONTAP com o SnapCenter.

  • Proprietário de um aplicativo que tem acesso à IU do SnapCenter.

Licença

Ao acessar, baixar, instalar ou usar o conteúdo neste repositório do GitHub, você concorda com os termos da Licença estabelecidos no "Ficheiro de licença".

Observação Existem certas restrições em torno de produzir e/ou compartilhar qualquer trabalho derivado com o conteúdo neste repositório do GitHub. Por favor, certifique-se de ler os termos da Licença antes de usar o conteúdo. Se você não concordar com todos os termos, não acesse, baixe ou use o conteúdo deste repositório.

Implantação de solução

Pré-requisitos para implantação

Details

A implantação requer os seguintes pré-requisitos.

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

Baixe o kit de ferramentas

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

O destino do Ansible hospeda a configuração de arquivos

Details

O kit de ferramentas inclui um arquivo hosts que define os destinos com os quais um manual do Ansible está sendo executado. Geralmente, são os hosts clone Oracle de destino. A seguir está um arquivo de exemplo. Uma entrada de host inclui o endereço IP do host de destino, bem como a chave ssh para um usuário de administrador acessar o host para executar o comando clone ou atualizar.

Hosts clone do 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]

Configuração de variáveis globais

Details

Os playbooks do Ansible recebem entradas variáveis de vários arquivos variáveis. Abaixo está um exemplo de arquivo variável global 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

Configuração das variáveis do host

Details

Variáveis de host são definidas no diretório host_vars nomeado como host_name.yml. Abaixo está um exemplo de arquivo de variável de host Oracle de destino ora_04.cie.NetApp.com.yml que mostra a configuração típica.

# 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 }}'

Configuração de servidor Oracle de destino de clone adicional

Details

O servidor Oracle de destino clone deve ter a mesma pilha de software Oracle que o servidor Oracle de origem instalado e corrigido. O usuário do Oracle .bash_profile tem ORACLE_BASE e ORACLE_HOME configurado. Além disso, a variável Oracle_HOME deve corresponder à configuração de servidor Oracle de origem. Segue-se um exemplo.

# .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

Execução do Playbook

Details

Há um total de três playbooks para executar o ciclo de vida do clone de banco de dados Oracle com utilitários de CLI do SnapCenter.

  1. Instalar os pré-requisitos da controladora Ansible - apenas uma vez.

    ansible-playbook -i hosts ansible_requirements.yml
  2. Configuração do arquivo de especificação clone - apenas uma vez.

    ansible-playbook -i hosts clone_1_setup.yml -u admin -e @vars/vars.yml
  3. Crie e atualize o banco de dados clone regularmente a partir do crontab com um script shell para chamar um playbook de atualização.

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

Para um banco de dados clone adicional, crie um clone_n_setup.yml e clone_n_refresh.yml separados e clone_n_refresh.sh. Configure os hosts de destino do Ansible e o arquivo hostname.yml no diretório host_vars de acordo.

Onde encontrar informações adicionais

Para saber mais sobre a automação da solução NetApp, consulte o seguinte site "Automação de soluções da NetApp"