Exemplo de criação de um padrão de aplicação
Siga este exemplo para ver um processo passo a passo de criação e definição da seção de identificação para um novo padrão de aplicação.
Antes de Iniciar
Conhecimento básico de programação é desejável.
Função necessária: pd_admin
Por Que e Quando Desempenhar Esta Tarefa
Este exemplo mostra como criar um padrão de mapeamento usando o modo de depuração.
O padrão é para Apache Web Server no Unix.
Procedimento
- Navegar até Todos > Designer de padrões > Padrões de descoberta.
- Clique em Nova.
-
Defina os atributos do padrão básico da seguinte forma:
Campo Descrição Tipo de padrão Selecione Aplicação. Nome Insira Apache Web Server no padrão Unix. Tipo de IC Selecione Servidor Web Apache na lista. Sistema operacional [Somente padrões de aplicação] Desmarque a caixa de seleção Todos e marque as seguintes caixas de seleção na lista: - Servidor AIX
- Servidor HPUX
- Servidor Linux
- Servidor Solaris
- Servidor UNIX
Ordem de execução [Somente padrões de aplicação] Deixe a configuração padrão Nenhum. Descrição Este padrão descobre servidores Web Apache em versões Unix até 2.4.
- Clique em Salvar.
-
Crie a seção de identificação e defina suas propriedades básicas:
- Na Seção de identificação, clique em Novo.
-
Configure os seguintes parâmetros:
Campo Valor Nome Insira a identificação para os tipos de ponto de entrada HTTP(S). Tipos de ponto de entrada [Somente padrões da aplicação] Marque as seguintes caixas de seleção na lista: - Endpoint de HTTP(S)
- Endpoint de TCP
Localizar estratégia de processo [somente padrões de aplicação] Selecione Porta de escuta. Ordem Insira 1. - Clique em Salvar.
-
Clique na seção de identificação recém-criada: Identificação de tipo(s) de ponto de entrada HTTP(S).
A nova seção de identificação é aberta na guia separada.
-
Ative o modo de depuração:
-
No Designer de padrões, clique em Modo de Depuração.
A janela seção de identificação de depuração é exibida.
-
Preencha os detalhes necessários para o tipo de ponto de entrada:
Campo Descrição Tipo de depuração Selecione De cima para baixo para executar a descoberta de cima para baixo com o Mapeamento de serviços ou Tipo Selecione HTTP(S) para o tipo de ponto de entrada na lista. URL Insira http://10.196.39.244:6080/ITO. -
Clique em Conectar.
O modo de depuração está ativado e o ponto verde aparece no botão de depuração:
.
Observe que as seguintes variáveis são preenchidas com valores quando o modo de depuração está ativo:- computer_system ‒ as informações do host Apache
- entrada_ponto ‒ identificado pela URL neste caso
- process ‒ as informações do processo Apache
-
No Designer de padrões, clique em Modo de Depuração.
-
Verifique se o nome do processo no IC é Apache Web Server:
- Renomeie a primeira etapa da seção de identificação para Verificar se o nome do processo corresponde ao Apache.
- Selecione Corresponder na lista Operação.
-
Insira $process.executable no primeiro campo de condição.
- Selecione Contém na lista de operadores condicionais.
- Insira "httpd" no segundo campo de condição.
- Clique no ícone de adição para adicionar outra condição.
- Insira $process.executable no primeiro campo de condição.
- Selecione Contém na lista de operadores condicionais.
- Insira "apache" no segundo campo.
- Defina que esta operação de correspondência deve corresponder a uma destas condições: Selecione Qualquer na lista Atender.
- Clique em Testar e verifique se você recebe a seguinte mensagem: Nenhuma mudança foi feita durante este teste.
-
Preencha o atributo de rótulo do seu IC:
-
Na árvore Etapas, clique no botão
para adicionar uma etapa na primeira etapa.
- Renomear a nova etapa para define o rótulo de exibição.
- Selecione Definir valor de parâmetro na lista Operação.
- Insira "Apache" no campo Valor.
- Insira $name no campo Nome.
-
Clique em Testar e verifique se a seguinte mensagem é exibida:
- Clique em Fechar.
-
Na árvore Etapas, clique no botão
-
Preencha o atributo do diretório inicial:
- Na árvore Etapas, adicione uma etapa e renomeie-a para Obter diretório inicial.
-
Selecione Analisar variável na lista Operação.
Esta operação extrai o valor após o -d na caixa de conteúdo.
- Expanda a variável process no painel Variáveis temporárias.
-
Arraste a variável commandLine do painel Variáveis temporárias para o campo de variável na operação.
Nota:Para obter mais informações sobre como usar o recurso de arrastar e soltar, consulte Insira valores e variáveis em padrões. - Selecione Command line Unix style na lista Definir análise.
- No painel Variáveis, adicione a nova variável install_directory.
- Clique em Testar.
-
Obtenha o atributo do diretório inicial do daemon HTTP.
Se a etapa anterior preencheu o atributo do diretório inicial, pule esta etapa. Neste exemplo, é necessário executá-lo.
- Na árvore Etapas, adicione uma nova etapa e renomeie-a para Condição - verifique se o diretório inicial foi definido, caso contrário, extraia-o de httpd –V.
-
Selecione Analisar saída do comando na lista Operação.
Esta operação extrai o valor após o -d na caixa de conteúdo.
- Clique em Pré-condição.
- Insira $install_directory no campo de valor da condição.
- Selecione Está vazio na lista de operadores condicionais.
- Selecione Verdadeiro na lista Se a condição for.
- Insira $process.executablePath+" -V " no campo Definir detalhes do comando.
- Clique em Executar comando.
- Selecione Texto delimitado na lista Definir análise.
- Insira HTTPD_ROOT no campo Incluir linhas.
-
Clique no botão Editar ao lado de Delimitadores.
- Adicione os dois delimitadores: igual a (=) e aspas (").
- Clique em OK.
- Insira 2 no campo Posições.
-
Clique em Testar.
A janela Resultados da depuração mostra o atributo do diretório inicial preenchido com um valor.
- Clique em OK.
-
Preencha o atributo do arquivo de configuração de IC:
- Na árvore Etapas, adicione uma nova etapa e renomeie-a para Obter arquivo de configuração
- Selecione Analisar variável na lista Operação.
- Expanda a variável process no painel Variáveis temporárias.
-
Arraste a variável commandLine do painel Variáveis temporárias para o campo Inserir variável.
O valor é preenchido: /usr/sbin/httpd2-prefork -f /etc/apache2/httpd.conf.
-
Selecione Estilo Unix de linha de comando na lista Definir análise.
- Clique em Recuperar.
- Insira -d no campo Palavra -chave.
- Selecione o valor no painel Saída e crie uma nova variável chamada install_directory.
- Clique em Testar.
-
Extraia o atributo do arquivo de configuração de IC do daemon HTTP:
Se a etapa anterior preencheu o atributo do arquivo de configuração, pule esta etapa. Neste exemplo, é necessário executá-lo.
- Na árvore Etapas, adicione uma nova etapa e renomeie-a para Condição - verifique se conf_file foi definido, caso contrário, extraia-o de httpd –V.
- Selecione Analisar saída do comando na lista Operação.
- Clique em Pré-condição.
- Insira $config_file no campo de valor da condição.
-
Selecione Está vazio na lista de operadores condicionais.
- Insira $process.executablePath+" -V " no campo Definir detalhes do comando.
- Clique em Executar comando.
- Selecione Texto delimitado na lista Definir análise.
- Insira SERVER_CONFIG_FILE no campo Incluir linhas.
-
Clique no botão Editar ao lado de Delimitadores.
- Adicione os dois delimitadores: igual a (=) e aspas (").
- Clique em OK.
- Insira 2 no campo Posições.
- Se a nova variável conf_file não for adicionada automaticamente, crie-a no painel Variáveis.
-
Clique em Testar.
A janela Resultados da depuração mostra o atributo do arquivo de configuração preenchido com um valor.
- Clique em OK.
-
Se o atributo do arquivo de configuração ainda não estiver preenchido, execute esta etapa:
- Na árvore Etapas, adicione uma nova etapa e renomeie-a para o local padrão do arquivo conf.
- Selecione Definir valor de parâmetro na lista Operação.
- Clique em Pré-condição.
- Insira $conf_file no campo de valor da condição.
- Selecione Está vazio na lista de operadores condicionais.
- Selecione Verdadeiro na lista Se a condição for.
- Insira $home_dir+"/conf/httpd.conf" no campo Valor.
- Insira $conf_file no campo Nome.
- Clique em Testar e verifique se o atributo do arquivo de configuração está preenchido.
-
Concatene o diretório inicial e os valores do arquivo de configuração:
- Na árvore Etapas, adicione uma nova etapa e renomeie-a para verificar se SERVER_CONFIG_FILE é relativo ou não.
- Selecione Definir valor de parâmetro na lista Operação.
- Clique em Pré-condição.
- Insira $conf_file no campo de valor da condição.
- Selecione Começa com na lista de operadores condicionais.
- Insira "/" no valor da cadeia de caracteres.
- Selecione Falso na lista Se a condição for.
- Insira $home_dir+"/"$conf_file no campo Valor.
- Insira $conf_file no campo Nome.
- Clique em Testar e verifique se o atributo do arquivo de configuração está preenchido.
-
Preencha o atributo de versão:
- Na árvore Etapas, adicione uma nova etapa e renomeie-a para obter versão de version.signature (IBM HTTPSERVER).
- Selecione Analisar arquivo na lista Operação.
- Insira a variável $install_directory concatenada e a cadeia de caracteres "/version.signature" ($home_dir+"/version.signature") no campo Selecionar arquivo.
- Clique em Recuperar conteúdo do arquivo.
- Crie a variável Version no painel Variáveis.
-
Clique em Testar e verifique se o atributo de versão está preenchido.
Neste exemplo, a versão não é extraída nesta fase.
-
Extraia o atributo de versão do daemon HTTP:
- Na árvore Etapas, adicione uma etapa e renomeie-a para Condição - verifique se a versão foi definida, caso contrário, extraia-a de httpd -v.
- Selecione Analisar saída do comando na lista Operação.
- Clique em Pré-condição.
- Insira $version no campo de valor da condição.
- Selecione Está vazio na lista de operadores condicionais.
- Clique no ícone de adição (+) para adicionar outra condição.
- Insira $version no campo de valor da condição.
- Selecione Contém na lista de operadores condicionais.
- Insira "diretório" no valor da cadeia de caracteres.
- Selecione Qualquer na lista Atender.
-
Selecione verdadeiro na lista Se a pré-condição for.
- Insira $process.executablePath+" -V | grep 'Versão do servidor' | corte -d '/' -f 2 | corte -d ' ' -f 1" no campo Definir detalhes do comando.
- Clique em Executar comando e verifique se o atributo de versão aparece no painel Saída.
- Selecione Posição do final na lista Definir análise.
-
Insira 1 no campo Posições no painel Variáveis.
-
Clique em Testar e verifique se o atributo do arquivo de configuração está preenchido.
Nota:
O número da versão aparece somente no painel Variáveis temporárias, não no painel Atributos de IC.
Observe que nesta fase você identificou com sucesso o Apache Web Server e preencheu seus vários atributos, exceto o atributo de versão que foi deixado em branco de propósito.
-
Se a versão ainda não estiver preenchida, extraia-a do arquivo IHS.product:
- Na árvore Etapas, adicione uma etapa e renomeie-a para definir versão se ainda estiver vazia.
- Selecione Analisar arquivo na lista Operação.
- Clique em Pré-condição.
- Insira $version no campo de valor da condição.
- Selecione Está vazio na lista de operadores condicionais.
- Clique no ícone de adição (+) para adicionar outra condição.
- Insira $version no campo de valor da condição.
- Selecione Contém na lista de operadores condicionais.
- Insira "diretório" no valor da cadeia de caracteres.
- Selecione Qualquer na lista Atender.
- Selecione verdadeiro na lista Se a pré-condição for.
- Insira $install_directory + "/properties/version/IHS.product" no campo Selecionar arquivo.
-
Clique em Recuperar conteúdo do arquivo.
O conteúdo do arquivo é exibido no painel Saída.
- Selecione Arquivo XML na lista Definir análise.
-
Marque o valor da versão no painel Saída e insira a versão no pop-up de variáveis.
-
Encontre atributos adicionais reutilizando uma biblioteca de etapas compartilhada.
- Na árvore Etapas, adicione uma etapa e renomeie a nova etapa para fazer referência à biblioteca de aprimoramento.
- Selecione Referência de biblioteca na lista Operação.
-
Selecione Atributos de aprimoramento do Apache na lista Biblioteca.
Esta operação insere uma sequência de subetapas pré-configuradas na árvore de etapas. Para obter informações sobre como criar bibliotecas de etapas compartilhadas, consulte Reutilizar uma biblioteca de etapas compartilhada.
-
Preencher atributos relacionados ao processo:
- Na árvore Etapas, adicione uma etapa e renomeie-a para obter processos.
- Selecione Obter processo na lista Operação.
- Insira "httpd" no campo Linha de comando.
- Insira $procs no campo Especificar variável de destino.
-
Clique em Testar e verifique se os atributos são exibidos:
- Clique em Fechar quando terminar.
-
Descubra os IDs de processo:
- Na árvore Etapas, adicione uma etapa e renomeie-a para definir process_ids.
- Selecione Analisar variável na lista Operação.
- Insira $procs[*].pid no campo Inserir variável.
- Selecione Texto delimitado na lista Definir análise.
-
Clique em Recuperar.
O conteúdo é exibido no painel Saída.
- Crie a variável process_ids no painel Variáveis.
-
Insira 1 no campo Posições.
- Clique em Testar.
-
Verifique se todos os atributos necessários estão preenchidos:
- Clique em Salvar.
-
Verifique se Descoberta e Mapeamento de serviços podem usar a seção de identificação que você definiu:
- Execute a descoberta horizontal de um Servidor Web Apache usando este padrão.
- Navegue até a tabela de Servidores Web Apache e verifique se há uma entrada para este IC.
- Execute a descoberta de cima para baixo do mesmo IC.
- Verifique a mesma tabela Servidores Web Apache.
-
Verifique se o registro não está duplicado.
Isso significa que os resultados da descoberta horizontal e de cima para baixo são gravados no CMDB no mesmo registro. A seção de identificação do padrão está correta.