TR-4965: Implantação e proteção de banco de dados Oracle no AWS FSx/EC2 com iSCSI/ASM
Allen Cao, Niyaz Mohamed, NetApp
Esta solução fornece uma visão geral e detalhes para implantação e proteção do banco de dados Oracle no armazenamento AWS FSx ONTAP e instância de computação EC2 com protocolo iSCSI e banco de dados Oracle configurado no ReStart autônomo usando o ASM como gerenciador de volume.
Propósito
ASM (Automatic Storage Management) é um gerenciador de volumes de armazenamento Oracle popular empregado em muitas instalações Oracle. Também é a solução de gerenciamento de armazenamento recomendada pela Oracle. Ele fornece uma alternativa aos gerenciadores de volume e sistemas de arquivos convencionais. Desde a versão 11g do Oracle, o ASM é empacotado com infraestrutura de grade em vez de um banco de dados. Como resultado, para utilizar o Oracle ASM para gerenciamento de armazenamento sem RAC, você deve instalar a infraestrutura de grade do Oracle em um servidor autônomo, também conhecido como Oracle Restart. Fazer isso certamente adiciona mais complexidade na implantação do banco de dados Oracle. No entanto, como o nome indica, quando o Oracle era implantado no modo de reinicialização, os serviços Oracle com falha eram reiniciados automaticamente pela infraestrutura de grade ou após uma reinicialização do host sem intervenção do usuário, o que fornece um certo grau de alta disponibilidade ou funcionalidade de alta disponibilidade.
Nesta documentação, demonstramos como implantar um banco de dados Oracle com o protocolo iSCSI e Oracle ASM em um ambiente de armazenamento Amazon FSx ONTAP com instâncias de computação EC2. Também demonstramos como usar o serviço NetApp SnapCenter por meio do console NetApp BlueXP para fazer backup, restaurar e clonar seu banco de dados Oracle para desenvolvimento/teste ou outros casos de uso para operação de banco de dados com eficiência de armazenamento na nuvem pública da AWS.
Esta solução aborda os seguintes casos de uso:
-
Implantação de banco de dados Oracle em instâncias de armazenamento Amazon FSx ONTAP e computação EC2 com iSCSI/ASM
-
Testando e validando uma carga de trabalho Oracle na nuvem pública AWS com iSCSI/ASM
-
Testando e validando funcionalidades de reinicialização do banco de dados Oracle implantadas na AWS
Público
Esta solução é destinada às seguintes pessoas:
-
Um DBA que gostaria de implantar o Oracle em uma nuvem pública da AWS com iSCSI/ASM.
-
Um arquiteto de soluções de banco de dados que gostaria de testar cargas de trabalho Oracle na nuvem pública da AWS.
-
O administrador de armazenamento que gostaria de implantar e gerenciar um banco de dados Oracle implantado no armazenamento AWS FSx.
-
O proprietário do aplicativo que gostaria de configurar um banco de dados Oracle no AWS FSx/EC2.
Ambiente de teste e validação de soluções
O teste e a validação desta solução foram realizados em um ambiente AWS FSx e EC2 que pode não corresponder ao ambiente de implantação final. Para mais informações, consulte a seção Fatores-chave para consideração de implantação .
Arquitetura
Componentes de hardware e software
Hardware |
||
Armazenamento FSx ONTAP |
Versão atual oferecida pela AWS |
Um cluster FSx HA na mesma VPC e zona de disponibilidade |
Instância EC2 para computação |
t2.xlarge/4vCPU/16G |
Duas instâncias EC2 T2 xlarge EC2, uma como servidor de banco de dados primário e a outra como servidor de banco de dados clone |
Software |
||
RedHat Linux |
RHEL-8.6.0_HVM-20220503-x86_64-2-Hora2-GP2 |
Assinatura RedHat implantada para teste |
Infraestrutura de grade Oracle |
Versão 19.18 |
Patch RU aplicado p34762026_190000_Linux-x86-64.zip |
Banco de Dados Oracle |
Versão 19.18 |
Patch RU aplicado p34765931_190000_Linux-x86-64.zip |
Oracle OPatch |
Versão 12.2.0.1.36 |
Último patch p6880880_190000_Linux-x86-64.zip |
Serviço SnapCenter |
Versão |
v2.3.1.2324 |
Fatores-chave para consideração de implantação
-
Instâncias de computação do EC2. Nesses testes e validações, usamos um tipo de instância t2.xlarge do AWS EC2 para a instância de computação do banco de dados Oracle. A NetApp recomenda usar uma instância EC2 do tipo M5 como instância de computação para Oracle na implantação de produção porque ela é otimizada para cargas de trabalho de banco de dados. Você precisa dimensionar a instância do EC2 adequadamente para o número de vCPUs e a quantidade de RAM com base nos requisitos reais da carga de trabalho.
-
Implantação de clusters de HA de armazenamento FSx em uma ou várias zonas. Nesses testes e validações, implantamos um cluster FSx HA em uma única zona de disponibilidade da AWS. Para implantação de produção, a NetApp recomenda implantar um par FSx HA em duas zonas de disponibilidade diferentes. Um cluster FSx HA é sempre provisionado em um par HA que é espelhado de forma sincronizada em um par de sistemas de arquivos ativos-passivos para fornecer redundância em nível de armazenamento. A implantação em várias zonas aumenta ainda mais a alta disponibilidade em caso de falha em uma única zona da AWS.
-
Dimensionamento do cluster de armazenamento FSx. Um sistema de arquivos de armazenamento Amazon FSx ONTAP fornece até 160.000 IOPS SSD brutos, taxa de transferência de até 4 GBps e capacidade máxima de 192 TiB. No entanto, você pode dimensionar o cluster em termos de IOPS provisionados, taxa de transferência e limite de armazenamento (mínimo de 1.024 GiB) com base nos seus requisitos reais no momento da implantação. A capacidade pode ser ajustada dinamicamente sem afetar a disponibilidade do aplicativo.
-
Layout de dados e logs do Oracle. Em nossos testes e validações, implantamos dois grupos de discos ASM para dados e logs, respectivamente. Dentro do grupo de discos +DATA asm, provisionamos quatro LUNs em um volume de dados. Dentro do grupo de discos +LOGS asm, provisionamos dois LUNs em um volume de logs. Em geral, vários LUNs dispostos em um volume Amazon FSx ONTAP oferecem melhor desempenho.
-
Configuração iSCSI. O servidor de banco de dados da instância EC2 se conecta ao armazenamento FSx com o protocolo iSCSI. As instâncias do EC2 geralmente são implantadas com uma única interface de rede ou ENI. A única interface NIC transporta tráfego iSCSI e de aplicativo. É importante avaliar o requisito de pico de taxa de transferência de E/S do banco de dados Oracle analisando cuidadosamente o relatório Oracle AWR para escolher uma instância de computação EC2 correta que atenda aos requisitos de taxa de transferência de tráfego do aplicativo e iSCSI. A NetApp também recomenda alocar quatro conexões iSCSI para ambos os pontos de extremidade iSCSI do FSx com multicaminhos configurados corretamente.
-
Nível de redundância do Oracle ASM a ser usado para cada grupo de discos do Oracle ASM que você criar. Como o FSx já espelha o armazenamento no nível do cluster FSx, você deve usar Redundância Externa, o que significa que a opção não permite que o Oracle ASM espelhe o conteúdo do grupo de discos.
-
Backup de banco de dados. A NetApp fornece uma versão SaaS do serviço de SnapCenter software para backup, restauração e clonagem de banco de dados na nuvem, disponível por meio da interface de usuário do console NetApp BlueXP . A NetApp recomenda implementar esse serviço para obter backup SnapShot rápido (menos de um minuto), restauração rápida (poucos minutos) de banco de dados e clonagem de banco de dados.
Implantação da solução
A seção a seguir fornece procedimentos de implantação passo a passo.
Pré-requisitos para implantação
Details
A implantação requer os seguintes pré-requisitos.
-
Uma conta da AWS foi configurada e os segmentos de VPC e rede necessários foram criados dentro da sua conta da AWS.
-
No console do AWS EC2, você deve implantar duas instâncias do EC2 Linux, uma como o servidor Oracle DB principal e um servidor de DB de destino clone alternativo opcional. Veja o diagrama de arquitetura na seção anterior para obter mais detalhes sobre a configuração do ambiente. Revise também o"Guia do usuário para instâncias Linux" para maiores informações.
-
No console do AWS EC2, implante clusters de HA de armazenamento do Amazon FSx ONTAP para hospedar os volumes do banco de dados Oracle. Se você não estiver familiarizado com a implantação do armazenamento FSx, consulte a documentação"Criação de sistemas de arquivos FSx ONTAP" para obter instruções passo a passo.
-
As etapas 2 e 3 podem ser executadas usando o seguinte kit de ferramentas de automação do Terraform, que cria uma instância EC2 denominada
ora_01
e um sistema de arquivos FSx chamadofsx_01
. Revise as instruções cuidadosamente e altere as variáveis para adequá-las ao seu ambiente antes da execução.git clone https://github.com/NetApp-Automation/na_aws_fsx_ec2_deploy.git
|
Certifique-se de ter alocado pelo menos 50 GB no volume raiz da instância do EC2 para ter espaço suficiente para preparar os arquivos de instalação do Oracle. |
Configuração do kernel da instância EC2
Details
Com os pré-requisitos provisionados, efetue login na instância do EC2 como ec2-user e use sudo como usuário root para configurar o kernel do Linux para a instalação do Oracle.
-
Crie um diretório de preparação
/tmp/archive
pasta e defina o777
permissão.mkdir /tmp/archive chmod 777 /tmp/archive
-
Baixe e prepare os arquivos binários de instalação do Oracle e outros arquivos rpm necessários para o
/tmp/archive
diretório.Veja a lista a seguir de arquivos de instalação a serem declarados em
/tmp/archive
na instância EC2.[ec2-user@ip-172-30-15-58 ~]$ ls -l /tmp/archive total 10537316 -rw-rw-r--. 1 ec2-user ec2-user 19112 Mar 21 15:57 compat-libcap1-1.10-7.el7.x86_64.rpm -rw-rw-r-- 1 ec2-user ec2-user 3059705302 Mar 21 22:01 LINUX.X64_193000_db_home.zip -rw-rw-r-- 1 ec2-user ec2-user 2889184573 Mar 21 21:09 LINUX.X64_193000_grid_home.zip -rw-rw-r--. 1 ec2-user ec2-user 589145 Mar 21 15:56 netapp_linux_unified_host_utilities-7-1.x86_64.rpm -rw-rw-r--. 1 ec2-user ec2-user 31828 Mar 21 15:55 oracle-database-preinstall-19c-1.0-2.el8.x86_64.rpm -rw-rw-r-- 1 ec2-user ec2-user 2872741741 Mar 21 22:31 p34762026_190000_Linux-x86-64.zip -rw-rw-r-- 1 ec2-user ec2-user 1843577895 Mar 21 22:32 p34765931_190000_Linux-x86-64.zip -rw-rw-r-- 1 ec2-user ec2-user 124347218 Mar 21 22:33 p6880880_190000_Linux-x86-64.zip -rw-r--r-- 1 ec2-user ec2-user 257136 Mar 22 16:25 policycoreutils-python-utils-2.9-9.el8.noarch.rpm
-
Instale o RPM de pré-instalação do Oracle 19c, que satisfaz a maioria dos requisitos de configuração do kernel.
yum install /tmp/archive/oracle-database-preinstall-19c-1.0-2.el8.x86_64.rpm
-
Baixe e instale o que falta
compat-libcap1
no Linux 8.yum install /tmp/archive/compat-libcap1-1.10-7.el7.x86_64.rpm
-
No NetApp, baixe e instale os utilitários do host NetApp .
yum install /tmp/archive/netapp_linux_unified_host_utilities-7-1.x86_64.rpm
-
Instalar
policycoreutils-python-utils
, que não está disponível na instância EC2.yum install /tmp/archive/policycoreutils-python-utils-2.9-9.el8.noarch.rpm
-
Instale o Open JDK versão 1.8.
yum install java-1.8.0-openjdk.x86_64
-
Instalar utilitários do iniciador iSCSI.
yum install iscsi-initiator-utils
-
Instalar
sg3_utils
.yum install sg3_utils
-
Instalar
device-mapper-multipath
.yum install device-mapper-multipath
-
Desabilite hugepages transparentes no sistema atual.
echo never > /sys/kernel/mm/transparent_hugepage/enabled echo never > /sys/kernel/mm/transparent_hugepage/defrag
Adicione as seguintes linhas em
/etc/rc.local
desabilitartransparent_hugepage
após reinicialização:# Disable transparent hugepages if test -f /sys/kernel/mm/transparent_hugepage/enabled; then echo never > /sys/kernel/mm/transparent_hugepage/enabled fi if test -f /sys/kernel/mm/transparent_hugepage/defrag; then echo never > /sys/kernel/mm/transparent_hugepage/defrag fi
-
Desabilite o selinux alterando
SELINUX=enforcing
paraSELINUX=disabled
. Você deve reinicializar o host para que a alteração tenha efeito.vi /etc/sysconfig/selinux
-
Adicione as seguintes linhas a
limit.conf
para definir o limite do descritor de arquivo e o tamanho da pilha sem aspas" "
.vi /etc/security/limits.conf "* hard nofile 65536" "* soft stack 10240"
-
Adicione espaço de swap à instância EC2 seguindo esta instrução:"Como aloco memória para funcionar como espaço de swap em uma instância do Amazon EC2 usando um arquivo de swap?" A quantidade exata de espaço a ser adicionada depende do tamanho da RAM de até 16 G.
-
Mudar
node.session.timeo.replacement_timeout
noiscsi.conf
arquivo de configuração de 120 para 5 segundos.vi /etc/iscsi/iscsid.conf
-
Habilite e inicie o serviço iSCSI na instância EC2.
systemctl enable iscsid systemctl start iscsid
-
Recupere o endereço do iniciador iSCSI a ser usado para mapeamento de LUN de banco de dados.
cat /etc/iscsi/initiatorname.iscsi
-
Adicione o grupo ASM a ser usado para o grupo asm sysasm.
groupadd asm
-
Modifique o usuário oracle para adicionar o ASM como um grupo secundário (o usuário oracle deve ter sido criado após a instalação do RPM de pré-instalação do Oracle).
usermod -a -G asm oracle
-
Pare e desative o firewall do Linux se estiver ativo.
systemctl stop firewalld systemctl disable firewalld
-
Reinicie a instância do EC2.
Provisionar e mapear volumes de banco de dados e LUNs para o host da instância EC2
Details
Provisione três volumes a partir da linha de comando efetuando login no cluster FSx via ssh como usuário fsxadmin com IP de gerenciamento do cluster FSx para hospedar os arquivos binários, de dados e de logs do banco de dados Oracle.
-
Efetue login no cluster FSx via SSH como usuário fsxadmin.
ssh fsxadmin@172.30.15.53
-
Execute o seguinte comando para criar um volume para o binário Oracle.
vol create -volume ora_01_biny -aggregate aggr1 -size 50G -state online -type RW -snapshot-policy none -tiering-policy snapshot-only
-
Execute o seguinte comando para criar um volume para dados Oracle.
vol create -volume ora_01_data -aggregate aggr1 -size 100G -state online -type RW -snapshot-policy none -tiering-policy snapshot-only
-
Execute o seguinte comando para criar um volume para logs do Oracle.
vol create -volume ora_01_logs -aggregate aggr1 -size 100G -state online -type RW -snapshot-policy none -tiering-policy snapshot-only
-
Crie um LUN binário dentro do volume binário do banco de dados.
lun create -path /vol/ora_01_biny/ora_01_biny_01 -size 40G -ostype linux
-
Crie LUNs de dados dentro do volume de dados do banco de dados.
lun create -path /vol/ora_01_data/ora_01_data_01 -size 20G -ostype linux lun create -path /vol/ora_01_data/ora_01_data_02 -size 20G -ostype linux lun create -path /vol/ora_01_data/ora_01_data_03 -size 20G -ostype linux lun create -path /vol/ora_01_data/ora_01_data_04 -size 20G -ostype linux
-
Crie LUNs de log dentro do volume de logs do banco de dados.
lun create -path /vol/ora_01_logs/ora_01_logs_01 -size 40G -ostype linux lun create -path /vol/ora_01_logs/ora_01_logs_02 -size 40G -ostype linux
-
Crie um igroup para a instância do EC2 com o iniciador recuperado da etapa 14 da configuração do kernel do EC2 acima.
igroup create -igroup ora_01 -protocol iscsi -ostype linux -initiator iqn.1994-05.com.redhat:f65fed7641c2
-
Mapeie os LUNs para o igroup criado acima. Incrementa o ID do LUN sequencialmente para cada LUN adicional dentro de um volume.
lun map -path /vol/ora_01_biny/ora_01_biny_01 -igroup ora_01 -vserver svm_ora -lun-id 0 lun map -path /vol/ora_01_data/ora_01_data_01 -igroup ora_01 -vserver svm_ora -lun-id 1 lun map -path /vol/ora_01_data/ora_01_data_02 -igroup ora_01 -vserver svm_ora -lun-id 2 lun map -path /vol/ora_01_data/ora_01_data_03 -igroup ora_01 -vserver svm_ora -lun-id 3 lun map -path /vol/ora_01_data/ora_01_data_04 -igroup ora_01 -vserver svm_ora -lun-id 4 lun map -path /vol/ora_01_logs/ora_01_logs_01 -igroup ora_01 -vserver svm_ora -lun-id 5 lun map -path /vol/ora_01_logs/ora_01_logs_02 -igroup ora_01 -vserver svm_ora -lun-id 6
-
Valide o mapeamento do LUN.
mapping show
Espera-se que isso retorne:
FsxId02ad7bf3476b741df::> mapping show (lun mapping show) Vserver Path Igroup LUN ID Protocol ---------- ---------------------------------------- ------- ------ -------- svm_ora /vol/ora_01_biny/ora_01_biny_01 ora_01 0 iscsi svm_ora /vol/ora_01_data/ora_01_data_01 ora_01 1 iscsi svm_ora /vol/ora_01_data/ora_01_data_02 ora_01 2 iscsi svm_ora /vol/ora_01_data/ora_01_data_03 ora_01 3 iscsi svm_ora /vol/ora_01_data/ora_01_data_04 ora_01 4 iscsi svm_ora /vol/ora_01_logs/ora_01_logs_01 ora_01 5 iscsi svm_ora /vol/ora_01_logs/ora_01_logs_02 ora_01 6 iscsi
Configuração de armazenamento de banco de dados
Details
Agora, importe e configure o armazenamento FSx para a infraestrutura de grade do Oracle e a instalação do banco de dados no host da instância do EC2.
-
Efetue login na instância EC2 via SSH como usuário ec2 com sua chave SSH e endereço IP da instância EC2.
ssh -i ora_01.pem ec2-user@172.30.15.58
-
Descubra os endpoints iSCSI do FSx usando o endereço IP iSCSI do SVM. Em seguida, mude para o endereço do portal específico do seu ambiente.
sudo iscsiadm iscsiadm --mode discovery --op update --type sendtargets --portal 172.30.15.51
-
Estabeleça sessões iSCSI efetuando login em cada destino.
sudo iscsiadm --mode node -l all
A saída esperada do comando é:
[ec2-user@ip-172-30-15-58 ~]$ sudo iscsiadm --mode node -l all Logging in to [iface: default, target: iqn.1992-08.com.netapp:sn.1f795e65c74911edb785affbf0a2b26e:vs.3, portal: 172.30.15.51,3260] Logging in to [iface: default, target: iqn.1992-08.com.netapp:sn.1f795e65c74911edb785affbf0a2b26e:vs.3, portal: 172.30.15.13,3260] Login to [iface: default, target: iqn.1992-08.com.netapp:sn.1f795e65c74911edb785affbf0a2b26e:vs.3, portal: 172.30.15.51,3260] successful. Login to [iface: default, target: iqn.1992-08.com.netapp:sn.1f795e65c74911edb785affbf0a2b26e:vs.3, portal: 172.30.15.13,3260] successful.
-
Visualize e valide uma lista de sessões iSCSI ativas.
sudo iscsiadm --mode session
Retorne as sessões iSCSI.
[ec2-user@ip-172-30-15-58 ~]$ sudo iscsiadm --mode session tcp: [1] 172.30.15.51:3260,1028 iqn.1992-08.com.netapp:sn.1f795e65c74911edb785affbf0a2b26e:vs.3 (non-flash) tcp: [2] 172.30.15.13:3260,1029 iqn.1992-08.com.netapp:sn.1f795e65c74911edb785affbf0a2b26e:vs.3 (non-flash)
-
Verifique se os LUNs foram importados para o host.
sudo sanlun lun show
Isso retornará uma lista de LUNs Oracle do FSx.
[ec2-user@ip-172-30-15-58 ~]$ sudo sanlun lun show controller(7mode/E-Series)/ device host lun vserver(cDOT/FlashRay) lun-pathname filename adapter protocol size product svm_ora /vol/ora_01_logs/ora_01_logs_02 /dev/sdn host3 iSCSI 40g cDOT svm_ora /vol/ora_01_logs/ora_01_logs_01 /dev/sdm host3 iSCSI 40g cDOT svm_ora /vol/ora_01_data/ora_01_data_03 /dev/sdk host3 iSCSI 20g cDOT svm_ora /vol/ora_01_data/ora_01_data_04 /dev/sdl host3 iSCSI 20g cDOT svm_ora /vol/ora_01_data/ora_01_data_01 /dev/sdi host3 iSCSI 20g cDOT svm_ora /vol/ora_01_data/ora_01_data_02 /dev/sdj host3 iSCSI 20g cDOT svm_ora /vol/ora_01_biny/ora_01_biny_01 /dev/sdh host3 iSCSI 40g cDOT svm_ora /vol/ora_01_logs/ora_01_logs_02 /dev/sdg host2 iSCSI 40g cDOT svm_ora /vol/ora_01_logs/ora_01_logs_01 /dev/sdf host2 iSCSI 40g cDOT svm_ora /vol/ora_01_data/ora_01_data_04 /dev/sde host2 iSCSI 20g cDOT svm_ora /vol/ora_01_data/ora_01_data_02 /dev/sdc host2 iSCSI 20g cDOT svm_ora /vol/ora_01_data/ora_01_data_03 /dev/sdd host2 iSCSI 20g cDOT svm_ora /vol/ora_01_data/ora_01_data_01 /dev/sdb host2 iSCSI 20g cDOT svm_ora /vol/ora_01_biny/ora_01_biny_01 /dev/sda host2 iSCSI 40g cDOT
-
Configurar o
multipath.conf
arquivo com as seguintes entradas padrão e de lista negra.sudo vi /etc/multipath.conf defaults { find_multipaths yes user_friendly_names yes } blacklist { devnode "^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*" devnode "^hd[a-z]" devnode "^cciss.*" }
-
Inicie o serviço multipath.
sudo systemctl start multipathd
Agora os dispositivos multipath aparecem no
/dev/mapper
diretório.[ec2-user@ip-172-30-15-58 ~]$ ls -l /dev/mapper total 0 lrwxrwxrwx 1 root root 7 Mar 21 20:13 3600a09806c574235472455534e68512d -> ../dm-0 lrwxrwxrwx 1 root root 7 Mar 21 20:13 3600a09806c574235472455534e685141 -> ../dm-1 lrwxrwxrwx 1 root root 7 Mar 21 20:13 3600a09806c574235472455534e685142 -> ../dm-2 lrwxrwxrwx 1 root root 7 Mar 21 20:13 3600a09806c574235472455534e685143 -> ../dm-3 lrwxrwxrwx 1 root root 7 Mar 21 20:13 3600a09806c574235472455534e685144 -> ../dm-4 lrwxrwxrwx 1 root root 7 Mar 21 20:13 3600a09806c574235472455534e685145 -> ../dm-5 lrwxrwxrwx 1 root root 7 Mar 21 20:13 3600a09806c574235472455534e685146 -> ../dm-6 crw------- 1 root root 10, 236 Mar 21 18:19 control
-
Efetue login no cluster FSx como usuário fsxadmin via SSH para recuperar o número serial hexadecimal para cada LUN que começa com 6c574xxx…, o número HEX começa com 3600a0980, que é o ID do fornecedor da AWS.
lun show -fields serial-hex
e retornar da seguinte forma:
FsxId02ad7bf3476b741df::> lun show -fields serial-hex vserver path serial-hex ------- ------------------------------- ------------------------ svm_ora /vol/ora_01_biny/ora_01_biny_01 6c574235472455534e68512d svm_ora /vol/ora_01_data/ora_01_data_01 6c574235472455534e685141 svm_ora /vol/ora_01_data/ora_01_data_02 6c574235472455534e685142 svm_ora /vol/ora_01_data/ora_01_data_03 6c574235472455534e685143 svm_ora /vol/ora_01_data/ora_01_data_04 6c574235472455534e685144 svm_ora /vol/ora_01_logs/ora_01_logs_01 6c574235472455534e685145 svm_ora /vol/ora_01_logs/ora_01_logs_02 6c574235472455534e685146 7 entries were displayed.
-
Atualizar o
/dev/multipath.conf
arquivo para adicionar um nome amigável para o dispositivo multipath.sudo vi /etc/multipath.conf
com as seguintes entradas:
multipaths { multipath { wwid 3600a09806c574235472455534e68512d alias ora_01_biny_01 } multipath { wwid 3600a09806c574235472455534e685141 alias ora_01_data_01 } multipath { wwid 3600a09806c574235472455534e685142 alias ora_01_data_02 } multipath { wwid 3600a09806c574235472455534e685143 alias ora_01_data_03 } multipath { wwid 3600a09806c574235472455534e685144 alias ora_01_data_04 } multipath { wwid 3600a09806c574235472455534e685145 alias ora_01_logs_01 } multipath { wwid 3600a09806c574235472455534e685146 alias ora_01_logs_02 } }
-
Reinicie o serviço multipath para verificar se os dispositivos em
/dev/mapper
foram alterados para nomes de LUN em vez de IDs seriais hexadecimais.sudo systemctl restart multipathd
Verificar
/dev/mapper
para retornar como segue:[ec2-user@ip-172-30-15-58 ~]$ ls -l /dev/mapper total 0 crw------- 1 root root 10, 236 Mar 21 18:19 control lrwxrwxrwx 1 root root 7 Mar 21 20:41 ora_01_biny_01 -> ../dm-0 lrwxrwxrwx 1 root root 7 Mar 21 20:41 ora_01_data_01 -> ../dm-1 lrwxrwxrwx 1 root root 7 Mar 21 20:41 ora_01_data_02 -> ../dm-2 lrwxrwxrwx 1 root root 7 Mar 21 20:41 ora_01_data_03 -> ../dm-3 lrwxrwxrwx 1 root root 7 Mar 21 20:41 ora_01_data_04 -> ../dm-4 lrwxrwxrwx 1 root root 7 Mar 21 20:41 ora_01_logs_01 -> ../dm-5 lrwxrwxrwx 1 root root 7 Mar 21 20:41 ora_01_logs_02 -> ../dm-6
-
Particione o LUN binário com uma única partição primária.
sudo fdisk /dev/mapper/ora_01_biny_01
-
Formate o LUN binário particionado com um sistema de arquivos XFS.
sudo mkfs.xfs /dev/mapper/ora_01_biny_01p1
-
Monte o LUN binário em
/u01
.sudo mount -t xfs /dev/mapper/ora_01_biny_01p1 /u01
-
Mudar
/u01
propriedade do ponto de montagem para o usuário Oracle e seu grupo primário associado.sudo chown oracle:oinstall /u01
-
Encontre a UUI do LUN binário.
sudo blkid /dev/mapper/ora_01_biny_01p1
-
Adicione um ponto de montagem para
/etc/fstab
.sudo vi /etc/fstab
Adicione a seguinte linha.
UUID=d89fb1c9-4f89-4de4-b4d9-17754036d11d /u01 xfs defaults,nofail 0 2
É importante montar o binário apenas com o UUID e com a opção nofail para evitar possíveis problemas de bloqueio de root durante a reinicialização da instância EC2. -
Como usuário root, adicione a regra udev para dispositivos Oracle.
vi /etc/udev/rules.d/99-oracle-asmdevices.rules
Incluir as seguintes entradas:
ENV{DM_NAME}=="ora*", GROUP:="oinstall", OWNER:="oracle", MODE:="660"
-
Como usuário root, recarregue as regras do udev.
udevadm control --reload-rules
-
Como usuário root, acione as regras do udev.
udevadm trigger
-
Como usuário root, recarregue o multipathd.
systemctl restart multipathd
-
Reinicie o host da instância do EC2.
Instalação de infraestrutura de grade Oracle
Details
-
Efetue login na instância EC2 como usuário ec2 via SSH e habilite a autenticação por senha descomentando
PasswordAuthentication yes
e então comentandoPasswordAuthentication no
.sudo vi /etc/ssh/sshd_config
-
Reinicie o serviço sshd.
sudo systemctl restart sshd
-
Redefina a senha do usuário do Oracle.
sudo passwd oracle
-
Efetue login como usuário proprietário do software Oracle Restart (Oracle). Crie um diretório Oracle da seguinte maneira:
mkdir -p /u01/app/oracle mkdir -p /u01/app/oraInventory
-
Altere a configuração de permissão do diretório.
chmod -R 775 /u01/app
-
Crie um diretório inicial da grade e acesse-o.
mkdir -p /u01/app/oracle/product/19.0.0/grid cd /u01/app/oracle/product/19.0.0/grid
-
Descompacte os arquivos de instalação da grade.
unzip -q /tmp/archive/LINUX.X64_193000_grid_home.zip
-
Da grade inicial, exclua o
OPatch
diretório.rm -rf OPatch
-
Da grade inicial, descompacte
p6880880_190000_Linux-x86-64.zip
.unzip -q /tmp/archive/p6880880_190000_Linux-x86-64.zip
-
Da grade inicial, revise
cv/admin/cvu_config
, descomente e substituaCV_ASSUME_DISTID=OEL5
comCV_ASSUME_DISTID=OL7
.vi cv/admin/cvu_config
-
Atualizar um
gridsetup.rsp
arquivo para instalação silenciosa e coloque o arquivo rsp no/tmp/archive
diretório. O arquivo rsp deve cobrir as seções A, B e G com as seguintes informações:INVENTORY_LOCATION=/u01/app/oraInventory oracle.install.option=HA_CONFIG ORACLE_BASE=/u01/app/oracle oracle.install.asm.OSDBA=dba oracle.install.asm.OSOPER=oper oracle.install.asm.OSASM=asm oracle.install.asm.SYSASMPassword="SetPWD" oracle.install.asm.diskGroup.name=DATA oracle.install.asm.diskGroup.redundancy=EXTERNAL oracle.install.asm.diskGroup.AUSize=4 oracle.install.asm.diskGroup.disks=/dev/mapper/ora_01_data_01,/dev/mapper/ora_01_data_02,/dev/mapper/ora_01_data_03,/dev/mapper/ora_01_data_04 oracle.install.asm.diskGroup.diskDiscoveryString=/dev/mapper/* oracle.install.asm.monitorPassword="SetPWD" oracle.install.asm.configureAFD=true
-
Efetue login na instância EC2 como usuário root e defina
ORACLE_HOME
eORACLE_BASE
.export ORACLE_HOME=/u01/app/oracle/product/19.0.0/grid export ORACLE_BASE=/tmp cd /u01/app/oracle/product/19.0.0/grid/bin
-
Provisione dispositivos de disco para uso com o driver de filtro Oracle ASM.
./asmcmd afd_label DATA01 /dev/mapper/ora_01_data_01 --init ./asmcmd afd_label DATA02 /dev/mapper/ora_01_data_02 --init ./asmcmd afd_label DATA03 /dev/mapper/ora_01_data_03 --init ./asmcmd afd_label DATA04 /dev/mapper/ora_01_data_04 --init ./asmcmd afd_label LOGS01 /dev/mapper/ora_01_logs_01 --init ./asmcmd afd_label LOGS02 /dev/mapper/ora_01_logs_02 --init
-
Instalar
cvuqdisk-1.0.10-1.rpm
.rpm -ivh /u01/app/oracle/product/19.0.0/grid/cv/rpm/cvuqdisk-1.0.10-1.rpm
-
Desconfigurado
$ORACLE_BASE
.unset ORACLE_BASE
-
Efetue login na instância EC2 como usuário Oracle e extraia o patch no
/tmp/archive
pasta.unzip /tmp/archive/p34762026_190000_Linux-x86-64.zip -d /tmp/archive
-
Na grade inicial /u01/app/oracle/product/19.0.0/grid e como usuário oracle, inicie
gridSetup.sh
para instalação de infraestrutura de rede../gridSetup.sh -applyRU /tmp/archive/34762026/ -silent -responseFile /tmp/archive/gridsetup.rsp
Ignore os avisos sobre grupos errados para infraestrutura de rede. Estamos usando um único usuário Oracle para gerenciar o Oracle Restart, então isso é esperado.
-
Como usuário root, execute o(s) seguinte(s) script(s):
/u01/app/oraInventory/orainstRoot.sh /u01/app/oracle/product/19.0.0/grid/root.sh
-
Como usuário root, recarregue o multipathd.
systemctl restart multipathd
-
Como usuário Oracle, execute o seguinte comando para concluir a configuração:
/u01/app/oracle/product/19.0.0/grid/gridSetup.sh -executeConfigTools -responseFile /tmp/archive/gridsetup.rsp -silent
-
Como usuário Oracle, a partir do $GRID_HOME, crie o grupo de discos LOGS.
bin/asmca -silent -sysAsmPassword 'yourPWD' -asmsnmpPassword 'yourPWD' -createDiskGroup -diskGroupName LOGS -disk 'AFD:LOGS*' -redundancy EXTERNAL -au_size 4
-
Como usuário do Oracle, valide os serviços de grade após a configuração da instalação.
bin/crsctl stat res -t + Name Target State Server State details Local Resources ora.DATA.dg ONLINE ONLINE ip-172-30-15-58 STABLE ora.LISTENER.lsnr ONLINE ONLINE ip-172-30-15-58 STABLE ora.LOGS.dg ONLINE ONLINE ip-172-30-15-58 STABLE ora.asm ONLINE ONLINE ip-172-30-15-58 Started,STABLE ora.ons OFFLINE OFFLINE ip-172-30-15-58 STABLE Cluster Resources ora.cssd ONLINE ONLINE ip-172-30-15-58 STABLE ora.diskmon OFFLINE OFFLINE STABLE ora.driver.afd ONLINE ONLINE ip-172-30-15-58 STABLE ora.evmd ONLINE ONLINE ip-172-30-15-58 STABLE
-
Valide o status do driver de filtro ASM.
[oracle@ip-172-30-15-58 grid]$ export ORACLE_HOME=/u01/app/oracle/product/19.0.0/grid [oracle@ip-172-30-15-58 grid]$ export ORACLE_SID=+ASM [oracle@ip-172-30-15-58 grid]$ export PATH=$PATH:$ORACLE_HOME/bin [oracle@ip-172-30-15-58 grid]$ asmcmd ASMCMD> lsdg State Type Rebal Sector Logical_Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Voting_files Name MOUNTED EXTERN N 512 512 4096 1048576 81920 81847 0 81847 0 N DATA/ MOUNTED EXTERN N 512 512 4096 1048576 81920 81853 0 81853 0 N LOGS/ ASMCMD> afd_state ASMCMD-9526: The AFD state is 'LOADED' and filtering is 'ENABLED' on host 'ip-172-30-15-58.ec2.internal'
Instalação do banco de dados Oracle
Details
-
Faça login como usuário Oracle e desative
$ORACLE_HOME
e$ORACLE_SID
se estiver definido.unset ORACLE_HOME unset ORACLE_SID
-
Crie o diretório inicial do Oracle DB e acesse-o.
mkdir /u01/app/oracle/product/19.0.0/db1 cd /u01/app/oracle/product/19.0.0/db1
-
Descompacte os arquivos de instalação do Oracle DB.
unzip -q /tmp/archive/LINUX.X64_193000_db_home.zip
-
Na página inicial do banco de dados, exclua o
OPatch
diretório.rm -rf OPatch
-
Do banco de dados inicial, descompacte
p6880880_190000_Linux-x86-64.zip
.unzip -q /tmp/archive/p6880880_190000_Linux-x86-64.zip
-
Da página inicial do DB, revise
cv/admin/cvu_config
, e descomente e substituaCV_ASSUME_DISTID=OEL5
comCV_ASSUME_DISTID=OL7
.vi cv/admin/cvu_config
-
Do
/tmp/archive
diretório, descompacte o patch DB 19.18 RU.unzip p34765931_190000_Linux-x86-64.zip
-
Atualizar o arquivo rsp padrão de instalação silenciosa do banco de dados em
/tmp/archive/dbinstall.rsp
diretório com os seguintes valores nas seções relevantes:oracle.install.option=INSTALL_DB_SWONLY UNIX_GROUP_NAME=oinstall INVENTORY_LOCATION=/u01/app/oraInventory ORACLE_HOME=/u01/app/oracle/product/19.0.0/db1 ORACLE_BASE=/u01/app/oracle oracle.install.db.InstallEdition=EE oracle.install.db.OSDBA_GROUP=dba oracle.install.db.OSOPER_GROUP=oper oracle.install.db.OSBACKUPDBA_GROUP=oper oracle.install.db.OSDGDBA_GROUP=dba oracle.install.db.OSKMDBA_GROUP=dba oracle.install.db.OSRACDBA_GROUP=dba oracle.install.db.rootconfig.executeRootScript=false
-
No db1 home /u01/app/oracle/product/19.0.0/db1, execute a instalação silenciosa do banco de dados somente de software.
./runInstaller -applyRU /tmp/archive/34765931/ -silent -ignorePrereqFailure -responseFile /tmp/archive/dbinstall.rsp
-
Como usuário root, execute o
root.sh
script após a instalação somente do software./u01/app/oracle/product/19.0.0/db1/root.sh
-
Como usuário Oracle, atualize o padrão
dbca.rsp
arquivo com as seguintes entradas nas seções relevantes:gdbName=db1.demo.netapp.com sid=db1 createAsContainerDatabase=true numberOfPDBs=3 pdbName=db1_pdb useLocalUndoForPDBs=true pdbAdminPassword="yourPWD" templateName=General_Purpose.dbc sysPassword="yourPWD" systemPassword="yourPWD" dbsnmpPassword="yourPWD" datafileDestination=+DATA recoveryAreaDestination=+LOGS storageType=ASM diskGroupName=DATA characterSet=AL32UTF8 nationalCharacterSet=AL16UTF16 listeners=LISTENER databaseType=MULTIPURPOSE automaticMemoryManagement=false totalMemory=8192
-
Como usuário Oracle, no diretório $ORACLE_HOME, inicie a criação do banco de dados com dbca.
bin/dbca -silent -createDatabase -responseFile /tmp/archive/dbca.rsp output: Prepare for db operation 7% complete Registering database with Oracle Restart 11% complete Copying database files 33% complete Creating and starting Oracle instance 35% complete 38% complete 42% complete 45% complete 48% complete Completing Database Creation 53% complete 55% complete 56% complete Creating Pluggable Databases 60% complete 64% complete 69% complete 78% complete Executing Post Configuration Actions 100% complete Database creation complete. For details check the logfiles at: /u01/app/oracle/cfgtoollogs/dbca/db1. Database Information: Global Database Name:db1.demo.netapp.com System Identifier(SID):db1 Look at the log file "/u01/app/oracle/cfgtoollogs/dbca/db1/db1.log" for further details.
-
Como usuário Oracle, valide os serviços de reinicialização do Oracle HA após a criação do banco de dados.
[oracle@ip-172-30-15-58 db1]$ ../grid/bin/crsctl stat res -t Name Target State Server State details Local Resources ora.DATA.dg ONLINE ONLINE ip-172-30-15-58 STABLE ora.LISTENER.lsnr ONLINE ONLINE ip-172-30-15-58 STABLE ora.LOGS.dg ONLINE ONLINE ip-172-30-15-58 STABLE ora.asm ONLINE ONLINE ip-172-30-15-58 Started,STABLE ora.ons OFFLINE OFFLINE ip-172-30-15-58 STABLE Cluster Resources ora.cssd ONLINE ONLINE ip-172-30-15-58 STABLE ora.db1.db ONLINE ONLINE ip-172-30-15-58 Open,HOME=/u01/app/oracle/product/19.0.0/db1,STABLE ora.diskmon OFFLINE OFFLINE STABLE ora.driver.afd ONLINE ONLINE ip-172-30-15-58 STABLE ora.evmd ONLINE ONLINE ip-172-30-15-58 STABLE
-
Definir o usuário Oracle
.bash_profile
.vi ~/.bash_profile
-
Adicione as seguintes entradas:
export ORACLE_HOME=/u01/app/oracle/product/19.0.0/db1 export ORACLE_SID=db1 export PATH=$PATH:$ORACLE_HOME/bin alias asm='export ORACLE_HOME=/u01/app/oracle/product/19.0.0/grid;export ORACLE_SID=+ASM;export PATH=$PATH:$ORACLE_HOME/bin'
-
Valide o CDB/PDB criado.
source /home/oracle/.bash_profile sqlplus / as sysdba SQL> select name, open_mode from v$database; NAME OPEN_MODE DB1 READ WRITE SQL> select name from v$datafile; NAME +DATA/DB1/DATAFILE/system.256.1132176177 +DATA/DB1/DATAFILE/sysaux.257.1132176221 +DATA/DB1/DATAFILE/undotbs1.258.1132176247 +DATA/DB1/86B637B62FE07A65E053F706E80A27CA/DATAFILE/system.265.1132177009 +DATA/DB1/86B637B62FE07A65E053F706E80A27CA/DATAFILE/sysaux.266.1132177009 +DATA/DB1/DATAFILE/users.259.1132176247 +DATA/DB1/86B637B62FE07A65E053F706E80A27CA/DATAFILE/undotbs1.267.1132177009 +DATA/DB1/F7852758DCD6B800E0533A0F1EAC1DC6/DATAFILE/system.271.1132177853 +DATA/DB1/F7852758DCD6B800E0533A0F1EAC1DC6/DATAFILE/sysaux.272.1132177853 +DATA/DB1/F7852758DCD6B800E0533A0F1EAC1DC6/DATAFILE/undotbs1.270.1132177853 +DATA/DB1/F7852758DCD6B800E0533A0F1EAC1DC6/DATAFILE/users.274.1132177871 NAME +DATA/DB1/F785288BBCD1BA78E0533A0F1EACCD6F/DATAFILE/system.276.1132177871 +DATA/DB1/F785288BBCD1BA78E0533A0F1EACCD6F/DATAFILE/sysaux.277.1132177871 +DATA/DB1/F785288BBCD1BA78E0533A0F1EACCD6F/DATAFILE/undotbs1.275.1132177871 +DATA/DB1/F785288BBCD1BA78E0533A0F1EACCD6F/DATAFILE/users.279.1132177889 +DATA/DB1/F78529A14DD8BB18E0533A0F1EACB8ED/DATAFILE/system.281.1132177889 +DATA/DB1/F78529A14DD8BB18E0533A0F1EACB8ED/DATAFILE/sysaux.282.1132177889 +DATA/DB1/F78529A14DD8BB18E0533A0F1EACB8ED/DATAFILE/undotbs1.280.1132177889 +DATA/DB1/F78529A14DD8BB18E0533A0F1EACB8ED/DATAFILE/users.284.1132177907 19 rows selected. SQL> show pdbs CON_ID CON_NAME OPEN MODE RESTRICTED 2 PDB$SEED READ ONLY NO 3 DB1_PDB1 READ WRITE NO 4 DB1_PDB2 READ WRITE NO 5 DB1_PDB3 READ WRITE NO SQL>
-
Defina o tamanho do destino de recuperação do banco de dados para o tamanho do grupo de discos +LOGS.
alter system set db_recovery_file_dest_size = 80G scope=both;
-
Efetue login no banco de dados com o sqlplus e ative o modo de log de arquivamento.
sqlplus /as sysdba. shutdown immediate; startup mount; alter database archivelog; alter database open;
Isso conclui a implantação do Oracle 19c versão 19.18 Restart em uma instância de computação Amazon FSx ONTAP e EC2. Se desejar, a NetApp recomenda realocar o arquivo de controle do Oracle e os arquivos de log on-line para o grupo de discos +LOGS.
Opção de implantação automatizada
Consulte"TR-4986: Implantação simplificada e automatizada do Oracle no Amazon FSx ONTAP com iSCSI" para mais detalhes.
Backup, restauração e clonagem do banco de dados Oracle com o SnapCenter Service
Ver"Serviços SnapCenter para Oracle" para obter detalhes sobre backup, restauração e clonagem do banco de dados Oracle com o console NetApp BlueXP .
Onde encontrar informações adicionais
Para saber mais sobre as informações descritas neste documento, revise os seguintes documentos e/ou sites:
-
Instalando o Oracle Grid Infrastructure para um servidor autônomo com uma nova instalação de banco de dados
-
Instalando e configurando o banco de dados Oracle usando arquivos de resposta
-
Amazon FSx ONTAP
-
Amazon EC2