Autor: Victor Armbrust [email protected] http://victordba.net
Transcrição
Autor: Victor Armbrust [email protected] http://victordba.net
Grid Infrascture - Installation Guide Versão 12cR1 – 12.1.0.1 OEL 5.0 Kernel 2.6.32.300.10.1-el5uek - 2 nodes configuration - 12cR1 New Features - Database Upgrade 11gR2 / 12cR1 Autor: Victor Armbrust [email protected] http://victordba.net Data: Julho / 2013 Objetivo ....................................................................................................................................................... 4 Introdução ................................................................................................................................................... 4 Motivadores ................................................................................................................................................ 4 Visão Geral do Oracle RAC 12cR1 ............................................................................................................ 4 Ordem de StartUp ....................................................................................................................................... 6 Principais Processos do Oracle RAC ....................................................................................................... 7 Principais mudanças no Oracle Database 12cR1 e Oracle Real Application Clusters 12cR1 ............ 8 Oracle Database 12cR1 .............................................................................................................................. 8 Multitenant Architecture ......................................................................................................................................... 8 Pluggable Databases ............................................................................................................................................ 8 Consolidação de Databases ................................................................................................................................. 8 Movimentação Online de Datafiles ........................................................................................................................ 8 RMAN Backup Restore Cross-Platform ................................................................................................................ 9 RMAN MultiSection ............................................................................................................................................... 9 RMAN Table Recovery .......................................................................................................................................... 9 Oracle Real Application Clusters 12cR1 .................................................................................................. 9 Application Continuity ............................................................................................................................................ 9 Transaction Guard ................................................................................................................................................. 9 Transaction Idempotence ...................................................................................................................................... 9 Flex Clusters ....................................................................................................................................................... 10 Flex ASM ............................................................................................................................................................. 11 Shared Oracle ASM Password File in a Disk Group ........................................................................................... 13 Oracle ASM chown, chgrp, chmod e Open Files ................................................................................................ 13 Backup OCR in ASM Disk Group ........................................................................................................................ 13 Oracle ACFS e ADVM ......................................................................................................................................... 13 Global Data Services ........................................................................................................................................... 13 Shared Grid Naming Service ............................................................................................................................... 13 What-If Command Evaluation ............................................................................................................................. 13 Restrições de registro de Serviços ...................................................................................................................... 13 Oracle High Available NFS .................................................................................................................................. 13 Policy-Based Cluster Management and Administration ...................................................................................... 14 Recursos e Parâmetros depreciados na versão 12cR1 ........................................................................ 14 Parâmetros Depreciados ..................................................................................................................................... 14 Recursos Depreciados ........................................................................................................................................ 15 Features mantidas no Oracle Real Application Clusters 12cR1 .......................................................... 16 ADR – Automatic Diagnostic Repository ............................................................................................................. 16 Senhas ................................................................................................................................................................ 16 SCAN – Single Access Name ............................................................................................................................. 16 LOAD Balance em conexões via SCAN .............................................................................................................. 17 Oracle Grid Infrastructure .................................................................................................................................... 17 Online Application Upgrade ................................................................................................................................. 17 Ambiente ................................................................................................................................................... 18 Primary ...................................................................................................................................................... 18 Configurando o Sistema Operacional .................................................................................................... 20 1 – Descrição de Servidores x Bancos de Dados ............................................................................................... 20 1.1 – Definindo Estruturas de Rede (bond / HAIP) ............................................................................................. 20 1.2 – Configurando interfaces públicas (bond0).................................................................................................. 21 Verificando a configuração do Bonding ............................................................................................................... 22 1.3 – Configurando interfaces privadas (HAIP) ................................................................................................... 23 2 – Pré-Requisitos ............................................................................................................................................... 25 2.1 – Criar os Grupos no S.O .............................................................................................................................. 25 2.2 – Criar os usuários para o GRID e DATABASE ............................................................................................ 25 2.3 – Definir senhas para novos Usuários .......................................................................................................... 25 2.4 – Configuração de Serviços do S.O .............................................................................................................. 26 2.5 – Configuração do HugePages ..................................................................................................................... 27 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 2 2.6 – Configuração de Parâmetros do Kernel ..................................................................................................... 31 2.7 – Atualização de limits do Shell para user “oracle” ....................................................................................... 34 2.7.1 – Editar limits.conf ...................................................................................................................................... 35 2.7.2 – Editar login .............................................................................................................................................. 35 2.7.3 – Editar profile ............................................................................................................................................ 35 2.8 – Desabilitar SELINIX .................................................................................................................................... 36 2.9 – Criar o Diretório do Oracle Inventory .......................................................................................................... 36 2.10 – Criar o Diretório do Grid Infrastructure ..................................................................................................... 36 2.11 – Criar o Diretório do Oracle Base .............................................................................................................. 36 2.12 – Criar o Diretório do Oracle RDBMS ......................................................................................................... 37 2.13 – Criar os Pacotes de instalação ................................................................................................................. 37 2.14 – Verificar todos os pacotes necessários do SO (64 Bits) .......................................................................... 37 2.15 – Criar o arquivo .bash_profile do user oracle e grid .................................................................................. 41 2.17 – Configurar o /etc/hosts ............................................................................................................................. 43 2.18 – Configurar o DNS para RAC-SCAN ......................................................................................................... 43 2.18 – Configurar o NTPD em todos os NODES ................................................................................................ 47 2.19 – Configurar network em todos os Nodes ................................................................................................... 47 2.20 – Configurar o a equivalência de senhas entre usuários ............................................................................ 48 ASMLIB ...................................................................................................................................................... 49 3 – Descrição ...................................................................................................................................................... 49 3.1 – Verificando o Kernel ................................................................................................................................... 49 3.2 – Instação dos Pacotes RPM ........................................................................................................................ 49 3.3 – Configurando o Driver ASMLIB .................................................................................................................. 50 3.4 – Particionando discos para o ASM .............................................................................................................. 50 3.5 – Criando discos para o ASM ........................................................................................................................ 51 Descompactar Binários ........................................................................................................................... 53 Validação Pré-instalação ......................................................................................................................... 53 Instalação do Grid Infrastructure for a Cluster (RAC) Standard Cluster ............................................ 58 4 – Instalação ...................................................................................................................................................... 58 4.1 – Checando os serviços do Grid Infrastructure ............................................................................................. 71 4.2 – Grid Infrastructure Management Database ................................................................................................ 72 4.3 – Gerenciamento do MGMTDB ..................................................................................................................... 73 Instalação do RDBMS – Software Only Install ....................................................................................... 77 5 – Instalação ...................................................................................................................................................... 77 5.1 – Validando a Instalação ............................................................................................................................... 87 Criação do Diskgroup no ASM Para o Banco de Dados ....................................................................... 88 6 – Criar o diskgroup DATA ................................................................................................................................ 88 Criação do Database ................................................................................................................................ 91 7 – Criar o Banco de Dados ................................................................................................................................ 91 Validação Pós-instalação ...................................................................................................................... 103 7 – Validação do Cluster ................................................................................................................................... 103 7.1 – Validação do OCR .................................................................................................................................... 104 7.3 – CVU .......................................................................................................................................................... 105 Referências ............................................................................................................................................. 110 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 3 Objetivo O objetivo deste documento é descrever passo a passo a instalação de um ambiente Oracle 12cR1 com Grid Infrastructure Clusterware Server para configuração com 2 Nodes bem como demonstrar um overview das novas features do Oracle Database 12cR1. Introdução O ambiente de Banco de Dados é composto por 2 (dois) servidores configurados com Oracle Grid Infrastructure Clusterware. Neste documento trataremos da instalação e Configuração do Ambiente completo apra instalação do Grid Infrastructure Clusterware + Database. Motivadores Como melhor prática a Oracle sempre recomenda a atualização da versão dos produtos de Banco de Dados para a última versão. Além desta recomendação, existe uma série e diferenças entre as versões 9i/10g/11g para 12cR1. A Seguir algumas delas. Visão Geral do Oracle RAC 12cR1 Um cluster consiste em multiplos computadores interconectados ou servidores que tem como objetivo compartilhar / processar requisições de usuários em aplicações para usuários finais. O Oracle RAC permite que um Database seja clusterizado. O Oracle RAC utiliza o Oracle Grid Infrastructure e Clusterware como infraestrutura para processar várias instances como um sistema único. Abaixo o funcionamento do Oracle RAC: GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 4 Exemplo de ambiente utilizando Oracle Real Application Clusters 12cR1 (Hub-Nodes): GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 5 Ordem de StartUp Para iniciar o cluster existe uma ordem para o startup dos Serviços, isso garante a inicialização correta do Oracle RAC: GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 6 Principais Processos do Oracle RAC Um cluster consiste em vários processos no SO. Os Processos GCS, GES e GRD consistem no funcionamento do Oracle Cache Fusion (Responsável por troca de blocos em memória entre os Nodes do Cluster.) Abaixo alguns processos do Oracle RAC: • ACMS: Atomic Controlfile do Memory Service Num ambiente Oracle RAC, o ACMS contribui para garantir que as atualizações na Memória SGA seja distribuída entre os nodes, com sucesso ou falha. • GTX0-j: Global Transaction Process O processos GTX0-j suporta transações globais num ambiente Oracle RAC. O Database automaticamente calcula o numero desses processos baseando-se na carga de transações XA globais. • LMON: Global Enqueue Service Monitor O processo LMON monitora filas Globais e recursos do Cluster e executa recover de operações LMD (GlobalEnqueue Daemon) Os processos LMD gerenciam as solicitações remotas de cada instance do Cluster. • LMD: Global Enqueue Service Daemon Este processo gerencia cara uma das requisições remotas de recursos de cada uma das instances. • LMS: Global Cache Service Process O processo LMS mantém registros dos status dos Datafiles e de cada bloco em cache registrados no Global Resource Directory (GRD). O Processo LMS também controla as mensagens para instancias remotas e gerencia o acesso e transmissão de blocos da Buffer Cache entre as diferentes Instances do cluster. Esse processo faz parte da feature Cache Fusion. • LCK0: Instance Enqueue Process O processo LCK0 administra as requisições de recursos que não são da Cache Fusion como por exemplo requisições library w row cache. • RMSn: Oracle RAC Management Processes Administra e gerencia tarefas do Oracle RAC. Algumas dessas tarefas incluem criação de recursos quando adcionada uma nova instância em um cluster. GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 7 Principais mudanças no Oracle Database 12cR1 e Oracle Real Application Clusters 12cR1 Em relação a versões anteriores do Oracle Database existem algumas diferenças, como: Oracle Database 12cR1 Multitenant Architecture O Multitenant Container Database (CDB) é um Oracle Database que contém um ou mais Pluggable Databases (PDB). Um PDB é uma coleção portátil de Schemas, Objetos, e objetos gerais que são visualizados por uma aplicação qualquer como um database completo. Este é um novo conceito no Oracle Database 12c. O Oracle Multitenant permite que que vários PDBs compartilhem recursos de um único CDB, mas ainda sim mantendo cada PDB isolado de outros PDBs. Este recurso facilita muito a consolidação de databases mas ainda sim mantendo estruturas físicas e lógicas de cada Database (PDB) separados. No Oracle Grid Infrastructure 12c, o Cluster é feito a nível do Container Database (CDB) e cada um de seus PDBs pode ser identificado como um serviço no cluster, usando todos os nodes ou apenas 1 node do cluster. Pluggable Databases Um Pluggable Database é um database portátil dentro de um Container Database (CDB) que contém todos os componentes de um database comum (Objetos, Schemas, Datafiles, etc.) Essa coleção de componentes é chamada de Pluggable Database (PDB). É possível remover um PDB de um CDB e transportá-lo completamente para outro CDB. Consolidação de Databases Com a utilização da arquitetura Multitenant e o Pluggable Databases a consolidação de Databases / Informações ficou muito mais simplificada, facilitando administração e gerenciamento dos Databases, uma vez que toda a Configuração de Performance, Backup e Clusterização é feito a nível de CDB e não PDB. Movimentação Online de Datafiles Um datafile agora pode ser movimentado de um local para outro com o Banco de Dados Online (PDB) e sendo acessado normalmente. Com este novo recurso, datafiles podem ser movimentados de um ponto (file system) para outro, ou ainda para dentro do ASM enquanto o Banco de Dados continua operacional, sem necessidade de outage. Este recurso garante SLA e não necessita downtime. GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 8 RMAN Backup Restore Cross-Platform Agora na versão 12cR1, backups e restores via RMAN podem ser realizados sem a especificação de cláusulas para conversão do backup. O Procedimento foi simplificado para facilitar o lado operacional do DBA. RMAN MultiSection Tanto para Backups, Restores, Duplicates ou restores via rede, o RMAN permite o uso de vários setores para uma única operação facilitando operações específicas dividindo as diversas operações em SECTION SIZES além de permitir cópias de datafiles entre databases (PDB). RMAN Table Recovery Agora com a versão 12cR1 o RMAN tem a capacidade de realizar Restore e/ou Recover em table-level, evitando a necessidade de restore de tablespaces para exportação de tabelas e depois importação em novo DAtabase.. ** IMPORTANTE ** Para visualizer todas as melhorias Gerais do Oracle Database 12c utilize o link abaixo: http://docs.oracle.com/cd/E16655_01/server.121/e17906/chapter1.htm#AREANO02530 Oracle Real Application Clusters 12cR1 Application Continuity Application Continuity é um recurso que tem a capacidade de omitir falhas de outage para aplicações ou usuários do banco de dados. Este recurso simplesmente faz o replay da solicitação transacional ou não de um usuário ou aplicação e faz com que o tempo de “outage” pareça como simplesmente um Delay na conexão. Com este recurso usuários ou aplicações não identificam perdas de conexão ou outage, mantendo assim o tempo de resposta e evitando alarmes desncessários. Transaction Guard Esta é uma API que aplicações podem usar em gerenciamento de erros. É uma API confiável que retornar para a aplicação quando um erro que possa ser recuperado ocorreu em sua conexão. O transaction guard permite que sejam eliminadas dúvidas entre transações que realizaram ou não um commit ou rollback. Transaction Idempotence Como complement de Application Continuity e Transaction Guard, este recurso permite que aplicações ou conexões façam recover de suas transações em falhas de comunicação que possam ocorrer. Garante também na grande maioria dos casos que transações sejam executadas no momento desejado. GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 9 Flex Clusters Com a versão 11gR2 costumeiramente eram montados clusters de até 64 nodes, com visao até 100 nodes. Com o Oracle Flex Clusters 12c é possível a configuração de clusters com até 2000 nodes, permitindo maior escalabilidade e performance. O Oracle Flex Clusters utiliza o conceito de Hub-Nodes em sua topologia O Core de um Flex Cluster são os Hub-Nodes. Este grupo utiliza exatamente o mesmo conceito do Cluster 11.2, e pode ser escalonado do mesmo jeito. Deve existir um (e apenas um) grupo de Hub-Nodes no conceito de Flex Clusters, e como no mesmo conceito do Cluster 11.2, todos os Hub-Nodes devem estar conectados a um storage compartilhado (utilizando ASM, por exemplo). Podem existir ou não Leaf-Nodes conectados a um Flex Cluster. Cada um dos LeafNodes (se existir) devem estar conectados a um Hub-Node, que este sim, tem todo o acesso ao Shared Storage. O Mais interessante é: Diferentemente do Conceito de Extended-RAC do 11.2, os Leaf-Nodes não precisam mais de acesso ao Shared Storage, uma vez que utilizam o acesso de Hub-Nodes para acessar os dados de cada PDB. **IMPORTANTE:** Para utilizar o recurso de Flex Clusters, é necessário a configuração do Flex ASM. GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 10 Flex ASM Até a versão 11gR2, os recursos do ASM eram alocados invidividualmente em cada node de um Cluster exigindo assim que cada um desses nodes utilizassem CPU, Memória, Rede e recursos gerais para manter a instance ASM funcionando corretamente e disponível para os recursos alocados em cada node do Cluster. Na versão 12cR1 foi introduzido um novo conceito: FLEX ASM. Este por sua vez permitem que clients e recursos conectem-se à uma Instância ASM via rede (network). Com o Flex ASM pequenos pools de de instâncias ASM podem ser utilizados para um grande número de Nodes (ou database servers). Neste cenário, quando uma instância ASM falhar, outra instância ASM poderá ser acessada normalmente. ** IMPORTANTE ** O Conceito anterior do ASM ainda permanece (Cada node do Cluster com sua respective instância ASM, este agora porém é chamado de “Standard ASM”). Considerações Importantes: - Flex Clusters precisam de Flex ASM; Standard ASM não suporta Flex Cluster; Flex ASM não precisa de um Flex Cluster; - Flex ASM pode ser configurado em um cluster Comum; - Flex ASM pode ser utilizado em Hub-Nodes de um Flex Cluster; Flex ASM pode ser utilizado em qualquer tipo de Cluster ou Tamanho; Nas versões anteriores o CSS cluster detinha um acesso à rede publica e um ou mais acessos à rede interconnect (usando HAIP ou não). A Rede publica era utilizada para acesso de clients ao Cluster assim como acesso interconnect para intercomunicação dos nodes do cluster ou acesso ao ASM (No caso do Exadata Database Machine). Com a Nova topologia do Flex ASM foi introzido um novo conceito: ASM Network. Esta erde é utilizada para comunicação do ASM com seus respectivos clients. Pode existir mais de uma rede ASM em um cluster, o ASM prove todos os seus serviços através da rede ASM (Quando este FLEX ASM). É possível ainda configurar uma única rede para interconexão dos Nodes bem como utilização do Flex ASM. Sendo assim, com este novo conceito, cada instância ASM possui seu respectivo LISTENER. Este é um novo listener que funciona juntamente com os SCAN Listeners e os LISTENERS para cada Database (VIP). GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 11 Nova Topologia – ASM Network ASM LISTENERs GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 12 Shared Oracle ASM Password File in a Disk Group Este recurso permite que o password file (orapw*) mantenha-se armazenado dentro de um diskgroup do ASM. Oracle ASM chown, chgrp, chmod e Open Files Agora através do Console ASMCMD é possível alterar permissão de arquivos do Banco de Dados, ownership e permissões. Backup OCR in ASM Disk Group É possível também com a nova versao 12cR1 manter backups do OCR file dentro de diskgroups do ASM, sendo assim em caso de restore, fica mais simplificado o processo mantendo todos os nodes do cluster com essa possibilidade. Oracle ACFS e ADVM Estes recursos permanecem tanto para Armazenamento de Oracle Homes ou File Systems com propósito gerais de compartilhamento de arquivos entre o Cluster. Global Data Services Utilizando ainda o conceito de Oracle Multitenant o GDS veio para simplificar a adminsitração em cluster deste novo conceito. Similar ao Oracle RAC que suporta serviços para databases específicos, o Global Data Services pode centralizar o gerenciamento de vários bancos dados como failover, load balance e serviços. O mesmo pode ser utilizado para oracle Data Guard, Golden Gate ou outra tecnologia de replicação. Shared Grid Naming Service Uma única instância do GNS pode servir vários clusters. What-If Command Evaluation O Oracle Clusterware 12cR1 possui uma séria de comandos para validar o impacto no ambiente de algum commando ou alteração específico(a) antes que o mesmo seja executado. Este recurso ajuda os Administradores de Banco de Dados determinar qual o impacto que sera gerado devido a alguma determinada operação ou commando. Restrições de registro de Serviços Este recurso permite que somente alguns Ips permitam registro de serviços no listener. Oracle High Available NFS É possível também nesta nova versão utilizar File Systems ACFS como NFS. Neste cenário caso uma instância do ACFS esteja offline, ainda sim é possível utilizar o ACFS como High Available e disponível para todas os nodes do Cluster. GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 13 Policy-Based Cluster Management and Administration O Oracle Clusterware pode executar diversas aplicações entre os nodes do Cluster. Com essa nova tecnologia é possível alocar recursos e aplicações através do uso de politicas para cada aplicação. A Distribuição de Workload pode ser modificada no cluster de acordo com a necessidade de cada aplicação. ** IMPORTANTE ** Para visualizer todas as melhorias de High Availability do Oracle Database 12c utilize o link abaixo: http://docs.oracle.com/cd/E16655_01/server.121/e17906/chapter1.htm#AREANO02520 Recursos e Parâmetros depreciados na versão 12cR1 Os recursos já existentes na versão 11gR2 permanecem, tais como: Parâmetros Obsoletos Parâmetros depreciados nesta nova versao: active_instance_count background_dump_dest buffer_pool_keep buffer_pool_recycle commit_write cursor_space_for_time fast_start_io_target global_context_pool_size instance_groups lock_name_space log_archive_local_first log_archive_start max_enabled_roles parallel_automatic_tuning parallel_io_cap_enabled parallel_server parallel_server_instances plsql_v2_compatibility remote_os_authent resource_manager_cpu_allocation sec_case_sensitive_logon serial_reuse sql_trace standby_archive_dest user_dump_dest GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 14 Recursos Obsoletos Alguns recursos que foram depreciados na nova versão 12cR1 do Oracle Database: - Oracle EM Database Control - Substituido por Oracle EM Express Upgrade Utility (catuprd.sql ) - Substituido por Parallel Upgrade Utility (catctl.pl) Oracle Streams Advanced Replication Single Character SRVCTL - Utilizado somente opções com nome completo OCFS para Windows Raw Devices OWB não faz mais parte do Oracle Database HOME ** IMPORTANTE ** Para visualizer todas as melhorias do Oracle Database 12c utilize o link abaixo: http://docs.oracle.com/cd/E16655_01/server.121/e17642/deprecated.htm#UPGRD60000 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 15 Features mantidas no Oracle Real Application Clusters 12cR1 Os recursos já existentes na versão 11gR2 permanecem, tais como: ADR – Automatic Diagnostic Repository Ferramenta para auxiliar na prevenção, detecção e diagnóstico de problemas com BUG’s em banco de dados. O ADR centraliza todos os traces e logs de todos os componentes, tais como ASM, CRS, LISTENER. Senhas As senhas agora por padrão são SENSITIVE CASE, portanto, muita atenção com usuários de aplicação, isso poderá ser um problema em uma migração. O recurso pode ser desligado alterando o parâmetro sec_case_sentitive_logon = FALSE. SCAN – Single Access Name Single Client Access Name (SCAN) é uma nova feature do Oracle RAC 11gR2 que dispõe de um nome qualificado para o acesso do Oracle Database em um cluster. Alguns dos benefícios é a possibilidade de adicionar ou remover nodes de um cluster sem a necessidade de alterar os clients. O SCAN é o responsável por load balancing e failover, mudando consideravelmente o Oracle Net de um ambiente em cluster. GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 16 LOAD Balance em conexões via SCAN Oracle Grid Infrastructure Com o Oracle Grid Infrastructure, o ASM e o Clusterware são instalados em único home, tornando-se uma plataforma unificada de infraestrutura do Oracle RAC. Arquivos do Clusterware como OCR e Voting Disks, podem ser armazenados no ASM, unificando as soluções de armazenamento. Para novas instalações a opção de armazenamento dos arquivos de Clusterware em raw devices, não é mais suportada. Estas consigurações também se aplicam para a configuração STANDALONE SERVER. ACFS – Automatic Storage Management Cluster File System é um novo recurso de armazenamento, suportando todas as plataformas, provendo uma file system dinâmica, distribuída performaticamente, balanceamento sobre todos os discos envolvidos. Substituí o antigo OCFS. Cluster Time Synchronization Service – CTSS, serviço responsável por manter o sincronismo de tempo entre os nodes. Oracle Universal Installer do Grid Infrastructure gera scripts automaticamente para fix de pré-requisitos não atendidos. Online Application Upgrade Nessa versão é permitido que sejam realizados upgrades online sem qualquer indisponibilidade para aplicações. Anteriormente quando um commando DDL era executado e outra sessão tentava realizar um DML no mesmo objeto ocorria falha. Isto não acontece mais. Melhorias nos processos Create e Rebuild index (no waits). O modelo de dependências do banco mudou para o chamado “finegrained”. Ex: Adicionar uma nova coluna em uma tabela ou um novo subprograma para uma package spec, não invalidará suas dependências. GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 17 Ambiente Abaixo segue a descrição do ambiente Primary O ambiente PRIMARY é composto de 2 (dois) servidores Linux, descrito abaixo: Versão de SO Versão de Kernel Versão Oracle Modelo de Hardware Forma de Fábrica Memória Qtd de CPU´s Interfaces de Rede Switch Interconnect Swap Redundância IP Servidor IP Virtual (Público) IP interconnect IP interconnect IP Listener (Scan) IP Listener (Scan) IP Listener (Scan) Domínio Disco Local Software / Discos Storage Nome dos Banco de Dados Racnode1 Oracle Enterprise Linux 5.8 (tikanga) 2.6.32.300.10.1.el5uek Grid Infrastructure 12.1.0.1 / Database 12.1.0.1 VMware - Virtualizado 2U 4 Gb 2 @ Intel® Xeon® 5600 series 4 (1000mbp/s) N/A 3,5GB Bonding + HAIP 192.168.1.11 192.168.1.21 10.1.0.1 10.11.0.1 192.168.1.5 192.168.1.6 192.168.1.7 home.local 2x 20GB iSCSI Openfiler – 192.168.1.10 oradb ** Observação ** O ambiente foi montado com OEL 5.8 devido a problemas de configuração do OPENFILER com Kernel uek do OEL6. O ideal é a configuração deste ambiente com OEL 6. GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 18 Versão de SO Versão de Kernel Versão Oracle Modelo de Hardware Forma de Fábrica Memória Qtd de CPU´s Interfaces de Rede Switch Interconnect Swap Redundância IP Servidor IP Virtual (Público) IP interconnect IP interconnect IP Listener (Scan) IP Listener (Scan) IP Listener (Scan) Domínio Disco Local Software / Discos Storage Nome dos Banco de Dados racnode2 Oracle Enterprise Linux 5.8 (tikanga) 2.6.32.300.10.1.el5uek Grid Infrastructure 12.1.0.1 / Database 12.1.0.1 VMware - Virtualizado 2U 4 Gb 2 @ Intel® Xeon® 5600 series 4 (1000mbp/s) N/A 3,5GB Bonding + HAIP 192.168.1.12 192.168.1.22 10.1.0.2 10.11.0.2 192.168.1.5 192.168.1.6 192.168.1.7 home.local 2x 20GB iSCSI Openfiler – 192.168.1.10 oradb GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 19 Configurando o Sistema Operacional Neste passo, basta instalar o Sistema Operacional com configurações padrão. Não existe nenhuma especificação neste momento, o mais importante é a versao. Mais adiante serão instalados os pacotes necessaries e configurações específicas. No momento da instalação do SO, é importante lembrar os tamanhos para memória física, virtual (SWAP), e espaço em disco, que devem seguir a tabela abaixo: (Vide note: 880989.1) - Mínimo de 4.0GB (4096MB) de memoria RAM – Física; Memória virtual (SWAP) segundo os requisites abaixo: RAM De 4 GB á 8 GB De 8 GB á 32 GB Mais de 32 GB - Swap 2x o tamanho total da RAM 1.5x o tamanho total da RAM 32 GB 1.0 GB de espaço livre no /tmp; Aproximadamente 4.4 GB para instalação do Software de Database; Aproximadamente 2.4 GB para instalação do Software Grid Infrastructure; 1 – Descrição de Servidores x Bancos de Dados Neste ambiente, temos: Servidor racnode1 racnode2 gridserver1 IP 192.168.1.11 192.168.1.12 192.168.1.8 Instance oradb1 oradb2 griddb Database oradb oradb griddb Role PRIMARY PRIMARY DNS/GRIDSERVER 1.1 – Definindo Estruturas de Rede (bond / HAIP) Antes de prosseguir, é importante definir todas as estruturas de rede que estarão configuradas em cada NODE. A Oracle recomenda a utilização de Redundância nos endereços IPs que ficarão disponíveis tanto para Rede Pública (Acesso a dados, SSH, etc) quanto para rede Privada (Interconnect). GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 20 1.2 – Configurando interfaces públicas (bond0) Para configurar o recurso de Bonding (NIC TEAM) no Linux, deve-se configurar inicialmente as placas de rede que farão parte deste Bond. Para maiores informações consultar o note: 434375.1. Mesmo nas versões Enterprise do Linux o sistema não carregada automaticamente os Drivers da placa de rede a menos que a mesma possua um endereço IP. Deve-se configurar manualmente as placas envolvidas com o recurso de Bonding: cd /etc/sysconfig/network-scripts Editar os Devices que farão parte do Bonding, neste caso eth0 e eth1: vi ifcfg-eth0 DEVICE=eth0 USERCTL=no ONBOOT=yes MASTER=bond0 SLAVE=yes BOOTPROTO=none vi ifcfg-eth1 DEVICE=eth1 USERCTL=no ONBOOT=yes MASTER=bond0 SLAVE=yes BOOTPROTO=none Agora que as interfaces eth0 e eth1 têm como MASTER o device virtual bond0, devemos configurar o device master: DEVICE=bond0 IPADDR=192.168.1.11 NETMASK=255.255.255.0 NETWORK=192.168.1.0 BROADCAST=192.168.1.255 ONBOOT=yes BOOTPROTO=none USERCTL=no GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 21 Editar o arquivo /etc/modprobe.conf e incluir as linhas abaixo: alias bond0 bonding options bond0 mode=balance-alb miimon=100 Neste momento as configurações estão definidas, e os drivers prontos para serem carregados. Basta agora efetuar um “restart” das placas de rede: /etc/rc.d/init.d/network restart ** IMPORTANTE **: Esta configuração deve ser feita em cada node, cada um com seu respective endereço ip: Verificando a configuração do Bonding Cada bond device possui um arquivo “somente-leitura”localizado em: /proc/net/bonding Este arquivo contém informações sobre a configuração e opções de cada device compost pelo bond. Examplo: /proc/net/bonding/bond0 cat /proc/net/bonding/bond0 Ethernet Channel Bonding Driver: 2.6.1 (October 29, 2004) Bonding Mode: load balancing (round-robin) Currently Active Slave: eth0 MII Status: up MII Polling Interval (ms): 1000 Up Delay (ms): 0 Down Delay (ms): 0 Slave Interface: eth1 MII Status: up Link Failure Count: 1 Slave Interface: eth0 MII Status: up Link Failure Count: 1 Neste momento, devem ser realizados testes de retirada de cabos de rede, a fim de verificar se a configuração ficou correta. O Downtime deve ser 0, este é o objetivo de utilizer este recurso. GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 22 1.3 – Configurando interfaces privadas (HAIP) Redundância na interface do interconnect sem nenhuma tecnologia terceira (a nivel de SO: BOND, IPMP,etc) é uma feature iniciada no Oracle 11gR2, a partir da versao 11.2.0.2 e se mantém para a versão 12cR1. Múltiplas interfaces privadas de rede podem ser definidas tanto na instalação como no pós –instalação (usando o ifcfg). Os serviços CSS, OCR, CRS, CTSS e EVM na versao 11.2.0.2+ gerenciam isso automaticamente. O Grid Infrastructure pode ativar no máximo 4 (quarto) adaptadores ao mesmo tempo para utilização do HAIP. O Recurso cluster_interconnect.haip iniciará 1 (um) IP virtual para cada interface dedicada para o interconnect. O GI automaticamente utiliza endereços IPs locais reservados 169.254.*.* para subrede do service HAIP, e não irá utilizer nenhum outro endereço da subrede 169.254.*.* para nenhum outro propósito. Com o HAIP configurado, por default, o tráfigo de dados no interconnect sera Balanceado e também com opções de Fail-Over onde os IPs virtuais “navegam” pelas interfaces do interconnect de forma transparente. Isto acontece caso ocorra falha em uma interface ou a mesma permaneça não-comunicável. O objetivo da utilização do HAIP, é obter Alta-Disponibilidade dos Nodes do Cluster, mesmo em caso de falhas ou perda de comunicação nas interfaces do interconnect. Exemplo de utilização de HAIP: $GRID_HOME/bin/oifcfg getif eth1 10.1.0.128 global cluster_interconnect eth3 10.1.0.0 global public eth6 10.11.0.128 global cluster_interconnect eth7 10.12.0.128 global cluster_interconnect $ $GRID_HOME/bin/oifcfg iflist -p -n eth1 10.1.0.128 PRIVATE 255.255.255.128 eth1 169.254.0.0 UNKNOWN 255.255.192.0 eth1 169.254.192.0 UNKNOWN 255.255.192.0 eth3 10.1.0.0 PRIVATE 255.255.255.128 eth6 10.11.0.128 PRIVATE 255.255.255.128 eth6 169.254.64.0 UNKNOWN 255.255.192.0 eth7 10.12.0.128 PRIVATE 255.255.255.128 eth7 169.254.128.0 UNKNOWN 255.255.192.0 Nota: O Haip neste cenário iniciou 4 (quarto) IPs virtuais, 2 na eth1, e 1 na eth6 e eth7. Para acompanhar testes de conectividade, verificar os arquivos de log abaixo: $GRID_HOME/log/<nodename>/ohasd/ohasd.log $GRID_HOME/log/<nodename>/agent/ohasd/orarootagent_root/orarootage nt_root.log GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 23 Configurar as interaces eth2 e eth3 para suportar o HAIP para interconnect: DEVICE=eth2 IPADDR=10.11.0.1 NETMASK=255.255.0.0 NETWORK=10.11.0.0 BROADCAST=10.11.255.255 ONBOOT=yes BOOTPROTO=none USERCTL=no DEVICE=eth3 IPADDR=10.1.0.1 NETMASK=255.255.0.0 NETWORK=10.1.0.0 BROADCAST=10.1.255.255 ONBOOT=yes BOOTPROTO=none USERCTL=no Executar um “restart” dos serviços de rede: service network restart GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 24 2 – Pré-Requisitos 2.1 – Criar os Grupos no S.O Executar como “root” /usr/sbin/groupadd /usr/sbin/groupadd /usr/sbin/groupadd /usr/sbin/groupadd /usr/sbin/groupadd -g -g -g -g -g 501 502 504 506 507 oinstall dba asmadmin asmdba asmoper 2.2 – Criar os usuários para o GRID e DATABASE Executar como “root” /usr/sbin/useradd -u 501 -g oinstall -G asmadmin,asmdba,asmoper,dba grid /usr/sbin/useradd -u 502 -g oinstall -G dba,asmdba oracle 2.3 – Definir senhas para novos Usuários Executar como “root” passwd oracle Changing password for user oracle. New UNIX password: password retype new UNIX password: password passwd: all authentication tokens updated successfully. passwd grid Changing password for user oracle. New UNIX password: password retype new UNIX password: password passwd: all authentication tokens updated successfully. GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 25 2.4 – Configuração de Serviços do S.O Para início automatic no boot chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig chkconfig anacron off atd off cups off cups-config-daemon off gpm off iptables off kudzu off lvm2-monitor off microcode_ctl off sendmail off smartd off auditd off avahi-daemon off bluetooth off firstboot off hidd off ip6tables off mcstrans off mdmonitor off pcscd off rawdevices off readahead_early off readahead_later off restorecond off setroubleshoot off yum-updatesd off nfs off autofs on cpuspeed on haldaemon on irqbalance on messagebus on netfs on nfslock on rpcgssd on rpcidmapd on portmap on pcscd on rpcsvcgssd on GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 26 2.5 – Configuração do HugePages *** IMPORTANTE *** Para ativação do HugePages, o Kernel não pode ser ”Xen” e sim kernel normal ”el5” ou ”el5uek”. Verificar se o Huge Pages já está ativo: grep Hugepagesize /proc/meminfo AnonHugePages: HugePages_Total: HugePages_Free: HugePages_Rsvd: HugePages_Surp: Hugepagesize: 0 kB 0 0 0 0 2048 kB Basicamente o Huge Pages otimiza alocação de memoria para processos com grande alocação de memoria (assim como instância Oracle). O Cálculo básico para o Huge Pages é: Huge Pages = Total da Soma de SGAs de todos os Databases em Bytes / 2048 Onde: 2048 bytes = Tamanho de Cada Página no linux Exemplo: SGA = 20971520 bytes Página Linux= 2048 bytes SGA / Página Linux = 10240 páginas Logo: vm.nr_hugepages = 10240 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 27 Existem 2 opções para cálculo do huge Pages: 1 – Utilizar a formula acima para os Databases, mesmo que estes ainda não existam. 2 – Utilizar o script a seguir para caclular (Necessita que os Databases já estejam online) Shell Script to Calculate Values Recommended Linux HugePages / HugeTLB Configuration [ID 401749.1]) #!/bin/bash # # hugepages_settings.sh # # Linux bash script to compute values for the # recommended HugePages/HugeTLB configuration # # Note: This script does calculation for all shared memory # segments available when the script is run, no matter it # is an Oracle RDBMS shared memory segment or not. # # This script is provided by Doc ID 401749.1 from My Oracle Support # http://support.oracle.com # Welcome text echo " This script is provided by Doc ID 401749.1 from My Oracle Support (http://support.oracle.com) where it is intended to compute values for the recommended HugePages/HugeTLB configuration for the current shared memory segments. Before proceeding with the execution please note following: * For ASM instance, it needs to configure ASMM instead of AMM. * The 'pga_aggregate_target' is outside the SGA and you should accommodate this while calculating SGA size. * In case you changes the DB SGA size, as the new SGA will not fit in the previous HugePages configuration, it had better disable the whole HugePages, start the DB with new SGA size and run the script again. And make sure that: * Oracle Database instance(s) are up and running * Oracle Database 11g Automatic Memory Management (AMM) is not setup (See Doc ID 749851.1) * The shared memory segments can be listed by command: # ipcs -m GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 28 Press Enter to proceed..." read # Check for the kernel version KERN=`uname -r | awk -F. '{ printf("%d.%d\n",$1,$2); }'` # Find out the HugePage size HPG_SZ=`grep Hugepagesize /proc/meminfo | awk '{print $2}'` if [ -z "$HPG_SZ" ];then echo "The hugepages may not be supported in the system where the script is being executed." exit 1 fi # Initialize the counter NUM_PG=0 # Cumulative number of pages required to handle the running shared memory segments for SEG_BYTES in `ipcs -m | cut -c44-300 | awk '{print $1}' | grep "[0-9][0-9]*"` do MIN_PG=`echo "$SEG_BYTES/($HPG_SZ*1024)" | bc -q` if [ $MIN_PG -gt 0 ]; then NUM_PG=`echo "$NUM_PG+$MIN_PG+1" | bc -q` fi done RES_BYTES=`echo "$NUM_PG * $HPG_SZ * 1024" | bc -q` # An SGA less than 100MB does not make sense # Bail out if that is the case if [ $RES_BYTES -lt 100000000 ]; then echo "***********" echo "** ERROR **" echo "***********" echo "Sorry! There are not enough total of shared memory segments allocated for HugePages configuration. HugePages can only be used for shared memory segments that you can list by command: # ipcs -m GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 29 of a size that can match an Oracle Database SGA. Please make sure that: * Oracle Database instance is up and running * Oracle Database 11g Automatic Memory Management (AMM) is not configured" exit 1 fi # Finish with results case $KERN in '2.4') HUGETLB_POOL=`echo "$NUM_PG*$HPG_SZ/1024" | bc -q`; echo "Recommended setting: vm.hugetlb_pool = $HUGETLB_POOL" ;; '2.6') echo "Recommended setting: vm.nr_hugepages = $NUM_PG" ;; *) echo "Unrecognized kernel version $KERN. Exiting." ;; esac # End Mais informações no Note: HugePages on Linux: What it Is… and What It Is Not… (Doc ID: 361323.1) GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 30 2.6 – Configuração de Parâmetros do Kernel REGRA BASICA ****************************** kernel.shmmax=(METADE DA MEMORIA TOTAL) (ALOCACAO MAXIMA) kernel.shmmni=(MULTIPLOS DE 4) (BLOCO DE ALOCACAO MINIMA) kernel.shmall=(1/4 da memoria total ou Memoria total / PAGESIZE (4096) ) ****************************** Sistemas 64-bit com 64GB de RAM: kernel.shmmax=34359738368 kernel.shmmni=4096 kernel.shmall=16777216 Sistemas 64-bit com 32GB de RAM: kernel.shmmax=17179869184 kernel.shmmni=4096 kernel.shmall=8388608 Sistemas 64-bit com 16GB de RAM: kernel.shmmax=8589934592 kernel.shmmni=4096 kernel.shmall=4194304 Sistemas 64-bit com 8GB de RAM: kernel.shmmax=4294967295 kernel.shmmni=4096 kernel.shmall=2097152 Sistemas com 4GB de RAM: kernel.shmmax=2147483648 kernel.shmmni=4096 kernel.shmall=1048576 Sistemas com 1GB of RAM: kernel.shmmax=536870912 kernel.shmmni=4096 kernel.shmall=262144 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 31 Os parametros abaixo são sugeridos para um sistema 64bits com 4gb de memoria. Somente 1 SGA com 2G vi /etc/sysctl.conf #Oracle RAC12c kernel.shmmax=2147483648 kernel.shmmni=4096 kernel.shmall=1048576 vm.nr_hugepages=1024 A Oracle recomenda que o default e o maximo do “send buffer” size (SO_SNDBUF socket option) e o default do buffer de receive (SO_RCVBUF socket option) sejam setados para 256KB. A recomendação maxima para o buffer de RECEIVE no 10gr2 é 2MB e no 11gr1 4MB. Os buffers de receive sao usados por portas TCP e UDP para manter dados recebidos enquanto uma aplicação é executada. Vide Notes: Health Check Alert: Set net.core.rmem_default greater than or equal to the recommended minimum value [ID 957438.1] Oracle Database (RDBMS) on Unix AIX,HP-UX,Linux,Mac OS X,Solaris,Tru64 Unix Operating Systems Installation and Configuration Requirements Quick Reference (8.0.5 to 11.2) [ID 169706.1] Configuração default em bytes para o socket de recebimento de buffers sysctl -w net.core.rmem_default=262144 Configuração default em bytes para o socket de envio de buffers sysctl -w net.core.wmem_default=262144 Maximum socket receive buffer size which may be set by using the SO_RCVBUF socket option sysctl -w net.core.rmem_max=4194304 Maximum socket send buffer size which may be set by using the SO_SNDBUF socket option sysctl -w net.core.wmem_max=1048576 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 32 Configuração final net.core.rmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048576 Os parametros abaixo são sugeridos para melhorar a performance de um failover no RAC. Para maiores informacoes para seu sistema, consulte o note: 249213.1. net.ipv4.tcp_keepalive_time=30 net.ipv4.tcp_keepalive_intvl=60 net.ipv4.tcp_keepalive_probes=9 net.ipv4.tcp_retries2=3 net.ipv4.tcp_syn_retries=2 A ordem dos valores abaixo é: SEMMSL, SEMMNS, SEMOPM, and SEMMNI. 1 – O Parametro SEMMSL deve ser configurado com o valor PROCESS mais alto do database(s) rodando no servidor + 10. Exemplo: PROCESSES = 5000 SEMMSL = PROCESSES + 10 = 5010 2 – O Parametro SEMMNS refere-se ao numero maximo de semaforos que podem ser alocados no LINUX: or SEMMNS =(SEMMSL * SEMMNI). O Default para o parametro SEMMNI deve ser 142. Então: SEMMNS =(5010 * 142) = 711420. 3 – O parametro SEMOPM eh um semaforo que tem que manter o numero maximo de SEMMSL por semaforo e eh recomendavel setar SEMOPM igual a SEMMSL. Uma vez que SEMMSL neste caso é 5010 entao o SEMOPM tambem deve ser 5010. kernel.sem = 5010 711420 5010 142 Tamanho máximo de arquivos que podem ser abertos pelo SO. O minimo recomendado pela Oracle é 65536. Usando o ASMLIB o numero é menor, uma vez que o ASMLIB não loca arquivos diretamente. O valor recomendado pela oracle é 512 x número de processos definidos no init.ora fs.file-max = 6815744 Range de Portas TCP net.ipv4.ip_local_port_range = 9000 65500 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 33 Configuração final de parâmentos - /etc/sysctl.conf #Oracle RAC12c kernel.shmmax=2147483648 kernel.shmmni=4096 kernel.shmall=1048576 vm.nr_hugepages=1024 net.core.rmem_default = 262144 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048576 net.ipv4.tcp_keepalive_time=30 net.ipv4.tcp_keepalive_intvl=60 net.ipv4.tcp_keepalive_probes=9 net.ipv4.tcp_retries2=3 net.ipv4.tcp_syn_retries=2 kernel.sem = 250 32000 100 128 fs.file-max = 6815744 fs.aio-max-nr = 1048576 net.ipv4.ip_local_port_range = 9000 65500 NOTE: A última informação atualizada sobre parâmetros de Kernel no Linux pode se encontrada no note: 169706.1. - Atualizar o KERNEL /sbin/sysctl -p 2.7 – Atualização de limits do Shell para user “oracle” Para melhorar a performance do Software nos sistemas Linux, é necessário aumentar os valores dos limits no Shell dos usuários ORACLE e GRID: Os valores abaixo são recomendados pela Oracle. NOTA: Não é recomendado configrar o “hard” limit do nofile para o mesmo valor do parâmetro “file-max”. Se isso for feito e os usuários alocarem todos os handles do SO, o sistema ficará sem handles para gerenciar processos, causando travamento. Isso pode significar que novos logins não serão aceitos pelo SO, causando um “hang” geral no sistema. nproc = Número máximo de processos dos usuários oracle e grid. nofile = Número máximo de arquivos abertos pelos usuários oracle e grid. memlock = Tamanho máximo de memória alocada por processo. GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 34 2.7.1 – Editar limits.conf Editar /etc/security/limits.conf : #ORACLE RAC12c grid soft nproc 2047 grid hard nproc 16384 grid soft nofile 1024 grid hard nofile 65536 oracle soft nproc 131072 oracle hard nproc 131072 oracle soft nofile 131072 oracle hard nofile 131072 oracle soft memlock 3145728 oracle hard memlock 3145728 2.7.2 – Editar login Editar o arquivo /etc/pam.d/login : #ORACLE RAC12c session required pam_limits.so 2.7.3 – Editar profile Editar o arquivo /etc/profile : #ORACLE RAC12c if [ $USER = "oracle" ] || [ $USER = "grid" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi umask 022 fi GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 35 2.8 – Desabilitar SELINIX # cat /etc/sysconfig/selinux # 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 - SELinux is fully disabled. SELINUX=disabled # SELINUXTYPE= type of policy in use. Possible values are: # targeted - Only targeted network daemons are protected. # strict - Full SELinux protection. SELINUXTYPE=targeted 2.9 – Criar o Diretório do Oracle Inventory Executar os commandos abaixo com user “root”: mkdir -p /u01/app/oraInventory chown -R grid:oinstall /u01/app/oraInventory chmod -R 775 /u01/app/oraInventory 2.10 – Criar o Diretório do Grid Infrastructure Executar os commandos abaixo com user “root”: mkdir -p /u01/app/12.1.0.1/grid chown -R grid:oinstall /u01/app/12.1.0.1/grid chmod -R 775 /u01/app/12.1.0.1/ 2.11 – Criar o Diretório do Oracle Base Executar os commandos abaixo com user “root”: mkdir mkdir chown chmod -p /u01/app/oracle /u01/app/oracle/cfgtoollogs -R oracle:oinstall /u01/app/oracle -R 775 /u01/app/oracle GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 36 2.12 – Criar o Diretório do Oracle RDBMS Executar os commandos abaixo com user “root”: mkdir -p /u01/app/oracle/product/12.1.0.1/dbhome_1 chown -R oracle:oinstall /u01/app/oracle/product/12.1.0.1/dbhome_1 chmod -R 775 /u01/app/oracle/product/12.1.0.1/dbhome_1 2.13 – Criar os Pacotes de instalação Copiar todos os pacotes de instalação para o diretório /u01/install: Efetuar download dos Binários do GRID + Database + Client do link: http://www.oracle.com/technetwork/database/enterprise-edition/downloads/database12clinux-download-1959253.html Nenhum Patch e Patchset Ainda disponível Efetuar download do OPATCH 12.0.1.1 do note: 6880880 Efetuar download do htop (http://htop.sourceforge.net) Efetuar download do YAST (https://oss.oracle.com/projects/yast/files/el5/x86_64/) Efetuar download do INQ (ftp://ftp.emc.com/pub/elab/inquiry/v7.3.0.1) 2.14 – Verificar todos os pacotes necessários do SO (64 Bits) zlib-1.2.3-4.el5.i386.rpm unixODBC64-2.2.14-3.el5.x86_64.rpm sysstat-7.0.2-11.el5.x86_64.rpm pdksh-5.2.14-37.el5.x86_64.rpm numactl-0.9.8-12.0.1.el5_6.i386.rpm make-3.81-3.el5.x86_64.rpm libstdc++44-devel-4.4.6-3.el5.1.i386.rpm libobjc-4.1.2-52.el5.x86_64.rpm libgcj-devel-4.1.2-52.el5.i386.rpm libgcc-4.1.2-52.el5.x86_64.rpm libao-devel-0.8.6-7.x86_64.rpm kernel-xen-2.6.18-308.el5.x86_64.rpm kernel-headers-2.6.18-308.el5.x86_64.rpm glibc-common-2.5-81.x86_64.rpm gcc-4.1.2-52.el5.x86_64.rpm expat-devel-1.95.8-8.3.el5_5.3.x86_64.rpm elfutils-libs-0.137-3.el5.x86_64.rpm elfutils-0.137-3.el5.x86_64.rpm compat-libstdc++-296-2.96-138.i386.rpm elfutils-libelf-devel-static-0.137-3.el5.i386.rpm libao-0.8.6-7.i386.rpm GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 37 expat-devel-1.95.8-8.3.el5_5.3.i386.rpm expat-1.95.8-8.3.el5_5.3.i386.rpm libaio-0.3.106-5.i386.rpm elfutils-devel-static-0.137-3.el5.i386.rpm elfutils-libelf-devel-0.137-3.el5.i386.rpm elfutils-libs-0.137-3.el5.i386.rpm libao-devel-0.8.6-7.i386.rpm elfutils-libelf-0.137-3.el5.i386.rpm libaio-devel-0.3.106-5.i386.rpm compat-libstdc++-33-3.2.3-61.x86_64.rpm elfutils-devel-static-0.137-3.el5.x86_64.rpm libao-0.8.6-7.x86_64.rpm libaio-0.3.106-5.x86_64.rpm numactl-devel-0.9.8-12.0.1.el5_6.i386.rpm libgcc-4.1.2-52.el5.i386.rpm libstdc++-devel-4.1.2-52.el5.i386.rpm libstdc++-4.1.2-52.el5.i386.rpm unixODBC64-libs-2.2.14-3.el5.i386.rpm unixODBC64-devel-2.2.14-3.el5.i386.rpm binutils-devel-2.17.50.0.6-20.el5.x86_64.rpm binutils-2.17.50.0.6-20.el5.x86_64.rpm gcc-objc++-4.1.2-52.el5.x86_64.rpm gcc-objc-4.1.2-52.el5.x86_64.rpm gcc-java-4.1.2-52.el5.x86_64.rpm gcc-c++-4.1.2-52.el5.x86_64.rpm libgcj-devel-4.1.2-52.el5.x86_64.rpm libstdc++-devel-4.1.2-52.el5.x86_64.rpm libstdc++44-devel-4.4.6-3.el5.1.x86_64.rpm glibc-devel-2.5-81.i386.rpm glibc-utils-2.5-81.x86_64.rpm glibc-headers-2.5-81.x86_64.rpm kernel-debug-2.6.18-308.el5.x86_64.rpm kernel-devel-2.6.18-308.el5.x86_64.rpm kernel-debug-devel-2.6.18-308.el5.x86_64.rpm kernel-xen-devel-2.6.18-308.el5.x86_64.rpm GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 38 Para fazer uma query dos pacotes acima, executar o shell abaixo: (32 ou 64 bits) # rpm -q --qf '%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n' binutils \ compat-libstdc++-33 \ elfutils-libelf \ elfutils-libelf-devel \ gcc \ gcc-c++ \ glibc \ glibc-common \ glibc-devel \ glibc-headers \ ksh \ libaio \ libaio-devel \ libgcc \ libstdc++ \ libstdc++-devel \ make \ numactl \ pdksh \ sysstat \ unixODBC \ unixODBC-devel \ kernel-debug \ kernel-PAE \ kernel-devel \ kernel-xen \ kernel-xen-devel Para instalação: Inserir CD de instalação do OEL 5.8 # df -h Filesystem /dev/sda3 /dev/sdb1 /dev/sda1 tmpfs /dev/sr0 dvd 20120229 Size 16G 20G 487M 2.0G 3.7G Used Avail Use% 3.5G 12G 24% 173M 19G 1% 42M 420M 9% 0 2.0G 0% 3.7G 0 100% Mounted on / /u01 /boot /dev/shm /media/OL5.8 x86_64 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 39 Criar repositório: # cd /media # ln -s OL5.8\ x86_64\ dvd\ 20120229/ CDROM lrwxrwxrwx 1 dvd 20120229/ -rw-r--r-- 1 -rw------- 1 drwxr-xr-x 8 20120229 root root 26 Jul 12 11:57 CDROM -> OL5.8 x86_64 root root 73 Jul 12 11:56 .hal-mtab root root 0 Jul 12 11:56 .hal-mtab-lock root root 4096 Feb 29 2012 OL5.8 x86_64 dvd cd /etc/yum.repos.d/ # cat repository.repo [oel5_x86_64_latest] name=Oracle OL 5 Linux $releasever - $basearch - latest baseurl=file:///media/CDROM/Server gpgcheck=0 enabled=0 Executar instalação: yum --enablerepo=oel5_x86_64_latest install libao expat-devel expat libaio elfutils-devel-static elfutils-libelf-devel elfutilslibs libao-devel elfutils-libelf libaio-devel compat-libstdc elfutils-devel-static libao libaio numactl-devel libgcc libstdc++devel libstdc++ unixODBC64-libs unixODBC64-devel binutils-devel binutils gcc-objc++ gcc-objc gcc-java gcc-c++ libgcj-devel libstdc++-devel libstdc++44-devel glibc-devel glibc-utils glibcheaders kernel-debug kernel-devel kernel-debug-devel kernel-xendevel zlib unixODBC64 sysstat pdksh numactl make libstdc++ libobjc libgcj-devel libgcc libao-devel kernel-xen kernel-headers glibccommon gcc expat-devel elfutils-libs elfutils compat-libstdc++ elfutils-libelf-devel-static GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 40 2.15 – Criar o arquivo .bash_profile do user oracle e grid su - oracle # .bash_profile # Get the aliases and functions if [ -f ~/.bashrc ]; then . ~/.bashrc fi # User specific environment and startup programs PATH=$PATH:$HOME/bin export PATH # ORACLE RAC11g e DATABASE 12c TMP=/tmp TMPDIR=$TMP TEMP=$TMP export ORACLE_SID=oradb1 export ORACLE_BASE=/u01/app/oracle export GRID_HOME=/u01/app/12.1.0.1/grid export ORACLE_HOME=$ORACLE_BASE/product/12.1.0.1/dbhome_1 export LD_LIBRARY_PATH=$ORACLE_HOME/lib export ORACLE_TERM=xterm export PATH=$PATH:$ORACLE_HOME/bin:$PATH:$GRID_HOME/bin:/usr/bin:/sbin:/u sr/sbin:$ORACLE_HOME/OPatch export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jl ib export PS1="[${LOGNAME}@`hostname -s`:"'${PWD} [${ORACLE_SID}] ]$ ' export PERL_HOME=/usr/local/perl export PERL5LIB=$PERL_HOME/lib export SQLPATH=/home/oracle/scripts-ora GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 41 su - grid # .bash_profile # Get the aliases and functions if [ -f ~/.bashrc ]; then . ~/.bashrc fi # User specific environment and startup programs PATH=$PATH:$HOME/bin export PATH # ORACLE RAC11g e DATABASE 12c TMP=/tmp TMPDIR=$TMP TEMP=$TMP export ORACLE_SID=+ASM1 export ORACLE_BASE=/u01/app/oracle export GRID_HOME=/u01/app/12.1.0.1/grid export ORACLE_HOME=$ORACLE_BASE/product/12.1.0.1/dbhome_1 export LD_LIBRARY_PATH=$ORACLE_HOME/lib export ORACLE_TERM=xterm export PATH=$PATH:$ORACLE_HOME/bin:$PATH:$GRID_HOME/bin:/usr/bin:/sbin:/u sr/sbin:$ORACLE_HOME/OPatch export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jl ib export PS1="[${LOGNAME}@`hostname -s`:"'${PWD} [${ORACLE_SID}] ]$ ' export PERL_HOME=/usr/local/perl export PERL5LIB=$PERL_HOME/lib export SQLPATH=/home/oracle/scripts-ora GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 42 2.17 – Configurar o /etc/hosts vi /etc/hosts #bond0 (eth0 + eth1)- PUBLIC 192.168.1.11 racnode1.home.local racnode1 192.168.1.12 racnode2.home.local racnode2 #VIP 192.168.1.21 192.168.1.22 racnode1-vip.home.local racnode1-vip racnode2-vip.home.local racnode2-vip #eth2 - PRIVATE 10.1.0.1 10.11.0.1 racnode1-pvt racnode2-pvt #eth2 - PRIVATE #10.1.0.2 #10.11.0.2 racnode1-pvt racnode2-pvt #RAC SCAN #192.168.1.5 #192.168.1.6 #192.168.1.7 rac-scan.home.local rac-scan.home.local rac-scan.home.local rac-scan rac-scan rac-scan #DNS - Gridserver 192.168.1.8 gridserver.home.local gridserver 2.18 – Configurar o DNS para RAC-SCAN Abaixo o procedimento para criação do DNS Server para resolução de nomes do SCAN. #RAC SCAN #192.168.1.5 #192.168.1.6 #192.168.1.7 rac-scan.home.local rac-scan.home.local rac-scan.home.local rac-scan rac-scan rac-scan yum install bind-libs* yum install bind-9.3* yum install bind-utils-9.3* GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 43 vi /etc/named.conf options { directory "/var/named"; dump-file "/var/log/named_dump"; statistics-file "/var/log/named.stats"; listen-on-v6 { none; }; notify no; // Forwarder: Anything this DNS can't resolve gets forwarded to router. forwarders { 192.168.1.1; }; // End My Additions }; acl acl_transf { 192.168.1.8; }; zone "home.local" IN { type master; file "home.local.zone"; allow-transfer { acl_transf; }; }; zone "1.168.192.in-addr.arpa." IN { type master; file "1.168.192.in-addr.arpa"; allow-update { none; }; }; zone "localhost" in { type master; file "localhost.zone"; }; zone "0.0.127.in-addr.arpa" in { type master; file "127.0.0.zone"; }; GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 44 vi /var/named/home.local.zone $ORIGIN . home.local SOA racnode1.home.local. racnode1.home.local. ( 23 ; serial 900 ; refresh (15 minutes) 600 ; retry (10 minutes) 86400 ; expire (1 day) 3600 ; minimum (1 hour) ) NS racnode1.home.local. NS racnode2.home.local. $ORIGIN home.local. racnode1 IN A 192.168.1.11 racnode2 IN A 192.168.1.12 racnode1-vip IN A 192.168.1.21 racnode2-vip IN A 192.168.1.22 rac-scan IN A 192.168.1.5 rac-scan IN A 192.168.1.6 rac-scan IN A 192.168.1.7 vi /var/named/1.168.192.in-addr.arpa $ORIGIN 1.168.192.in-addr.arpa. $TTL 1H @ IN SOA rac.home.local. 2 1.168.192.in-addr.arpa. 11 12 21 22 5 6 7 IN NS root.rac.home.local. ( 3H 1H 1W 1H ) rac.home.local. IN PTR racnode1.home.local. IN PTR racnode2.home.local. IN PTR racnode1-vip.home.local. IN PTR racnode2-vip.home.local. IN PTR rac-scan.home.local. IN PTR rac-scan.home.local. IN PTR rac-scan.home.local. GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 45 vi /var/named/localhost.zone $TTL 1W @ 42 2D 4H 6W 1W ) IN NS IN A IN ; ; ; ; ; SOA @ root ( serial (d. adams) refresh retry expiry minimum @ 127.0.0.1 vi /var/named/127.0.0.zone $TTL 1W @ 42 2D 4H 6W 1W ) 1 IN NS touch chown chown chmod chmod chown IN ; ; ; ; ; SOA localhost. serial (d. adams) refresh retry expiry minimum localhost. IN PTR root.localhost. ( localhost. /var/named/named_querylog -R named:named /var/named/ named:named /etc/named.conf 766 -R /var/named 766 /etc/named.conf named:named /etc/named.conf /etc/init.d/named restart chkconfig named on Testes dig rac-scan.home.local vi /etc/resolv.conf nameserver 192.168.1.8 search home.local GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 46 2.18 – Configurar o NTPD em todos os NODES Instalar o NTPD (/etc/init.d/ntpd) rpm -ivh ntp* manter o /etc/ntp.conf editar o /etc/sysconfig/ntpd acionar o "-x" cat /etc/sysconfig/ntpd # Drop root to id 'ntp:ntp' by default. OPTIONS="-x -u ntp:ntp -p /var/run/ntpd.pid" # Set to 'yes' to sync hw clock after successful ntpdate SYNC_HWCLOCK=no # Additional options for ntpdate NTPDATE_OPTIONS="" service ntpd restart Garantir que existe DNS e Gateway configurados para resolver os nomes do /etc/ntp.conf 2.19 – Configurar network em todos os Nodes Ajustar configurações de rede (/etc/sysconfig/network) Ajustar Node 1 e Node 2 # cat /etc/sysconfig/network NETWORKING=yes NETWORKING_IPV6=yes HOSTNAME=racnode1 NOZEROCONF=yes GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 47 2.20 – Configurar o a equivalência de senhas entre usuários ( O instalador do GRID / DATABASE faz isso, aqui é opcional) #cd /home/oracle #mkdir ~/.ssh #chmod 700 ~/.ssh #ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/home/oracle/.ssh/id_rsa): Enter passphrase (empty for no passphrase): Enter same passphrase again: Passphrases do not match. Try again. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/oracle/.ssh/id_rsa. Your public key has been saved in /home/oracle/.ssh/id_rsa.pub. The key fingerprint is: 30:f4:8f:b9:51:43:9b:65:0a:b6:36:cd:0e:a4:92:54 oracle@petropolisnd1 #cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys #ssh orarac2 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys # cat .ssh/authorized_keys | ssh orarac2 "cat >> .ssh/authorized_keys" Conectar em todos os host via ssh, através das interfaces públicas e privadas para popular o arquivo authorized_keys até que não sejam mais solicitadas confirmações pelo ssh. GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 48 ASMLIB 3 – Descrição Local para Download dos drivers do ASMLIB: http://www.oracle.com/technetwork/server-storage/linux/downloads/rhel5-084877.html 3.1 – Verificando o Kernel uname -r 3.2 – Instação dos Pacotes RPM ** Observações: ** Devido a utilização do Kernel uek, deve-se apenas instalar o “Library and Tools” pois o driver do ASMLIB já está incluso no kernel. Intel EM64t (x86_64) Architecture http://www.oracle.com/technetwork/server-storage/linux/downloads/rhel5084877.html#oracleasm_rhel5_amd64 Library and Tools oracleasm-support-2.1.8-1.el5.x86_64.rpm oracleasmlib-2.0.4-1.el5.x86_64.rpm Ajustar diretório de Instalação Copiar todos os arquivos de instalação para o Servidor Node 1 # mkdir –p /u01/install # chmod 777 /u01/install/ # chown oracle:oinstall /u01/install/ Instalar RPMs ASM Rpms # mkdir –p /u01/install # rpm -Uvh oracleasm* warning: oracleasmlib-2.0.4-1.el5.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID 1e5e0159 Preparing... ########################################### [100%] 1:oracleasm-support ########################################### [ 50%] 2:oracleasmlib ########################################### [100%] GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 49 3.3 – Configurando o Driver ASMLIB Executar como “root” # /etc/init.d/oracleasm configure 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 []: grid Default group to own the driver interface []: asmdba 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 Initializing the Oracle ASMLib driver: [ OK ] Scanning the system for Oracle ASMLib disks: [ OK ] 3.4 – Particionando discos para o ASM Executar como “root” *** Neste momento é importante observer que o exemplo abaixo somente mostra como é executada a criação de uma partição. Os tamanhos e devices são definidos conforme cada instalação. # fdisk /dev/iscsi/openfiler-asm_ocr1/part Command (m for help): p Disk /dev/iscsi/openfiler-asm_ocr1/part: 2013 MB, 2013265920 bytes 62 heads, 62 sectors/track, 1022 cylinders Units = cylinders of 3844 * 512 = 1968128 bytes Blocks Id System Device Boot Start End Command (m for help): n Command action e extended p primary partition (1-4) p Partition number (1-4): 1 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 50 First cylinder (1-1022, default 1): Using default value 1 Last cylinder or +size or +sizeM or +sizeK (1-1022, default 1022): Using default value 1022 Command (m for help): p Disk /dev/iscsi/openfiler-asm_ocr1/part: 2013 MB, 2013265920 bytes 62 heads, 62 sectors/track, 1022 cylinders Units = cylinders of 3844 * 512 = 1968128 bytes Device Boot Blocks Id System /dev/iscsi/openfiler-asm_ocr1/part1 1964253 83 Linux Start End 1 1022 Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks. 3.5 – Criando discos para o ASM Executar como “root” #/usr/sbin/oracleasm createdisk disk_name device_partition_name Exemplos: #/usr/sbin/oracleasm createdisk ASMDATA01 /dev/iscsi/openfilerasm_data1/part1 Writing disk header: done Instantiating disk: done #/usr/sbin/oracleasm createdisk ASMOCR01 /dev/iscsi/openfilerasm_ocr1/part1 Writing disk header: done Instantiating disk: done Para excluir um disco: /usr/sbin/oracleasm deletedisk disk_name GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 51 Após a Criação, fazer a listagem dos discos: # /usr/sbin/oracleasm listdisks ASMDATA01 ASMOCR01 Ir para o Node 2: #/usr/sbin/oracleasm scandisks Reloading disk partitions: done Cleaning any stale ASM disks... Scanning system for ASM disks... Instantiating disk "ASMOCR01" Instantiating disk "ASMDATA01" # /usr/sbin/oracleasm listdisks ASMDATA01 ASMOCR01 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 52 Descompactar Binários # # # # # # # cd /u01/install mkdir RAC_DB_12c mv linuxamd64_12c_* RAC_DB_12c/ cd RAC_DB_12c/ chown oracle:oinstall -R RAC_DB_12c/ unzip linuxamd64_12c_database_1of2.zip unzip linuxamd64_12c_database_2of2.zip # su - grid # unzip linuxamd64_12c_grid_1of2.zip # unzip linuxamd64_12c_grid_2of2.zip Validação Pré-instalação # su – grid # cd /u01/install/RAC_DB_12c/grid # ./runcluvfy.sh stage -pre crsinst -n racnode1,racnode2 # ./runcluvfy.sh stage -pre crsinst -n racnode1,racnode2 Performing pre-checks for cluster services setup Checking node reachability... Node reachability check passed from node "racnode1" Checking user equivalence... User equivalence check passed for user "grid" Checking node connectivity... Checking hosts config file... Verification of the hosts config file successful Node connectivity passed for subnet "10.11.0.0" with node(s) racnode1,racnode2 TCP connectivity check passed for subnet "10.11.0.0" Node connectivity passed for subnet "10.1.0.0" with node(s) racnode1,racnode2 TCP connectivity check passed for subnet "10.1.0.0" GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 53 Node connectivity passed for subnet "192.168.1.0" with node(s) racnode1,racnode2 TCP connectivity check passed for subnet "192.168.1.0" Interfaces found on subnet "192.168.1.0" that are likely candidates for VIP are: racnode1 bond0:192.168.1.11 racnode2 bond0:192.168.1.12 Interfaces found on subnet "10.11.0.0" that are likely candidates for a private interconnect are: racnode1 eth2:10.11.0.1 racnode2 eth2:10.11.0.2 Interfaces found on subnet "10.1.0.0" that are likely candidates for a private interconnect are: racnode1 eth3:10.1.0.1 racnode2 eth3:10.1.0.2 Checking subnet mask consistency... Subnet mask consistency check passed for subnet "10.11.0.0". Subnet mask consistency check passed for subnet "10.1.0.0". Subnet mask consistency check passed for subnet "192.168.1.0". Subnet mask consistency check passed. Node connectivity check passed Checking multicast communication... Checking subnet multicast group Check of subnet multicast group "10.11.0.0" for multicast communication with "224.0.0.251"... "10.11.0.0" for multicast communication with "224.0.0.251" passed. Check of multicast communication passed. Checking ASMLib configuration. Check for ASMLib configuration passed. Total memory check passed Available memory check passed Swap space check passed Free disk space check passed for "racnode2:/usr,racnode2:/var,racnode2:/etc,racnode2:/sbin,racnode2 :/tmp" Free disk space check passed for "racnode1:/usr,racnode1:/var,racnode1:/etc,racnode1:/sbin,racnode1 :/tmp" GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 54 Check for multiple users with UID value 501 passed User existence check passed for "grid" Group existence check passed for "oinstall" Group existence check passed for "dba" Membership check for user "grid" in group "oinstall" [as Primary] passed Membership check for user "grid" in group "dba" passed Run level check passed Hard limits check passed for "maximum open file descriptors" Soft limits check passed for "maximum open file descriptors" Hard limits check passed for "maximum user processes" Soft limits check passed for "maximum user processes" System architecture check passed Kernel version check passed Kernel parameter check passed for "semmsl" Kernel parameter check passed for "semmns" Kernel parameter check passed for "semopm" Kernel parameter check passed for "semmni" Kernel parameter check passed for "shmmax" Kernel parameter check passed for "shmmni" Kernel parameter check passed for "shmall" Kernel parameter check passed for "file-max" Kernel parameter check passed for "ip_local_port_range" Kernel parameter check passed for "rmem_default" Kernel parameter check passed for "rmem_max" Kernel parameter check passed for "wmem_default" Kernel parameter check passed for "wmem_max" Kernel parameter check passed for "aio-max-nr" Package existence check passed for "make" Package existence check passed for "binutils" Package existence check passed for "gcc(x86_64)" Package existence check passed for "libaio(x86_64)" Package existence check passed for "glibc(x86_64)" Package existence check passed for "compat-libstdc++-33(x86_64)" Package existence check passed for "glibc-devel(x86_64)" Package existence check passed for "gcc-c++(x86_64)" Package existence check passed for "libaio-devel(x86_64)" Package existence check passed for "libgcc(x86_64)" Package existence check passed for "libstdc++(x86_64)" Package existence check passed for "libstdc++-devel(x86_64)" Package existence check passed for "sysstat" Package existence check passed for "ksh" Package existence check passed for "nfs-utils" Checking availability of ports "6200,6100" required for component "Oracle Notification Service (ONS)" Port availability check passed for ports "6200,6100" Check for multiple users with UID value 0 passed Current group ID check passed GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 55 Starting check for consistency of primary group of root user Check for consistency of root user's primary group passed Starting Clock synchronization checks using Network Time Protocol(NTP)... NTP Configuration file check started... NTP Configuration file check passed Checking daemon liveness... Liveness check passed for "ntpd" Check for NTP daemon or service alive passed on all nodes NTP common Time Server Check started... Check of common NTP Time Server passed Clock time offset check from NTP Time Server started... Clock time offset check passed Clock synchronization check using Network Time Protocol(NTP) passed Core file name pattern consistency check passed. User "grid" is not part of "root" group. Check passed Default user file creation mask check passed Checking integrity of file "/etc/resolv.conf" across nodes "domain" and "search" entries do not coexist in any "/etc/resolv.conf" file All nodes have same "search" order defined in file "/etc/resolv.conf" The DNS response time for an unreachable node is within acceptable limit on all nodes Check for integrity of file "/etc/resolv.conf" passed Time zone consistency check passed Checking integrity of name service switch configuration file "/etc/nsswitch.conf" ... All nodes have same "hosts" entry defined in file "/etc/nsswitch.conf" Check for integrity of name service switch configuration file "/etc/nsswitch.conf" passed GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 56 Checking daemon "avahi-daemon" is not configured and running Daemon not configured check passed for process "avahi-daemon" Daemon not running check passed for process "avahi-daemon" Starting check for /dev/shm mounted as temporary file system ... Check for /dev/shm mounted as temporary file system passed Starting check for /boot mount ... Check for /boot mount passed Starting check for zeroconf check ... Check for zeroconf check passed Pre-check for cluster services setup was successful on all the nodes. GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 57 Instalação do Grid Infrastructure for a Cluster (RAC) Standard Cluster 4 – Instalação Procedimento de instalação: # su – grid Iniciar o VNC: # vncserver :1 (conectar ao VNCSERVER na porta 1) # cd /u01/install/RAC_DB_12c/grid/runInstaller.sh A Instalação será feita para apenas um Standard Cluster. Mais a frente o cluster será reconfigurado para Flex Cluster com Flex ASM e com a adição de Leaf Nodes. As proximas telas servem apenas como exemplo para uma instalação qualquer, trocando apenas nomes de NODES e nome do CLUSTER GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 58 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 59 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 60 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 61 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 62 Manter as placas de interconnect como ASM & Private. Isso será utilizado mais adiante. GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 63 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 64 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 65 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 66 Novidade no 12cR1. Agora é possível informar a senha do usuário “root” para execução de scripts ao final do instalador GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 67 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 68 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 69 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 70 4.1 – Checando os serviços do Grid Infrastructure Status do Cluster: [oracle@racnode1:/home/oracle [oradb1] ]$ crsctl stat res -t -------------------------------------------------------------------------------Name Target State Server State details -------------------------------------------------------------------------------Local Resources -------------------------------------------------------------------------------ora.LISTENER.lsnr ONLINE ONLINE racnode1 STABLE ONLINE ONLINE racnode2 STABLE ora.OCR.dg ONLINE ONLINE racnode1 STABLE ONLINE ONLINE racnode2 STABLE ora.asm ONLINE ONLINE racnode1 Started,STABLE ONLINE ONLINE racnode2 Started,STABLE ora.net1.network ONLINE ONLINE racnode1 STABLE ONLINE ONLINE racnode2 STABLE ora.ons ONLINE ONLINE racnode1 STABLE ONLINE ONLINE racnode2 STABLE -------------------------------------------------------------------------------Cluster Resources -------------------------------------------------------------------------------ora.LISTENER_SCAN1.lsnr 1 ONLINE ONLINE racnode1 STABLE ora.LISTENER_SCAN2.lsnr 1 ONLINE ONLINE racnode2 STABLE ora.LISTENER_SCAN3.lsnr 1 ONLINE ONLINE racnode2 STABLE ora.MGMTLSNR 1 ONLINE ONLINE racnode2 169.254.50.1610.11. 0.2 10.1.0.2,STABLE ora.cvu 1 ONLINE ONLINE racnode2 STABLE ora.mgmtdb 1 ONLINE ONLINE racnode2 Open,STABLE ora.oc4j 1 ONLINE ONLINE racnode2 STABLE ora.racnode1.vip 1 ONLINE ONLINE racnode1 STABLE ora.racnode2.vip 1 ONLINE ONLINE racnode2 STABLE ora.scan1.vip 1 ONLINE ONLINE racnode1 STABLE ora.scan2.vip 1 ONLINE ONLINE racnode2 STABLE ora.scan3.vip 1 ONLINE ONLINE racnode2 STABLE -------------------------------------------------------------------------------- GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 71 Status do Listener: [grid@racnode1:/home/grid [+ASM1] ]$ lsnrctl stat LSNRCTL for Linux: Version 12.1.0.1.0 - Production on 23-JUL-2013 12:21:15 Copyright (c) 1991, 2013, Oracle. All rights reserved. Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER))) STATUS of the LISTENER -----------------------Alias LISTENER Version TNSLSNR for Linux: Version 12.1.0.1.0 - Production Start Date 23-JUL-2013 12:17:15 Uptime 0 days 0 hr. 3 min. 59 sec Trace Level off Security ON: Local OS Authentication SNMP OFF Listener Parameter File /u01/app/12.1.0.1/grid/network/admin/listener.ora Listener Log File /u01/app/oracle/diag/tnslsnr/racnode1/listener/alert/log.xml Listening Endpoints Summary... (DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=LISTENER))) (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.11)(PORT=1521))) (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=192.168.1.21)(PORT=1521))) Services Summary... Service "+ASM" has 1 instance(s). Instance "+ASM1", status READY, has 1 handler(s) for this service... The command completed successfully 4.2 – Grid Infrastructure Management Database Na versão 12c foi criado um banco de dados exclusivamente para gerenciamento do Oracle Clusterware 12c. Este Database é configurado em modo Single Instance e é executado em apenas um node de um cluster. Caso este node seja indisponibilizado, o database será ativado em outro node do cluster. Neste database é configurado um repositório para o CHM (Cluster Health Monitor) e outras informações do Clusterware 12c. Este database ainda utiliza o mesmo storage device onde está configurado o OCR e é gerenciado automaticamente pelo Oracle Grid Infrastructure. Caso este recurso não seja ativado, o Cluster Health Monitor / OS não será ativado. Na versão 11g, as informações do CHM ficam armazenadas no diretório $GRID_HOME/crf/db/hostname, e consequentemente utizam espaço em disco deste local. Para configuração deste database, uma desvantagem é que o Diskgroup para o OCR/Voting precisa de no mínimo 4,5G, sendo assim (apesar de pequeno) é necessário mais disco para este. GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 72 4.3 – Gerenciamento do MGMTDB Para identificar qual node do cluster é o node master para o MGMTDB: # oclumon manage -get MASTER Master = racnode1 Verificando via Server Control Utility (srvctl): # srvctl status mgmtdb Database is enabled Instance -MGMTDB is running on node racnode1 #srvctl config mgmtdb Database unique name: _mgmtdb Database name: Oracle home: /u01/app/12.1.0.1/grid Oracle user: grid Spfile: +OCR/_mgmtdb/spfile-MGMTDB.ora Password file: Domain: Start options: open Stop options: immediate Database role: PRIMARY Management policy: AUTOMATIC Database instance: -MGMTDB Type: Management GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 73 Verificando Status e Datafiles do Database: # ps -ef|grep pmon grid 5375 1 grid 5825 1 grid 10389 10363 0 15:12 ? 0 15:13 ? 0 15:37 pts/0 00:00:00 asm_pmon_+ASM1 00:00:00 mdb_pmon_-MGMTDB 00:00:00 grep pmon # export ORACLE_SID=-MGMTDB # sqlplus / as sysdba SQL> select file_name from dba_data_files union select member file_name from V$logfile; FILE_NAME -----------------------------------------------------------------+OCR/_MGMTDB/DATAFILE/sysaux.258.821044039 +OCR/_MGMTDB/DATAFILE/sysgridhomedata.261.821044155 +OCR/_MGMTDB/DATAFILE/sysmgmtdata.260.821044109 +OCR/_MGMTDB/DATAFILE/system.259.821044065 +OCR/_MGMTDB/DATAFILE/undotbs1.257.821044035 +OCR/_MGMTDB/ONLINELOG/group_1.263.821044189 +OCR/_MGMTDB/ONLINELOG/group_2.264.821044189 +OCR/_MGMTDB/ONLINELOG/group_3.265.821044191 8 rows selected. Verificando local do CHM Repository: # oclumon manage -get reppath CHM Repository Path = +OCR/_MGMTDB/DATAFILE/sysmgmtdata.260.821044109 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 74 Verificando o Tamanho do CHM Repository: SQL> select file_name, maxbytes, bytes from dba_data_files where file_name='+OCR/_MGMTDB/DATAFILE/sysmgmtdata.260.821044109'; FILE_NAME MAXBYTES BYTES ----------------------------------------------- -------- --------+OCR/_MGMTDB/DATAFILE/sysmgmtdata.260.821044109 0 2147483648 Extendendo o Tamanho do CHM Repository: (Se necessário) # oclumon manage -repos changerepossize 4000 The Cluster Health Monitor repository was successfully resized.The new retention is 266160 seconds. # sqlplus / as sysdba SQL> select file_name, maxbytes, bytes from dba_data_files where file_name='+OCR/_MGMTDB/DATAFILE/sysmgmtdata.260.821044109'; FILE_NAME MAXBYTES BYTES ----------------------------------------------- -------- --------+OCR/_MGMTDB/DATAFILE/sysmgmtdata.260.821044109 0 4287586740 Reduzindo o Tamanho do CHM Repository: (Se necessário) # oclumon manage -repos changerepossize 3000 Warning: Entire data in Cluster Health Monitor repository will be deleted.Do you want to continue(Yes/No)? Yes The Cluster Health Monitor repository was successfully resized.The new retention is 199620 seconds. # sqlplus / as sysdba SQL> select file_name, maxbytes, bytes from dba_data_files where file_name='+OCR/_MGMTDB/DATAFILE/sysmgmtdata.260.821044109'; FILE_NAME MAXBYTES BYTES ----------------------------------------------- -------- --------+OCR/_MGMTDB/DATAFILE/sysmgmtdata.260.821044109 0 3143244520 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 75 Mais informações sobre o commando oclumon podem ser obtidas em Oclumon Command Reference Da mesma forma que qualquer outro database comum (isso iniciou a partir da versão 11g) os arquivos de Trace podem ser encontrados em: # $ORACLE_BASE/ diag/rdbms/_mgmtdb/-MGMTDB/trace/ Para verificar se todos os usuários necessários para o correto funcionamento do CHM estão ok: # sqlplus / as sysdba SQL> select username,account_status from dba_users where username like 'CH%'; USERNAME ---------CHM CHA ACCOUNT_STATUS -------------------------------OPEN OPEN GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 76 Instalação do RDBMS – Software Only Install 5 – Instalação Iniciar instalador # su - oracle # echo $ORACLE_BASE /u01/app/oracle # echo $ORACLE_HOME /u01/app/oracle/product/12.1.0.1/dbhome_1 # cd /u01/install/RAC_DB_12c/database/ # ./runInstaller Starting Oracle Universal Installer... Checking Temp space: must be greater than 500 MB. Actual 10710 MB Passed Checking swap space: must be greater than 150 MB. Actual 3498 MB Passed Checking monitor: must be configured to display at least 256 colors. Actual 16777216 Passed Preparing to launch Oracle Universal Installer from /tmp/OraInstall2013-08-27_11-20-42AM. Please wait ... GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 77 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 78 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 79 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 80 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 81 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 82 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 83 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 84 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 85 Script root.sh # su - root # /u01/app/oracle/product/12.1.0.1/dbhome_1/root.sh Performing root user operation for Oracle 12c The following environment variables are set as: ORACLE_OWNER= oracle ORACLE_HOME= /u01/app/oracle/product/12.1.0.1/dbhome_1 Enter the full pathname of the local bin directory: [/usr/local/bin]: The contents of "dbhome" have not changed. No need to overwrite. The contents of "oraenv" have not changed. No need to overwrite. The contents of "coraenv" have not changed. No need to overwrite. Entries will be added to the /etc/oratab file as needed by Database Configuration Assistant when a database is created Finished running generic part of root script. Now product-specific root actions will be performed. GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 86 5.1 – Validando a Instalação Iniciar instalador # su - oracle # sqlplus / as sysdba SQL*Plus: Release 12.1.0.1.0 Production on Tue Aug 27 15:58:32 2013 Copyright (c) 1982, 2013, Oracle. All rights reserved. Connected to an idle instance. SQL> exit Disconnected # cat /u01/app/oraInventory/ContentsXML/inventory.xml <?xml version="1.0" standalone="yes" ?> <!-- Copyright (c) 1999, 2013, Oracle and/or its affiliates. All rights reserved. --> <!-- Do not modify the contents of this file by hand. --> <INVENTORY> <VERSION_INFO> <SAVED_WITH>12.1.0.1.0</SAVED_WITH> <MINIMUM_VER>2.1.0.6.0</MINIMUM_VER> </VERSION_INFO> <HOME_LIST> <HOME NAME="OraGI12Home1" LOC="/u01/app/12.1.0.1/grid" TYPE="O" IDX="1" CRS="true"> <NODE_LIST> <NODE NAME="racnode1"/> <NODE NAME="racnode2"/> </NODE_LIST> </HOME> <HOME NAME="OraDB12Home1" LOC="/u01/app/oracle/product/12.1.0.1/dbhome_1" TYPE="O" IDX="2"> <NODE_LIST> <NODE NAME="racnode1"/> <NODE NAME="racnode2"/> </NODE_LIST> </HOME> </HOME_LIST> <COMPOSITEHOME_LIST> </COMPOSITEHOME_LIST> </INVENTORY> # GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 87 Criação do Diskgroup no ASM Para o Banco de Dados 6 – Criar o diskgroup DATA Neste passo sera criado o Diskgroup +DATA onde ficarão armazenados os Dados do novo Database. Iniciar instalador: # su – grid cd $ORACLE_HOME/bin ./asmca Clicar em “Create” GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 88 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 89 Verificar no ASM: # su – grid # sqlplus / as sysdba SQL*Plus: Release 12.1.0.1.0 Production on Thu Aug 29 09:34:31 2013 Copyright (c) 1982, 2013, Oracle. All rights reserved. Connected to: Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production With the Real Application Clusters and Automatic Storage Management options SQL> select name, total_mb, free_mb from v$asm_diskgroup ; NAME TOTAL_MB FREE_MB ------------------------------ ---------- ---------OCR 7741 4048 DATA 19519 19466 SQL> GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 90 Criação do Database 7 – Criar o Banco de Dados Iniciar Assistente DBCA # su – oracle cd $ORACLE_HOME/bin ./dbca GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 91 Selecionar modo Avançado GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 92 Criar um Container Database Vazio. Desta maneira será possível criar novos PDBs posteriormente. GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 93 Criar o Repositório do Enterprise Manager Express. A Opção de CVU pode ou não ser mantida, de qualquer forma será executada a final da Instalação. Caso já exista algum repositório do Enterprise manager Cloud Control, pode-se registrar este novo Database neste momento. GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 94 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 95 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 96 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 97 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 98 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 99 Ajustar penências remanescentes GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 100 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 101 Neste momento o Cluster está Ativo e um Banco de Dados (oradb) está configurando e em execução como Container Database (CDB). Neste documento não será tratado os Recursos e Conceitos do Oracle Database 12c. Para mais informações sobre como criar um PDB (Pluggable Database) veja o artigo abaixo: Oracle MULTITENANT 12c – Criação de um Pluggable Database Outras Fontes para compreensão da Arquitetura Multitenant na versão 12c: Multitenant - Overview - Oracle http://www.oracle.com/technetwork/database/multitenant/overview/index.html GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 102 Validação Pós-instalação 7 – Validação do Cluster Verificar todos os serviços # su – grid # $ORACLE_HOME/bin/crsctl stat res -t -------------------------------------------------------------------------------Name Target State Server State details -------------------------------------------------------------------------------Local Resources -------------------------------------------------------------------------------ora.DATA.dg ONLINE ONLINE racnode1 STABLE ONLINE ONLINE racnode2 STABLE ora.LISTENER.lsnr ONLINE ONLINE racnode1 STABLE ONLINE ONLINE racnode2 STABLE ora.OCR.dg ONLINE ONLINE racnode1 STABLE ONLINE ONLINE racnode2 STABLE ora.asm ONLINE ONLINE racnode1 Started,STABLE ONLINE ONLINE racnode2 Started,STABLE ora.net1.network ONLINE ONLINE racnode1 STABLE ONLINE ONLINE racnode2 STABLE ora.ons ONLINE ONLINE racnode1 STABLE ONLINE ONLINE racnode2 STABLE -------------------------------------------------------------------------------Cluster Resources -------------------------------------------------------------------------------ora.LISTENER_SCAN1.lsnr 1 ONLINE ONLINE racnode1 STABLE ora.LISTENER_SCAN2.lsnr 1 ONLINE ONLINE racnode2 STABLE ora.LISTENER_SCAN3.lsnr 1 ONLINE ONLINE racnode2 STABLE ora.MGMTLSNR 1 ONLINE ONLINE racnode2 169.254.50.16 10.11. 0.2 10.1.0.2,STABLE ora.cvu 1 ONLINE ONLINE racnode2 STABLE ora.mgmtdb 1 ONLINE ONLINE racnode2 Open,STABLE ora.oc4j 1 ONLINE ONLINE racnode2 STABLE ora.oradb.db 1 ONLINE ONLINE racnode1 Open,STABLE 2 ONLINE ONLINE racnode2 Open,STABLE ora.racnode1.vip 1 ONLINE ONLINE racnode1 STABLE GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 103 ora.racnode2.vip 1 ONLINE ONLINE racnode2 STABLE ora.scan1.vip 1 ONLINE ONLINE racnode1 STABLE ora.scan2.vip 1 ONLINE ONLINE racnode2 STABLE ora.scan3.vip 1 ONLINE ONLINE racnode2 STABLE -------------------------------------------------------------------------------- 7.1 – Validação do OCR Verificar o local dos discos do OCR/Voting # su – grid # $GRID_HOME/bin/ocrcheck Status of Oracle Cluster Registry Version Total space (kbytes) Used space (kbytes) Available space (kbytes) ID Device/File Name succeeded is as follows : : 4 : 409568 : 1552 : 408016 : 1530974981 : +OCR Device/File integrity check Device/File not configured Device/File not configured Device/File not configured Device/File not configured Cluster registry integrity check succeeded Logical corruption check bypassed due to non-privileged user GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 104 7.3 – CVU Executar o CVU para validação # su – grid # cd /u01/install/RAC_DB_12c/grid # ./runcluvfy.sh stage -post crsinst -n racnode1,racnode2 # ./runcluvfy.sh stage -post crsinst -n racnode1,racnode2 Performing pre-checks for cluster services setup Checking node reachability... Node reachability check passed from node "racnode1" Checking user equivalence... User equivalence check passed for user "grid" Checking node connectivity... Checking hosts config file... Verification of the hosts config file successful Node connectivity passed for subnet "10.11.0.0" with node(s) racnode1,racnode2 TCP connectivity check passed for subnet "10.11.0.0" Node connectivity passed for subnet "10.1.0.0" with node(s) racnode1,racnode2 TCP connectivity check passed for subnet "10.1.0.0" Node connectivity passed for subnet "192.168.1.0" with node(s) racnode1,racnode2 TCP connectivity check passed for subnet "192.168.1.0" Interfaces found on subnet "192.168.1.0" that are likely candidates for VIP are: racnode1 bond0:192.168.1.11 racnode2 bond0:192.168.1.12 Interfaces found on subnet "10.11.0.0" that are likely candidates for a private interconnect are: racnode1 eth2:10.11.0.1 racnode2 eth2:10.11.0.2 GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 105 Interfaces found on subnet "10.1.0.0" that are likely candidates for a private interconnect are: racnode1 eth3:10.1.0.1 racnode2 eth3:10.1.0.2 Checking subnet mask consistency... Subnet mask consistency check passed for subnet "10.11.0.0". Subnet mask consistency check passed for subnet "10.1.0.0". Subnet mask consistency check passed for subnet "192.168.1.0". Subnet mask consistency check passed. Node connectivity check passed Checking multicast communication... Checking subnet multicast group Check of subnet multicast group "10.11.0.0" for multicast communication with "224.0.0.251"... "10.11.0.0" for multicast communication with "224.0.0.251" passed. Check of multicast communication passed. Checking ASMLib configuration. Check for ASMLib configuration passed. Total memory check passed Available memory check passed Swap space check passed Free disk space check passed for "racnode2:/usr,racnode2:/var,racnode2:/etc,racnode2:/sbin,racnode2 :/tmp" Free disk space check passed for "racnode1:/usr,racnode1:/var,racnode1:/etc,racnode1:/sbin,racnode1 :/tmp" Check for multiple users with UID value 501 passed User existence check passed for "grid" Group existence check passed for "oinstall" Group existence check passed for "dba" Membership check for user "grid" in group "oinstall" [as Primary] passed Membership check for user "grid" in group "dba" passed Run level check passed Hard limits check passed for "maximum open file descriptors" Soft limits check passed for "maximum open file descriptors" Hard limits check passed for "maximum user processes" Soft limits check passed for "maximum user processes" System architecture check passed Kernel version check passed Kernel parameter check passed for "semmsl" GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 106 Kernel parameter check passed for "semmns" Kernel parameter check passed for "semopm" Kernel parameter check passed for "semmni" Kernel parameter check passed for "shmmax" Kernel parameter check passed for "shmmni" Kernel parameter check passed for "shmall" Kernel parameter check passed for "file-max" Kernel parameter check passed for "ip_local_port_range" Kernel parameter check passed for "rmem_default" Kernel parameter check passed for "rmem_max" Kernel parameter check passed for "wmem_default" Kernel parameter check passed for "wmem_max" Kernel parameter check passed for "aio-max-nr" Package existence check passed for "make" Package existence check passed for "binutils" Package existence check passed for "gcc(x86_64)" Package existence check passed for "libaio(x86_64)" Package existence check passed for "glibc(x86_64)" Package existence check passed for "compat-libstdc++-33(x86_64)" Package existence check passed for "glibc-devel(x86_64)" Package existence check passed for "gcc-c++(x86_64)" Package existence check passed for "libaio-devel(x86_64)" Package existence check passed for "libgcc(x86_64)" Package existence check passed for "libstdc++(x86_64)" Package existence check passed for "libstdc++-devel(x86_64)" Package existence check passed for "sysstat" Package existence check passed for "ksh" Package existence check passed for "nfs-utils" Checking availability of ports "6200,6100" required for component "Oracle Notification Service (ONS)" Port availability check passed for ports "6200,6100" Check for multiple users with UID value 0 passed Current group ID check passed Starting check for consistency of primary group of root user Check for consistency of root user's primary group passed Starting Clock synchronization checks using Network Time Protocol(NTP)... NTP Configuration file check started... NTP Configuration file check passed Checking daemon liveness... Liveness check passed for "ntpd" Check for NTP daemon or service alive passed on all nodes GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 107 NTP common Time Server Check started... Check of common NTP Time Server passed Clock time offset check from NTP Time Server started... Clock time offset check passed Clock synchronization check using Network Time Protocol(NTP) passed Core file name pattern consistency check passed. User "grid" is not part of "root" group. Check passed Default user file creation mask check passed Checking integrity of file "/etc/resolv.conf" across nodes "domain" and "search" entries do not coexist in any "/etc/resolv.conf" file All nodes have same "search" order defined in file "/etc/resolv.conf" The DNS response time for an unreachable node is within acceptable limit on all nodes Check for integrity of file "/etc/resolv.conf" passed Time zone consistency check passed Checking integrity of name service switch configuration file "/etc/nsswitch.conf" ... All nodes have same "hosts" entry defined in file "/etc/nsswitch.conf" Check for integrity of name service switch configuration file "/etc/nsswitch.conf" passed Checking daemon "avahi-daemon" is not configured and running Daemon not configured check passed for process "avahi-daemon" Daemon not running check passed for process "avahi-daemon" Starting check for /dev/shm mounted as temporary file system ... Check for /dev/shm mounted as temporary file system passed Starting check for /boot mount ... Check for /boot mount passed Starting check for zeroconf check ... GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 108 Check for zeroconf check passed Pre-check for cluster services setup was successful on all the nodes. GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 109 Referências Oracle Docs Oracle® Database New Features Guide 12c Release 1 (12.1) E17906-16 http://docs.oracle.com/cd/E16655_01/server.121/e17906/chapter1.htm#AREANO02 524 Oracle® Real Application Clusters Administration and Deployment Guide 12c Release 1 (12.1) E17887-12 http://docs.oracle.com/cd/E16655_01/rac.121/e17887/release_changes.htm#BABH CDFJ Oracle® Database Upgrade Guide 12c Release 1 (12.1) E17642-13 http://docs.oracle.com/cd/E16655_01/server.121/e17642/deprecated.htm#UPGRD6 0000 AskDBA.org Blog http://askdba.org/weblog/2013/07/mgmtdb-grid-infrastructure-managementrepository/ Oracle MOS Notes HugePages on Linux: What It Is... and What It Is Not... [ID 361323.1] HugePages on Oracle Linux 64-bit [ID 361468.1] Shell Script to Calculate Values Recommended Linux HugePages / HugeTLB Configuration [ID 401749.1] Health Check Alert: Set net.core.rmem_default greater than or equal to the recommended minimum value [ID 957438.1] GRID INFRASTRUCTURE INSTALLATION GUIDE – 12CR1 Página: 110