Suporte para Ações do Usuário do Cliente
A Atualização de Frota do Exadata agora suporta "ações do usuário" definidas pelo cliente durante a aplicação de patch do banco de dados (DB) e do Grid Infrastructure (GI) no Oracle Exadata Database Service on Dedicated Infrastructure (ExaDB-D) e no Exadata Cloud@Customer (ExaDB-C@C).
Esse novo recurso permite integrar scripts pré e pós-aplicação ao workflow de patch, para que você possa atender aos requisitos específicos do ambiente, como criar pontos de restauração, executar utlrp.sql ou capturar backups de configuração sem modificar suas estruturas operacionais existentes.
O que há nele para você
- Preservar seus processos: Continue usando suas etapas de automação e conformidade existentes enquanto a Atualização de Frota do Exadata gerencia a aplicação de patches.
- Pontos de integração personalizados: Insira scripts em pontos determinísticos antes e depois da aplicação do patch.
- Escopo alvo: Aplique scripts à aplicação de patches do BD ou do GI e, opcionalmente, restrinja por versão principal (12, 19, 23).
- Execução consistente: Certifique-se de que os scripts sejam executados de forma confiável em todos os nós envolvidos no ciclo de patch.
Como Funciona
- Modelo de aceitação: Coloque um arquivo
useractions.zipem/u02/efu/no(s) domU(s) de destino. - Detecção automática: A Atualização da Frota do Exadata extrai o zip para
/var/opt/oracle/managed/fppua(propriedade deoracle:oinstall, modo 750) e impede substituições simultâneas inseguras. - Pontos de execução: Os scripts são executados sequencialmente por nó/instância nos estágios de pré-aplicação e pós-aplicação.
- Tratamento de erros: Códigos de saída diferentes de zero falham no job; use a saída 0 se não quiser bloquear a aplicação de patches.
Principais Conceitos
- Useractions: Seus scripts ou plugins personalizados.
- Pontos de ação:
- Aplicação de patch do BD: Pré (antes da reinicialização da instância) e Pós (após a reinicialização).
- Aplicação de patch do GI: Pré (antes da pré-aplicação do CRS) e Pós (após a pós-aplicação do CRS).
- Tipos de destino:
dbougi. - Escopo da versão: Aplicar scripts a versões principais específicas (12, 19, 23).
Argumentos de entrada de ação do usuário
Para facilitar o desenvolvimento de script de ação do usuário personalizado, a Atualização de Frota do Exadata passa os seguintes argumentos de entrada para scripts de ação do usuário. Esses argumentos podem ser usados pelos scripts para executar as ações necessárias.
Tabela 4-1 Argumentos de Entrada de Ações do Usuário
| Argumento passado para o script | Valor de exemplo |
|---|---|
RHP_OPTYPE |
MOVE_DATABASE / MOVE_GIHOME |
RHP_PHASE |
PRE / POST |
RHP_SOURCEPATH |
<Source DB home> / <Source Grid Infrastructure home> |
RHP_DESTINATIONPATH |
<Patched DB home> / <Destination Grid Infrastructure home> |
RHP_DBNAME |
Nome do banco de dados, por exemplo, orcl.
|
RHP_VERSION |
Versão do home do banco de dados ou do GI, por exemplo, 19.0.0.0.0. |
RHP_NODES |
Nós no batch, por exemplo, phxdbfza26 phxdbfza17.
|
RHP_EXEC_NODE |
Nó no qual está sendo executado no momento, por exemplo, phxdbfza17.
|
RHP_CLIENT |
Nome do cluster de destino, por exemplo, raccluster.
|
RHP_TARGETNODE |
Nó de destino do cluster, exemplo fro, phxdbfza17.
|
Ativando Ações do Usuário
- Prepare o zip: Crie o
/u02/efu/useractions.zip, pertencente aooracle:oinstall(750). - Scripts de estrutura:
- Coloque em diretórios
db/ougi/. - Siga a convenção de nomenclatura:
db/fppua1_pre_apply.sh db/fppua1_post_apply.sh db/19/fppua1_pre_apply.sh gi/fppua2_post_apply.sh - Use o prefixo numérico (
nn) para ordenação.
- Coloque em diretórios
Comportamento de Execução
- Ordenação:
fppua1_*→fppua2_*→fppua3_*… - Tempo limite: 30 minutos por script.
- Contextos do usuário:
- Scripts de banco de dados executados como proprietário do banco de dados (
oracle). - Os scripts GI são executados como usuário CRS.
- Scripts de banco de dados executados como proprietário do banco de dados (
- Argumentos informados: As variáveis de ambiente, como
RHP_PHASE (PRE/POST),RHP_DBNAME,RHP_VERSION,RHP_EXEC_NODEe outras, são fornecidas aos seus scripts.
Práticas Recomendadas
- Torne os scripts idempotentes e seguros para novas tentativas.
- Valide variáveis de ambiente antes da execução.
- Faça log-in claramente com timestamps, nós e identificadores de BD.
- Use a saída 0 para condições sem bloqueio.
- Mantenha as operações leves (menos de 30 minutos).
- Evite prompts interativos ou dependências externas.
- Teste em ambientes de não produção antes do rollout.
Diagnóstico e Solução de Problemas
- PRGH-1024: O script retornou um valor diferente de zero; corrija o script ou assegure a saída 0.
- PRCZ-4001/2103: Falha ao executar o comando como oracle; verifique a propriedade/permissões.
- PRGT-496: Useractions ignoradas devido a permissões incorretas.
- Sem execução: Verifique o flag do recurso, a propriedade do zip, o tamanho (<10 MB) e a estrutura.
- Timeouts: Divida ou otimize scripts de longa execução.
Segurança e Conformidade
- Os scripts são executados com os mesmos privilégios dos proprietários do BD (
oracle) ou do GI (usuárioCRS). - Permissões rigorosas (
oracle:oinstall 750) são impostas; zips configurados incorretamente são ignorados. - Nenhuma nova identidade ou escalação privilegiada foi introduzida.
- Revise a saída do script para obter informações confidenciais antes de permitir isso nos logs do job.
Resumo
As ações do usuário da Atualização de Frota do Exadata fornecem um mecanismo de extensão controlado e seguro para aplicação de patches de BD e GI em ExaDB-D e ExaDB-C@C. Com uma abordagem leve e baseada em zip e controles de permissão rigorosos, você pode integrar perfeitamente operações específicas do ambiente em ciclos de patches automatizados e contínuos sem sacrificar os padrões de conformidade, segurança ou operacionais.
Tópico principal: Guias de Instruções