Importando Diretiva de Gerenciamento Baseado em Políticas (Policy-Based Management) instaladas no Microsoft SQL Server 2008, R2 e 2012.

Salve, Salve Galera, boa tarde.

Tudo bem? Mais que frio!

Hoje vai destacar um pouco sobre uma das principais novidades introduzidas no Microsoft SQL Server 2008 e bastante melhorada nas versões R2 e 2012, estou me referindo ao Gerenciamento Baseado em Diretivas, mais conhecido como Policy-Based Management.

Este recurso basicamente é composto por um conjunto de políticas que nos permitem organizar, administrar e padronizar nosso Servidor ou Instância SQL Server, criando suas próprias políticas, bem como, utilizando uma das diversas políticas que são instaladas em conjunto com o SQL Server.

Como de costume, vou destacar um pouco sobre o Gerenciamento Baseado em Diretivas e posteriormente demonstrar como podemos importar as políticas adicionadas no processo de Instalação.

Introdução

Para aqueles que não conhecem, o Gerenciamento Baseado em Políticas é um sistema para gerenciar uma ou mais instâncias do SQL Server 2008. Quando os administradores de políticas do SQL Server usam o Gerenciamento Baseado em Políticas, eles usam o SQL Server Management Studio para criar políticas para gerenciar entidades no servidor, como as instâncias do SQL Server, bancos de dados ou outros objetos do SQL Server.

Componentes

  • Gerenciamento de política: Possibilitando a criação das políticas de acordo com as configurações definidas pelos Administradores;
  • Administração explícita: Permite ao Administrador realizar qualquer tipo de identificação e validação do conjunto de políticas configuradas de uma maneira explicita, estabelecendo os itens gerenciados que apresentam o conjunto de opções ou configurações de acordo com a política analisada.
  • Modos de avaliação: Há quatro modos de avaliação, três dos quais podem ser automatizados:
    • Sob demanda. Este modo avalia a política quando especificado diretamente pelo usuário.
    • Ao alterar: impedir. Esse modo automatizado usa gatilhos DDL para impedir violações de política.
    • Ao alterar: log apenas. Este modo automatizado usa a notificação de eventos para avaliar uma política quando uma alteração relevante é feita.
    • Ao agendar. Este modo automatizado usa um trabalho do SQL Server Agent para avaliar periodicamente uma política.

Conceitos

Destino gerenciado: Conhecido como entidades ou elementos gerenciados pelo Gerenciamento Baseado em Políticas, sendo esta, uma instância de Banco de Dados SQL Server, um Banco de Dados ou até mesma uma Tabela e Índice.

Faceta (Facets): Conhecido como conjunto de propriedades lógicas que modelam o comportamento ou as características de certos tipos de destinos gerenciados. O número e as características das propriedades são incorporados à faceta e só podem ser adicionados ou removidos pelo criador da faceta. Um tipo de destino pode implementar uma ou mais facetas de gerenciamento, e uma faceta de gerenciamento pode ser implementada por um ou mais tipos de destino.

Condição (Conditions): Definida através de uma expressão booleana que especifica um conjunto de estados permitidos de um destino gerenciado pelo Gerenciamento Baseado em Políticas em relação a uma faceta de gerenciamento.

Política (Policies): Condição do Gerenciamento Baseado em Políticas e o comportamento esperado, como, por exemplo, modo de avaliação, filtros de destino e agenda. Uma política só pode conter uma condição. As políticas podem ser habilitadas ou desabilitadas.

Categoria (Categorie): Uma categoria definida pelo usuário para ajudar a gerenciar políticas. Os usuários podem classificar as políticas em categorias diferentes. Uma política pertence a somente uma categoria. Categorias de políticas se aplicam a bancos de dados e servidores.

No nível de banco de dados, as seguintes condições se aplicam:

  • Os proprietários de banco de dados podem assinar um conjunto de categorias de política para um banco de dados;
  • Somente as políticas das categorias assinadas podem governar um banco de dados; e
  • Todos os bancos de dados assinam implicitamente a categoria de política padrão.

No nível de servidor, é possível aplicar categorias de políticas a todos os bancos de dados.

Política efetiva (Effective Policie): As políticas efetivas de um destino são aquelas que governam esse destino. Uma política só será efetiva em relação a um destino se todas as seguintes condições forem satisfeitas:

  • A política está habilitada;
  • O destino pertence ao conjunto de destino da política; e
  • O destino ou um dos destinos ancestrais assina o grupo de políticas que contém essa política.

Pois bem, após apresentar um pouco sobre o Gerenciamento Baseado em Políticas, seus componentes, conceitos e elementos, vamos agora começar a trabalhar com as políticas criadas automaticamente pelo instalador do SQL Server.

Armazenamento de Políticas

As políticas são armazenadas no banco de dados msdb. Após a alteração de uma política ou condição, deve ser feito backup do msdb. O histórico de políticas avaliadas na instância atual do Mecanismo de Banco de Dados é mantido em tabelas do sistema de msdb. O histórico de políticas aplicadas a outras instâncias do Mecanismo de Banco de Dados ou aplicadas ao Reporting Services ou ao Analysis Services não é retido.

 

Diretivas de Gerenciamento Baseado em Políticas instaladas

Durante o processo de instalação de um novo Servidor ou Instância do Mecanismo de Banco de Dados do Microsoft SQL Server, o Setup de instalação adiciona um conjunto bastante extenso de Políticas e Condições pré-definidas pela Equipe de Desenvolvimento do SQL Server.

Por padrão, essas políticas não são instaladas no Mecanismo de Banco de Dados; no entanto, elas podem ser importadas do local de instalação padrão C:\Arquivos de Programas\Microsoft SQL Server\100\Tools\Policies\DatabaseEngine\1033,  conforme apresenta a Figura 1:

diretiva1

Figura 1 – Relação de Diretivas adicionadas pelo instalador do Microsoft SQL Server.

Neste conjunto de Políticas e Condições, você poderá encontrar:

  • Políticas de Backup;
  • Políticas de Crescimento de Arquivos no Microsoft SQL Server 2000;
  • Políticas de Affinity Mask Overlap para 32 ou 64 bits;
  • Políticas de Verificação de Páginas de Dados, Collations e Opções de Banco de Dados;
  • Políticas para Configuração do Surface Area Configuration; e
  • Políticas relacionadas ao Windows Event Log. Etc…

As diretivas do Gerenciamento Baseado em Diretivas são instaladas em uma instância do Mecanismo de banco de dados do SQL Server. Uma diretiva com essa condição pode ser exportada para um arquivo XML e importada de um arquivo XML para outra instância do SQL Server.

Observação: Outro detalhe importante, O SQL Server inclui políticas que podem ser usadas para monitorar uma instância do SQL Server.

Importando uma diretiva de Gerenciamento Baseado em Política instalada

Agora que sabemos da existência deste conjunto de diretivas adicionadas em nossa máquina pelo instalador do SQL Server, bem como, seu local padrão de armazenamento, podemos agora realizar o processo de importação de uma destas diretivas, através do Management Studio, realizando os seguintes passos:

  1. Dentro do Management Studio, navegue até opção Management, será aberta a TreeView contento as opções de gerenciamento do seu Servidor ou Instância SQL Server;
  2.  Selecione a opção Policy Management e expanda a TreeView.
  3. Será aberto o conjunto de opções existentes na Policy Management;
  4. Selecione a opção Policies(Políticas);
  5. Clique com o Botão da Direita e selecione a opção Import Policy conforme apresenta a Figura 2:

diretiva2

Figura 2 – Opção Import Policy existente dentro do Policy Management.

Após selecionar a opção Import Policy, o Management Studio realizará a abertura da tela de Importação de Diretivas, conforme a Figura 3 apresenta abaixo:

diretiva3

Figura 3 – Tela de Importação de Diretivas.

Podemos notar que esta tela é bastante simples e apresenta um conjunto com poucas opções que podemos utilizar, conforme destaco:

  • Replace duplicates with items imported: Ao marcar esta opção o Management Studio deverá substituir diretivas já existentes ou importadas anteriormente.
  • Policy State: Esta opção define qual dos estados listados abaixo a diretiva terá após sua importação:
  • Preserve policy state on import: O estado da diretiva deverá ser preservado conforme sua configuração no momento da importação.
  • Enable all policies on import: Todas as diretivas importadas naquele momento deverão ter o estado habilitado em seguida aplicadas à instância ou servidor de banco de dados.
  • Disable all policies on import: Todas as diretivas importadas naquele momento deverão ter o seu estado desabilitado a instância ou servidor de banco de dados, sendo assim, não será aplicadas.

O próximo passo é realizar a importação de uma diretiva qualquer, em nosso ambiente de teste, vou selecionar a diretiva SQL Server System Tables Updatable, para isso, em vou clicar no botão localizado frente ao TextBox Files to Import, para que seja aberta a relação de diretivas, conforme apresenta a Figura 4, em seguida selecione o arquivo SQL Server System Tables Updatable.xml

diretiva4

Figura 4 – Relação de arquivos de diretivas.

O Management Studio vai retornar para tela de importação, e agora não tem segredo, basta agora clicar no botão Ok, e pronto a diretiva seleciona acaba de ser importada e adicionada ao Policy Management em seu Management Studio, conforme apresenta a Figura 5:

diretiva5

Figura 5 – Diretiva – SQL Server System Tables Updatable importada.

Pronto, fácil e simples, a diretiva já esta disponível para podermos utilizar, você terá a possibilidade de consultar e alterar as propriedades e configurações desta diretiva, bem como, realizar o processo de avaliação das condições definidas para esta diretiva e caso tenha interesse ativar o uso desta diretiva.

Com isso, estou encerrando aqui este artigo, espero que você tenha gostado, que este conteúdo possa te ajudar em sua atividades profissionais e acadêmicas.

Mais uma vez obrigado por sua visita.

Nos encontramos em breve.

Até mais.

Autor: Junior Galvão - MVP

Profissional com vasta experiência na área de Tecnologia da Informação e soluções Microsoft. Graduado no Curso Superior em Gestão da Tecnologia de Sistemas de Informação pela Uninove - Campus São Roque. Pós-Graduado no Curso de Gestão e Engenharia de Processos para Desenvolvimento de Software com RUP na Faculdade FIAP - Faculdade de Informática e Administração Paulista de São Paulo. Pós-Graduado em Gestão da Tecnologia da Informação Faculdade - ESAMC Sorocaba. Cursando Mestrado em Ciências da Computação - UFSCar - Campus - Sorocaba. Formação MCDBA Microsoft, autor de artigos acadêmicos e profissionais postados em Revistas, Instituições de Ensino e WebSistes. Meu primeiro contato com tecnologia ocorreu em 1995 após meus pais comprarem nosso primeiro computador, ano em que as portas para este fantástico mundo se abriram. Neste mesmo ano, comecei o de Processamento de Dados, naquele momento a palavra TI não existia, na verdade a Tecnologia da Informação era conhecida como Computação ou Informática, foi assim que tudo começou e desde então não parei mais, continuando nesta longa estrada até hoje. Desde 2001 tenho atuado como Database Administrator - Administrador de Banco de Dados - SQL Server em tarefas de Administração, Gerenciamento, Migração de Servidores e Bancos de Dados, Estratégias de Backup/Restauração, Replicação, LogShipping, Implantação de ERPs que utilizam bancos SQL Server, Desenvolvimento de Funções, Stored Procedure, Triggers. Experiência na Coordenação de Projetos de Alta Disponibilidade de Dados, utilizando Database Mirroring, Replicação Transacional e Merge, Log Shipping, para versões: 2000, 2005, 2008, 2008 R2, 2012 e 2014. Atualmente trabalho como Administrador de Banco de Dados no FIT - Instituto de Tecnologia da Flextronics, como também, Consultor em Projetos de Tunnig e Performance para clientes. Desde 2008 exerço a função de Professor Universitário, para as disciplinas de Banco de Dados, Administração, Modelagem de Banco de Dados, Programação em Banco de Dados, Sistemas Operacionais, Análise e Projetos de Sistemas, entre outras. Possuo titulação Oficial Microsoft MVP - SQL Server renovada desde 2007.

Um comentário em “Importando Diretiva de Gerenciamento Baseado em Políticas (Policy-Based Management) instaladas no Microsoft SQL Server 2008, R2 e 2012.”

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s