This post is also available in:
Série: Oracle RAC 12.2 — Instalação Completa no VMware Workstation
📌 Sobre esta série: Este guia cobre Oracle RAC 12c, que está fora de suporte. O objetivo é documentar aprendizado e revisar conceitos — não recomendar a versão para produção. Entenda o contexto completo na introdução da série →
📋 Esta série — Oracle RAC 12.2 no VMware Workstation:
⚙️ Pré-requisito: Post 2 concluído — Oracle Linux configurado nos dois nós, iSCSI conectado e SSH equivalência validada.
No Post 2 configuramos o Oracle Linux nos dois nós e validamos o ambiente. Agora vamos instalar o Grid Infrastructure 12.2 — o componente que transforma dois servidores independentes em um cluster Oracle.
Toda a instalação é feita a partir do orclrac1.
💡 Na prática: O Grid é a parte mais sensível de toda a instalação RAC. A maioria das falhas não acontece durante a instalação em si, mas por causa de pré-requisitos mal configurados — UDEV errado, DNS sem resolver o SCAN, GIMR ignorado. Esta seção documenta todos os erros encontrados durante o lab.
Preparação
Configurar UDEV para Discos ASM
O UDEV define permissões e proprietário dos discos de forma persistente. Execute como root em ambos os nós:
cat > /etc/udev/rules.d/99-oracle-asmdevices.rules << 'EOF'
KERNEL=="sdc", SUBSYSTEM=="block", OWNER="oracle", GROUP="dba", MODE="0660"
KERNEL=="sdd", SUBSYSTEM=="block", OWNER="oracle", GROUP="dba", MODE="0660"
KERNEL=="sde", SUBSYSTEM=="block", OWNER="oracle", GROUP="dba", MODE="0660"
KERNEL=="sdf", SUBSYSTEM=="block", OWNER="oracle", GROUP="dba", MODE="0660"
KERNEL=="sdg", SUBSYSTEM=="block", OWNER="oracle", GROUP="dba", MODE="0660"
KERNEL=="sdh", SUBSYSTEM=="block", OWNER="oracle", GROUP="dba", MODE="0660"
EOF
udevadm control --reload-rules && udevadm trigger
ls -la /dev/sdc /dev/sdd /dev/sde /dev/sdf /dev/sdg /dev/sdhPreparar Instalador do Grid
O Grid Infrastructure é descompactado diretamente dentro do ORACLE_HOME (/u01/app/12.2.0/grid), não em um diretório separado. O instalador já espera encontrar os arquivos nesse local.
cd /u01/app/12.2.0/grid
unzip -q /u01/stage/linuxx64_12201_grid_home.zipO orclrac2 não precisa descompactar — o OUI copia os binários automaticamente via SSH.
Instalar cvuqdisk em ambos os nós
rpm -ivh /u01/app/12.2.0/grid/cv/rpm/cvuqdisk-1.0.10-1.rpm
scp /u01/app/12.2.0/grid/cv/rpm/cvuqdisk-1.0.10-1.rpm root@orclrac2:/tmp/
rpm -ivh /tmp/cvuqdisk-1.0.10-1.rpmConfigurar DNS Local (dnsmasq)
O OUI valida o SCAN via nslookup, que não lê o /etc/hosts. Sem DNS, o check de DNS/NIS falha.
cat > /etc/resolv.conf << 'EOF'
search oracle.local
nameserver 8.8.8.8
EOF
yum install -y dnsmasq
cat > /etc/dnsmasq.conf << 'EOF'
no-resolv
no-poll
listen-address=127.0.0.1,192.168.15.170
bind-interfaces
domain=oracle.local
local=/oracle.local/
EOF
systemctl enable dnsmasq
systemctl start dnsmasq
cat > /etc/resolv.conf << 'EOF'
search oracle.local
nameserver 192.168.15.170
EOF
chattr +i /etc/resolv.confNo orclrac2:
cat > /etc/resolv.conf << 'EOF'
search oracle.local
nameserver 192.168.15.170
EOF
chattr +i /etc/resolv.confValidar:
nslookup orclrac-scanInstalação do Grid Infrastructure
ssh -X oracle@192.168.15.170
yum install -y xorg-x11-utils xorg-x11-xauth xterm
cd /u01/app/12.2.0/grid
./gridSetup.shSequência das 19 telas do OUI
Step 1 — Configuration Option: Configure Oracle Grid Infrastructure for a New Cluster
Step 2 — Cluster Configuration: Configure an Oracle Standalone Cluster
Step 3 — Grid Plug and Play:
- Cluster Name:
orclrac-cluster - SCAN Name:
orclrac-scan/ SCAN Port:1521/ GNS: desmarcado
Step 4 — Cluster Node Information — Clique “Add”:
| Campo | Valor |
|---|---|
| Public Hostname | orclrac2 |
| Node Role | HUB |
| Virtual Hostname | orclrac2-vip |
Clique “SSH Connectivity”, informe a senha do oracle → “Setup”. Ambos devem retornar “Succeeded”.
Step 5 — Network Interface Usage:
| Interface | Tipo |
|---|---|
| eth0 | Public |
| eth1 | ASM & Private |
| eth2 | Do Not Use |
Step 6 — Storage Option: Configure ASM using block devices
Step 7 — Grid Infrastructure Management Repository: Yes
Selecionar Yes é obrigatório. Com No, o OUI retorna
[INS-30515]mesmo com redundância External, porque o Oracle reserva espaço adicional no OCR para dados internos do CRS.
Step 8 — Create ASM Disk Group (OCR):
| Campo | Valor |
|---|---|
| Disk group name | OCR |
| Redundancy | External |
| Allocation Unit Size | 4 MB |
| Discos | /dev/sdc, /dev/sdd, /dev/sde |
| ASM Filter Driver | desmarcado |
Step 9 — Create ASM Disk Group (MGMT — GIMR):
| Campo | Valor |
|---|---|
| Disk group name | MGMT |
| Redundancy | External |
| Discos | /dev/sdf |
Step 10 — ASM Password: Welcome1
Step 11 — Failure Isolation: Do not use IPMI (ambiente virtual, não existe IPMI)
Step 12 — Management Options: EM Cloud Control desmarcado
Step 13 — Privileged OS Groups:
| Grupo | Valor |
|---|---|
| OSASM | dba |
| OSDBA for ASM | asmdba |
| OSOPER for ASM | asmoper |
Step 14 — Installation Location:
| Campo | Valor |
|---|---|
| Oracle Base | /u01/app/oracle |
| Software Location | /u01/app/12.2.0/grid |
Warning
[INS-40109]é esperado — clique Yes.
Step 15 — Create Inventory: /u01/app/oraInventory / grupo oinstall
Step 16 — Root Script Execution: Automatically run configuration scripts + senha root
Step 17 — Prerequisite Checks — veja seção Erros Conhecidos
Step 18 — Summary → Install
Step 19 — Install Product / Finish — aguarde concluir
Criar Disk Groups DATA e FRA
Via sqlplus
su - oracle
grid_env
sqlplus / as sysasmCREATE DISKGROUP DATA EXTERNAL REDUNDANCY
DISK '/dev/sdg' NAME DATA1
ATTRIBUTE 'compatible.asm'='12.2','compatible.rdbms'='12.2';
CREATE DISKGROUP FRA EXTERNAL REDUNDANCY
DISK '/dev/sdh' NAME FRA1
ATTRIBUTE 'compatible.asm'='12.2','compatible.rdbms'='12.2';
SELECT NAME, STATE, TOTAL_MB, FREE_MB FROM V$ASM_DISKGROUP;Via asmca (interface gráfica)
su - oracle
grid_env
asmcaBotão direito em Disk Groups → Create → crie DATA (/dev/sdg) e FRA (/dev/sdh), ambos com redundância External.
Verificar Grid
crsctl stat res -t
olsnodes -n -i -s
crsctl query css votedisk
ocrcheckErros Conhecidos
Swap Size — Warning
Sintoma: Swap Size aparece como Warning na tela de Prerequisite Checks.
Causa: O Oracle recomenda swap de pelo menos 8 GB para VMs com 8 GB de RAM. O particionamento automático do OL7 cria um swap menor.
Solução: É apenas um Warning — não impede a instalação. Marque Ignore All e prossiga.
Network Time Protocol (NTP) / chrony — Failed
Sintoma: Network Time Protocol (NTP) e chrony daemon is synchronized with at least one external time aparecem como Failed.
Causa: O chrony não consegue sincronizar com fonte externa por falta de acesso à internet no lab. O OUI valida sincronismo com NTP externo, que não existe nesse ambiente.
Solução: Não impacta o funcionamento do cluster em lab. Marque Ignore All e prossiga.
[INS-30515] Insufficient space available in the selected disks
Causa 1: Redundância NORMAL com discos de 10 GB. Solução: Use External.
Causa 2: O disco /dev/sdf (MGMT/GIMR) tem menos espaço do que o Oracle exige (mínimo ~38 GB). O OUI informa exatamente o tamanho mínimo na mensagem de erro. Solução: Certifique-se de que o lv-gimr foi criado com pelo menos 40960 MB no Openfiler antes de iniciar a instalação do Grid.
INS-41808 / INS-30064 — Grupos ASM ausentes no orclrac2
Sintoma: user "oracle" does not belong to the OS group "asmoper" on remote nodes
Causa: Clone feito antes de criar os grupos ASM.
groupadd -g 54327 asmdba
groupadd -g 54328 asmoper
groupadd -g 54329 asmadmin
usermod -a -G asmadmin,asmoper,asmdba oracleDevice Checks for ASM — Group mismatch
Sintoma: Group of device "/dev/sdc" did not match. [Expected = "dba"; Found = "asmadmin"]
sed -i 's/GROUP="asmadmin"/GROUP="dba"/' \
/etc/udev/rules.d/99-oracle-asmdevices.rules
udevadm control --reload-rules && udevadm triggerDNS/NIS — SCAN failed to resolve
Causa: OUI usa nslookup, não lê /etc/hosts. Solução: Configurar dnsmasq. Se persistir, clique “Ignore All” — o cluster funcionará.
CRS-1705 — Found 1 voting file but 2 required (após religar as VMs)
Causa: iSCSI reconectou pelas duas interfaces, duplicando os discos.
iscsiadm -m node \
-T iqn.2006-01.com.openfiler:rac-storage \
-p 192.168.15.175 --logout
iscsiadm -m node \
-T iqn.2006-01.com.openfiler:rac-storage \
-p 192.168.15.175 --op delete
crsctl stop crs -f
sleep 10
crsctl start crs
sleep 30
crsctl check crsORA-15030 — diskgroup name is in use
Causa: Criação do disk group falhou parcialmente. Solução: Reiniciar os servidores.
Próxima Parte
No Post 4 vamos instalar o Oracle Database Software e criar o banco RAC com o DBCA.
