Instalar o Oracle RAC na solução Bare Metal
Esta página mostra como instalar clusters de aplicativo real (RAC, na sigla em inglês) do Oracle no seu servidor da Solução Bare Metal.
Implantação
Neste guia, criamos uma implantação que inclui o Oracle RAC 19c instalado em um servidor da Solução Bare Metal. Criamos um RAC de dois nós com um banco de dados.
Antes de começar
- Provisione a infraestrutura necessária para a RAC. Isso inclui dois nós, armazenamento compartilhado e volumes dedicados para hospedar o diretório principal do Oracle.
- Neste guia, usamos o processo de instalação da GUI. Se você também quiser usar o processo de instalação da GUI, configure o Virtual Network Computing (VNC) em um dos nós seguindo o guia de configuração do Oracle VNC.
- Crie um ponto de montagem local
/apps
para hospedar os diretórios de início da Oracle e do Grid.
Instalar o RAC
A instalação do RAC na Solução Bare Metal envolve as seguintes etapas:
- Prepare os nós para a instalação do RAC.
- Configure o Oracle ASM.
- Fazer verificações de pré-instalação.
- Instale o Oracle RAC.
- Realizar as etapas pós-instalação.
Preparar os nós para a instalação do RAC
Siga as etapas abaixo em ambos os nós, a menos que especificado de outra forma:
Atualize o arquivo
/etc/hosts
com os seguintes endereços IP para o RAC:- Endereços IP públicos
- Endereços IP particulares
- Endereços IP virtuais
- SCAN de endereços IP virtuais
Confira a seguir um exemplo do arquivo
/etc/hosts
modificado:10.*.*.* bms-jumphost # public IP addresses for Oracle RAC 192.*.*.* at-2811641-svr001 at-2811641-svr001.localdomain 192.*.*.* at-2811641-svr002 at-2811641-svr002.localdomain # private IP addresses for Oracle RAC 172.*.*.* at-2811641-svr001-priv at-2811641-svr001-priv.localdomain 172.*.*.* at-2811641-svr002-priv at-2811641-svr002-priv.localdomain # virtual IP addresses for Oracle RAC 192.*.*.* at-2811641-svr001-vip at-2811641-svr001-vip.localdomain 192.*.*.* at-2811641-svr002-vip at-2811641-svr001-vip.localdomain # SCAN virtual IP addresses for Oracle RAC 192.*.*.* psoracle-scan psoracle-scan.localdomain 192.*.*.* psoracle-scann psoracle-scan.localdomain 192.*.*.* psoracle-scan psoracle-scan.localdomain
Faça a resolução de DNS para os endereços IP virtuais e os endereços IP virtuais do SCAN.
Usamos o Cloud DNS para resolver endereços IP virtuais e endereços IP virtuais do SCAN. Para instruções, consulte Configurar o SCAN com o Cloud DNS.
Atualize o arquivo
/etc/sysctl.conf
com os parâmetros do kernel.vi /etc/sysctl.conf # Added for Oracle fs.file-max = 6815744 kernel.sem = 250 32000 100 128 kernel.shmmni = 4096 kernel.shmall = 1073741824 kernel.shmmax = 4398046511104 kernel.panic_on_oops = 1 net.core.rmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048576 net.ipv4.conf.all.rp_filter = 2 net.ipv4.conf.default.rp_filter = 2 fs.aio-max-nr = 1048576 net.ipv4.ip_local_port_range = 9000 65500
Aplique as atualizações dos parâmetros do kernel.
/sbin/sysctl -p
No arquivo
/etc/security/limits.conf
, adicione os limites de recursos.vi /etc/security/limits.conf ## Added for Oracle grid soft nofile 1024 grid hard nofile 65536 grid soft nproc 2047 grid hard nproc 16384 grid soft stack 10240 grid hard stack 32768 oracle soft nofile 1024 oracle hard nofile 65536 oracle soft nproc 2047 oracle hard nproc 16384 oracle soft stack 10240 oracle hard stack 32768
Adicione os usuários e grupos necessários.
groupadd -g 54321 oinstall groupadd -g 54322 dba groupadd -g 54323 oper groupadd -g 54327 asmdba groupadd -g 54328 asmoper groupadd -g 54329 asmadmin useradd -u 54321 -g oinstall -G dba,oper,asmdba,asmoper,asmadmin,oracle
Instale o pacote de pré-instalação do Oracle.
Este guia pressupõe que você tenha configurado o repositório Oracle.
yum install oracle-database-preinstall-19c
O pacote
oracle-database-preinstall-19c
instala os pacotes necessários e cria o usuáriooracle
e uma entrada no arquivo/etc/sysctl.conf
.Redefina a senha do usuário
oracle
.passwd oracle
Instale os seguintes pacotes para o Oracle ASM:
oracleasm-support
kmod-oracleasm
yum install oracleasm-support yum install kmod-oracleasm
Desative
SELinux
atualizando o arquivo/etc/selinux/config
.vi /etc/selinux/config # This file controls the state of SELinux on the system. # SELINUX= can take one of these three values: # enforcing - SELinux security policy is enforced. # permissive - SELinux prints warnings instead of enforcing. # disabled - No SELinux policy is loaded. SELINUX=disabled # SELINUXTYPE= can take one of three values: # targeted - Targeted processes are protected, # minimum - Modification of targeted policy. Only selected processes are protected. # mls - Multi Level Security protection. SELINUXTYPE=targeted
Interrompa e desative o firewall.
systemctl stop firewalld.service systemctl disable firewalld
Configurar o NTP.
Instale o pacote NTP.
yum install ntp
Inicie o serviço
ntpd
.systemctl start ntpd
Atualize o arquivo
/etc/ntp.conf
.Neste caso, sincronizamos com o Bastion Host, que é
10.x.x.x
. Ele também pode ser seu servidor NTP interno.192.x.x.x
é o endereço IP do seu servidor da Solução Bare Metal.vi /etv/ntp.conf restrict 192.x.x.x mask 255.255.255.0 nomodify notrap server 10.x.x.x prefer
Atualize o servidor NTP para iniciar a sincronização.
ntpdate -qu SERVER_NAME
Se o
avahi-daemon
estiver em execução, interrompa e desative-o.systemctl status avahi-daemon ● avahi-daemon.service - Avahi mDNS/DNS-SD Stack Loaded: loaded (/usr/lib/systemd/system/avahi-daemon.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2021-08-09 07:51:26 UTC; 23h ago Main PID: 2543 (avahi-daemon) Status: "avahi-daemon 0.6.31 starting up." Tasks: 2 CGroup: /system.slice/avahi-daemon.service ├─2543 avahi-daemon: running [at-2811641-svr001.local] └─2546 avahi-daemon: chroot helper systemctl stop avahi-daemon Warning: Stopping avahi-daemon.service, but it can still be activated by: avahi-daemon.socket [root@at-2811641-svr001 ~]# systemctl disable avahi-daemon Removed symlink /etc/systemd/system/multi-user.target.wants/avahi-daemon.service. Removed symlink /etc/systemd/system/sockets.target.wants/avahi-daemon.socket. Removed symlink /etc/systemd/system/dbus-org.freedesktop.Avahi.service. systemctl status avahi-daemon ● avahi-daemon.service - Avahi mDNS/DNS-SD Stack Loaded: loaded (/usr/lib/systemd/system/avahi-daemon.service; disabled; vendor preset: enabled) Active: inactive (dead) since Tue 2021-08-10 07:16:28 UTC; 36s ago Main PID: 2543 (code=exited, status=0/SUCCESS)
Crie os diretórios iniciais da Oracle e do Grid.
mkdir -p /apps/grid/19.3.0/gridhome_1 mkdir -p /apps/grid/gridbase/ mkdir -p /apps/oracle/product/19.3.0/dbhome_1 chmod -R 775 /apps/ chown -R oracle:oinstall /apps/
No primeiro nó, faça o seguinte:
- Faça o download dos arquivos de imagem da infraestrutura de grade do Oracle.
- Como usuário
Oracle
, copie os arquivos transferidos para o diretório principal do Grid. - Como usuário
Oracle
, extraia os arquivos de imagem da infraestrutura de grade do Oracle.
cp LINUX.X64_193000_grid_home.zip /apps/grid/19.3.0/gridhome_1/ cd /apps/grid/19.3.0/gridhome_1/ unzip LINUX.X64_193000_grid_home.zip
Em qualquer um dos nós, configure o SSH sem senha para o usuário Oracle.
cd /apps/grid/19.3.0/gridhome_1/deinstall ./sshUserSetup.sh -user oracle -hosts "at-2811641-svr001 at-2811641-svr002" -noPromptPassphrase -confirm -advanced
Em qualquer um dos nós, como usuário raiz, instale o pacote RPM
cvuqdisk
do diretório principal do Grid.rpm -qa cvuqdisk cd /apps/grid/19.3.0/gridhome_1/cv/rpm/ rpm -iv cvuqdisk-1.0.10-1.rpm Preparing packages... Using default group oinstall to install package cvuqdisk-1.0.10-1.x86_64 rpm -qa cvuqdisk cvuqdisk-1.0.10-1.x86_64
Configurar o Oracle ASM
Para configurar o Oracle ASM, siga estas etapas como usuário raiz:
Em qualquer um dos nós, identifique todos os LUNs compartilhados que você vai usar para o Oracle ASM.
multipath -ll
Em qualquer um dos nós, crie partições em todos os dispositivos compartilhados usando
fdisk
ougdisk
.fdisk /dev/mapper/DISK_WWID
Substitua:
- DISK_WWID: WWID do disco.
Um exemplo de saída é o seguinte:
fdisk /dev/mapper/3600a098038314343753f4f723154594e Welcome to fdisk (util-linux 2.23.2). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Device does not contain a recognized partition table Building a new DOS disklabel with disk identifier 0xf7f8fd23. The device presents a logical sector size that is smaller than the physical sector size. Aligning to a physical sector (or optimal I/O) size boundary is recommended, or performance may be impacted. Command (m for help): n Partition type: p primary (0 primary, 0 extended, 4 free) e extended Select (default p): p Partition number (1-4, default 1): First sector (2048-2147518463, default 2048): Using default value 2048 Last sector, +sectors or +size{K,M,G} (2048-2147518463, default 2147518463): Using default value 2147518463 Partition 1 of type Linux and of size 1 TiB is set Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. WARNING: Re-reading the partition table failed with error 22: Invalid argument. The kernel still uses the old table. The new table will be used at the next reboot or after you run partprobe(8) or kpartx(8) Syncing disks. fdisk -l /dev/mapper/3600a098038314343753f4f723154594e Disk /dev/mapper/3600a098038314343753f4f723154594e: 1099.5 GB, 1099529453568 bytes,2147518464 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 4096 bytes I/O size (minimum/optimal): 4096 bytes / 65536 bytes Disk label type: dos Disk identifier: 0xf7f8fd23 Device Boot Start End Blocks Id System /dev/mapper/3600a098038314343753f4f723154594e1 2048 2147518463 1073758208 83 Linux
Execute
partprobe
para tornar todas as novas partições visíveis.partprobe
Em ambos os nós, configure o Oracle ASM.
oracleasm configure -i Configuring the Oracle ASM library driver. This will configure the on-boot properties of the Oracle ASM library driver. The following questions will determine whether the driver is loaded on boot and what permissions it will have. The current values will be shown in brackets ('[]'). Hitting <ENTER> without typing an answer will keep that current value. Ctrl-C will abort. Default user to own the driver interface []: oracle Default group to own the driver interface []: oinstall Start Oracle ASM library driver on boot (y/n) [n]: y Scan for Oracle ASM disks on boot (y/n) [y]: y Writing Oracle ASM library driver configuration: done
Em ambos os nós, defina o valor do parâmetro
ORACLEASM_SCANORDER
comodm
e o valor deORACLEASM_SCANEXCLUDE
comosd
, já que os servidores da Solução Bare Metal usam dispositivos de vários caminhos.vi /etc/sysconfig/oracleasm ORACLEASM_SCANORDER="dm" ORACLEASM_SCANEXCLUDE="sd"
Em ambos os nós, verifique a configuração do Oracle ASM.
oracleasm configure ORACLEASM_ENABLED=true ORACLEASM_UID=oracle ORACLEASM_GID=oinstall ORACLEASM_SCANBOOT=true ORACLEASM_SCANORDER="dm" ORACLEASM_SCANEXCLUDE="sd" ORACLEASM_SCAN_DIRECTORIES="" ORACLEASM_USE_LOGICAL_BLOCK_SIZE="false"
Em ambos os nós, inicie
oracleasm
.oracleasm init Creating /dev/oracleasm mount point: /dev/oracleasm Loading module "oracleasm": oracleasm Configuring "oracleasm" to use device physical block size Mounting ASMlib driver filesystem: /dev/oracleasm
Nos dois nós, verifique o status de
oracleasm
.oracleasm status Checking if ASM is loaded: yes Checking if /dev/oracleasm is mounted: yes
Em qualquer um dos nós, crie discos do Oracle ASM nos dispositivos particionados de vários caminhos.
oracleasm createdisk OCR /dev/mapper/DISK_WWID
Substitua:
- DISK_WWID: WWID do disco.
Um exemplo de saída é o seguinte:
oracleasm createdisk OCR /dev/mapper/3600a098038314343753f4f723154594e1 Writing disk header: done Instantiating disk: done
No primeiro nó, liste os nomes dos discos.
oracleasm listdisks
Um exemplo de saída é o seguinte:
DATA01 DATA02 DATA03 DATA04 DATA05 DATA06 FRA01 FRA02 FRA03 OCR
No segundo nó, liste os discos marcados como ASMLIB no primeiro nó.
oracleasm scandisks
Um exemplo de saída é o seguinte:
Reloading disk partitions: done Cleaning any stale ASM disks... Scanning system for ASM disks... Instantiating disk "DATA01" Instantiating disk "DATA06" Instantiating disk "DATA04" Instantiating disk "OCR" Instantiating disk "DATA05" Instantiating disk "FRA01" Instantiating disk "DATA03" Instantiating disk "FRA03" Instantiating disk "FRA02" Instantiating disk "DATA02"
No segundo nó, liste os nomes dos discos.
oracleasm listdisks
Um exemplo de saída é o seguinte:
oracleasm listdisks DATA01 DATA02 DATA03 DATA04 DATA05 DATA06 FRA01 FRA02 FRA03 OCR
Se os discos não aparecerem no segundo nó após a verificação, execute o comando
partprobe
para tornar as partições visíveis.
Realizar verificações antes da instalação
Verifique se todos os pré-requisitos para a instalação da infraestrutura de grade do Oracle
foram atendidos. No primeiro nó, execute o script runcluvfy.sh
.
./runcluvfy.sh stage -pre crsinst -n at-2811641-svr001,at-2811641-svr002 -verbose
Se algum dos pré-requisitos falhar, corrija-o antes de continuar com a instalação.
Instalar o Oracle RAC
No primeiro nó em que você fez o download e extraiu os arquivos de imagem da infraestrutura do Oracle Grid, siga estas etapas:
- Conecte-se ao servidor da Solução Bare Metal pelo VNC Viewer.
- Execute o script
gridSetup.sh
: - Na página Selecionar opção de configuração, selecione Oracle Grid Infrastructure para um novo cluster e clique em Próxima.
- Na página Selecionar configuração de cluster, selecione Configure an Oracle standalone cluster e clique em Next.
Na página Informações sobre o plug and play de grade, faça o seguinte:
- Selecione Criar verificação local.
- Insira um nome para o cluster. Verifique se ele tem menos de 15 caracteres.
- Insira um nome de verificação.
- Insira uma porta SCAN.
- Clique em Próxima.
Para adicionar o segundo nó, clique em Adicionar e faça o seguinte:
- Insira o nome do host público do segundo nó.
- Insira o nome do host virtual do segundo nó.
- Clique em OK.
Na página Especificar o uso da interface de rede, faça o seguinte:
- Para cada interface, na coluna Uso, selecione o tipo de uso. Para a interface particular, selecione ASM e particular.
- Clique em Próxima.
Na página Informações sobre a opção de armazenamento, selecione Oracle Flex ASM para armazenamento para armazenar arquivos OCR e arquivos de disco de votação no Oracle ASM e clique em Próxima.
Na página Criar repositório de gerenciamento de infraestrutura de grade, selecione Sim e clique em Próxima.
Esta etapa cria o repositório de gerenciamento de infraestrutura de grade (GIMR).
Na página Grid Infrastructure Management Repository option, selecione No, porque não queremos criar um grupo de discos separado para o GIMR.
Na página Criar grupo de discos do ASM, faça o seguinte:
- Digite o nome do grupo de discos.
Clique em Change discovery path e insira o caminho de descoberta correto para os discos do Oracle ASM.
Verifique se os dispositivos estão mapeados para multipath, para que os discos do Oracle ASM fiquem ativos mesmo depois que um caminho for desativado.
Na página Especificar a senha do ASM, faça o seguinte:
- Selecione Usar as mesmas senhas para essas contas.
- Digite e confirme a senha.
- Clique em Próxima.
Na página Suporte à falha de isolamento, selecione Não usar a interface de gerenciamento de plataforma inteligente (IPMI, na sigla em inglês) e clique em Próxima.
Na página Especificar opções de gerenciamento, clique em Próxima, já que não estamos configurando a infraestrutura de grade do Oracle com o Oracle Enterprise Manager.
Na página Grupos de sistema operacional privilegiado, faça o seguinte:
- Para todos os privilégios do ASM do Oracle, selecione oinstall. Também é possível usar asmdba e asmoper.
- Clique em Próxima.
Na página Especificar local de instalação, especifique a base do Oracle e clique em Próxima.
A execução dos scripts raiz pode ser feita automaticamente se você tiver a senha raiz ou se o usuário
oracle
tiver privilégio sudo. No entanto, neste guia, executamos os scripts manualmente. Portanto, na página Root script execution, clique em Next.Na página Realizar verificações de pré-requisito, faça o seguinte:
Corrija as falhas que aparecerem.
Se você corrigiu todas as falhas encontradas na execução do script
runcluvfy.sh
, conforme descrito na seção Realizar verificações de pré-instalação, a instalação será limpa.Depois de corrigir as falhas, clique em Verificar novamente para atualizar o status das falhas como Concluído.
Clique em Próxima.
Leia o resumo e clique em Instalar.
O prompt de instalação pede que você execute os scripts raiz nos dois nós. Primeiro, execute os scripts no primeiro nó e depois no segundo.
/apps/grid/oraInventory/orainstRoot.sh /apps/grid/19.3.0/gridhome_11/grid/root.sh
Quando a janela Finish aparecer, clique em Close.
Realizar etapas pós-instalação
Depois que a instalação da Oracle Grid Infrastructure for concluída, siga estas etapas:
Instalar e configurar o software de banco de dados Oracle.
Para a instalação do RAC, escolha a opção Somente software.
Para instruções sobre como instalar o software do banco de dados Oracle, consulte Blog: Como instalar e configurar os binários do Oracle 19c para o banco de dados RAC.
Crie grupos de discos do ASM da Oracle.
Crie uma entrada para a instância do Oracle ASM no arquivo
/etc/oratab
.vi /etc/oratab +ASM1:/apps/grid/19.3.0/gridhome_1:N
Defina as variáveis
ORACLE_SID
eORACLE_HOME
para a instância do Oracle ASM e se conecte a ela.. oraenv ORACLE_SID = [oracle] ? +ASM1 The Oracle base has been set to /apps/grid/gridbase sqlplus / as sysasm SQL> select INSTANCE_NAME,STATUS from v$instance; INSTANCE_NAME STATUS ---------------- ------------ +ASM1 STARTED
Verifique se os discos a serem adicionados têm um
HEADER_STATUS
dePROVISIONED
.SQL> select HEADER_STATUS,STATE,TOTAL_MB/1024,path from v$asm_disk; HEADER_STATUS. STATE PATH ------------ -------- ------------- ------------------------- PROVISIONED NORMAL /dev/oracleasm/disks/DAT01 PROVISIONED NORMAL /dev/oracleasm/disks/DATA02 MEMBER NORMAL /dev/oracleasm/disks/OCR
Crie o grupo de discos em um nó.
SQL> create diskgroup DATA external redundancy disk '/dev/oracleasm/disks/DATA01','/dev/oracleasm/disks/DATA02'; Diskgroup created. SQL> select name, state, type from v$asm_diskgroup; NAME STATE TYPE ------------------------------ OCR MOUNTED EXTERN DATA MOUNTED EXTERN
No outro nó, faça login na instância do Oracle ASM e monte o grupo de disco.
SQL> select name, state, type from v$asm_diskgroup; NAME STATE TYPE -------------------- ----------- ------ DATA DISMOUNTED OCR MOUNTED EXTERN SQL> alter diskgroup DATA mount; Diskgroup altered. SQL> select name, state, type from v$asm_diskgroup; NAME STATE TYPE ------------------------------ ----------- ------ OCR MOUNTED EXTERN DATA MOUNTED EXTERN
Crie um banco de dados RAC usando o Oracle Database Configuration Assistant (DBCA).
Escolha Tipo de banco de dados como Banco de dados do cluster de aplicativos real.
Para instruções, consulte a documentação da Oracle.
A instalação do banco de dados RAC foi concluída e está pronta para uso.
A seguir
- Saiba mais sobre as práticas recomendadas para Oracle na Solução Bare Metal.