Criar bancos de dados do App-V 4.5 usando scripts SQL

Para quem essa solução é destinada? Profissionais de tecnologia da informação que gerenciam bancos de dados do App-V (App-V) 4.5.

Como este guia pode ajudá-lo? Essa solução explica e documenta o procedimento para instalar o Microsoft Application Virtualization Server quando o administrador que instala não tem privilégios de "sysadmin" para o SQL Server.

Visão geral

Um dos desafios da instalação do Microsoft Application Virtualization 4.5 (App-V) é que o programa de instalação pressupõe que o usuário que instala os recursos do servidor não será apenas um administrador de computador local, mas também tenha privilégios de administrador do SQL no servidor SQL que hospedará o Data Store. Esse requisito baseia-se no fato de que o banco de dados e as funções e permissões apropriadas são criados como parte da instalação. No entanto, na maioria das empresas, os servidores SQL são gerenciados separadamente da equipe de infraestrutura que instalará o App-V. Esses requisitos de segurança dificultam a obtenção de administradores do SQL para fornecer ao administrador de infraestrutura a instalação de direitos adequados do App-V; da mesma forma, os administradores do SQL não terão os privilégios necessários para instalar o produto para a equipe de infraestrutura.

Atualmente, um administrador que tenta a instalação do App-V deve ter privilégios de SQL "sysadmin". Em versões anteriores do produto, a configuração permitiu que os administradores do SQL criassem uma conta temporária "sysadmin" ou estivesse presente durante a instalação para fornecer credenciais com privilégios de "sysadmin". Nesta versão, os scripts são fornecidos no produto lançado para todos os administradores usarem ao implementar sua infraestrutura.

Este whitepaper discute o cenário em que a instalação precisa ser dividida em duas tarefas separadas: criar o banco de dados SQL e instalar os recursos do servidor App-V. Os administradores do SQL poderão examinar os scripts SQL e fazer modificações para resolve quaisquer conflitos com outros bancos de dados ou para dar suporte à integração com outras ferramentas. O resultado dos scripts é permitir que os administradores do SQL preparem o banco de dados para que os administradores de infraestrutura não precisem receber direitos avançados no SQL Server. Isso é importante em ambientes em que as políticas de segurança proibiriam isso.

Visão geral do processo de criação de banco de dados SQL

Os scripts SQL permitem que os administradores do SQL criem o banco de dados necessário e também configurem os privilégios para que os administradores do App-V instalem e gerenciem o ambiente com êxito. As etapas para concluir essas tarefas são listadas posteriormente neste documento.

Esse processo separa as ações de criação e configuração do banco de dados da instalação real do App-V.

Informações a serem fornecidas aos administradores do SQL

  • Nome do grupo AD que será o administrador do App-V

  • Nome do servidor em que o Servidor de Gerenciamento do App-V será instalado

Informações a serem retornadas aos administradores de infraestrutura

  • Nome do servidor de banco de dados ou instância e o nome do banco de dados App-V

Depois que o banco de dados for preparado, os administradores do App-V poderão executar a instalação do App-V sem privilégios de administrador do SQL.

Usando os scripts de configuração do SQL

Requisitos

A seguir está uma lista de requisitos para usar os scripts, que estão localizados na support\createdb pasta na raiz do local de extração selecionado.

  • Os scripts devem ser copiados para um local gravável no computador em que eles serão executados (certifique-se de remover o atributo somente leitura desses scripts depois de copiados) e as ferramentas do cliente SQL devem ser carregadas nesse computador (osql é necessário apenas para executar os arquivos de lote de exemplo no computador local).

  • O SQL Server deve dar suporte à Autenticação do Windows.

  • Verifique se a Instância de SQL Server e o Serviço do SQL Agent estão em execução.

  • Entre com uma conta de domínio que é um administrador do SQL (sysadmin) no computador em que os scripts serão feitos.

Os scripts são executados sob as credenciais de domínio do usuário conectado.

Tarefas a serem executadas pelos administradores do SQL

  1. Copie os scripts contidos na support\createdb pasta da raiz do local de extração selecionado para o computador em que os scripts serão executados. Os arquivos a seguir são necessários para que os scripts sejam executados corretamente e devem ser chamados na ordem apresentada abaixo.

    • database.sql

    • roles.sql

    • table_CODES.sql

    • functions_before_tables.sql

    • tables.sql

    • functions.sql

    • views.sql

    • procedures.sql

    • triggers.sql

    • data_codes.sql

    • data_messages.sql

    • data_defaults.sql

    • alerts_jobs.sql

    • dbversion.sql

  2. Examine e modifique, se necessário, o database.sql arquivo. As configurações padrão nomeam o banco de dados APPVIRTDB.

    • Se necessário, substitua instâncias do pelo nome do banco de APPVIRTDB dados que você planeja usar.

    • Modifique a FILENAME propriedade no script com o caminho apropriado para o SQL Server em que você cria o banco de dados.

  3. Se necessário, examine e modifique o database name [APPVIRTDB]roles.sql no arquivo usado no database.sql arquivo.

Exemplo de como automatizar o processo usando arquivos em lote

Se usados, os dois arquivos de lote de exemplo fornecidos executam os scripts SQL da seguinte maneira:

  1. Create_schema.bat (1)

    • database.sql

    • roles.sql

  2. Create_tables.bat (2)

    • table_CODES.sql

    • functions_before_tables.sql

    • tables.sql

    • functions.sql

    • views.sql

    • procedures.sql

    • triggers.sql

    • data_codes.sql

    • data_messages.sql

    • data_defaults.sql

    • alerts_jobs.sql

    • dbversion.sql

Observação

Consideração cuidadosa ao modificar os scripts deve ser tomada e só deve ser feita por alguém com o conhecimento apropriado. Além disso, dos arquivos de exemplo apresentados apenas o seguinte deve ser alterado: create_schema.bat, create_tables.bat, e database.sqlroles.sql. Todos os outros arquivos não devem ser modificados de forma alguma, pois isso pode fazer com que o banco de dados seja criado incorretamente, o que levará à falha dos serviços de App-V a serem instalados.

Os dois arquivos de lote de exemplo devem ser colocados no mesmo diretório no qual o restante dos scripts SQL foram copiados no computador.

  1. Execute o arquivo de exemplo create_schema.bat para criar o banco de dados. Este script leva vários segundos para ser concluído e não deve ser interrompido.

    • Execute o arquivo create schema.bat do diretório para o qual ele foi copiado. Sintaxe é: Create_schema.bat SQLSERVERNAME

      Captura de tela do prompt de comando em execução create_schema.bat com saída de exemplo.

    • Se esse script falhar durante a criação do novo APPVIRTDB banco de dados, marcar o log conforme indicado para corrigir o problema. É necessário excluir o banco de dados criado com uma execução parcial dos scripts para garantir que as tentativas subsequentes funcionem corretamente.

  2. Execute o create_tables.bat arquivo para criar as tabelas no banco de dados. Este script leva vários segundos para ser concluído e não deve ser interrompido.

    • Execute o create_tables.bat arquivo do diretório em que ele foi copiado. Sintaxe é: create_tables.bat SQLSERVERNAME DBNAME

      Captura de tela do prompt de comando em execução create_table.bat com saída de exemplo.

      Se o script falhar durante a criação das tabelas, marcar o log conforme indicado para corrigir o problema. É necessário excluir o banco de dados e executar create_schema.bat antes de tentar executar o create_tables.bat arquivo em todas as tentativas subsequentes.

Configurando permissões no banco de dados App-V

As contas a seguir precisam ser criadas no SQL Server com permissões e funções específicas para o novo banco de dados para a instalação, implantação e administração contínua do ambiente app-V.

  • Crie uma entrada para o grupo de administradores do App-V no SQL Server e no APPVIRTDB banco de dados para os "administradores domain\App-V" (em que "domínio" e "Administradores do App-V" serão alterados para refletir seu próprio ambiente) e adicioná-los à SFTAdmin função de banco de dados eSFTEveryone.

    Captura de tela dos logons SQL com o logon SOFTGRID mapeado para as funções SFTadmin e SFTeveryone.

  • Conceda a esse grupo permissão "EXIBIR QUALQUER DEFINIÇÃO" no nível global. Essa permissão permite que o processo de instalação do Microsoft Application Virtualization Management Server verifique se a entrada do servidor de gerenciamento já existe. Em SQL Server 2005 e posteriores, foram adicionadas restrições de acesso aos metadados contidos.master.db O usuário criado na etapa anterior, por padrão, não terá os direitos necessários pela instalação do servidor. Abra as propriedades da entrada criada anteriormente, Propriedades de Logon, Securables. Adicione a instância do Banco de Dados e habilite "GRANT" para "Exibir qualquer definição", conforme mostrado na captura de tela a seguir:

    Captura de tela das propriedades de logon do SQL, página Securables, em que a permissão

  • Adicione uma função à ROLE_ASSIGNMENTS tabela para a entrada criada na etapa anterior para permitir que os administradores do App-V acessem o Console de Gerenciamento de Virtualização de Aplicativo, com função = "ADMIN" e group_ref = "domínio\Administradores do App-V" (em que "domínio" e "Administradores do App-V" serão alterados para refletir seu próprio ambiente).

    Captura de tela do SQL Server Management Studio, pesquisador de objetos mostrando o dbo. ROLE_ASSIGNMENTS tabela e a função ADMIN.

  • Crie uma entrada para o banco de dados SQL Server e App-V para o Servidor de Gerenciamento. Essa conta é usada pelo Microsoft Application Virtualization Management Server para se conectar ao armazenamento de dados e é responsável por atender solicitações de cliente para aplicativos transmitidos. Há duas opções, dependendo de onde o SQL Server e o Servidor de Gerenciamento devem ser instalados:

    1. Se o Servidor de Gerenciamento e SQL Server forem instalados no mesmo computador, adicione uma entrada e adicione-a NT AUTHORITY\NETWORK SERVICESFTUser às funções de banco de dados eSFTEveryone.

    2. Se o Servidor de Gerenciamento e SQL Server forem instalados em computadores diferentes, adicione uma entrada para "domain\App-V Server Name$" (em que "Nome do Servidor App-V" é o nome do servidor em que o Servidor de Gerenciamento do App-V será instalado) e adicione-o SFTUser às funções de banco de dados eSFTEveryone.

  • Abra a janela de consulta na janela SQL e execute o seguinte SQL:

    USE APPVIRTDB
    GRANT ALTER ON ROLE::SFTuser TO "domain\App-V Admins"
    

    Onde o APPVIRTDB é o nome do Banco de Dados App-V criado no SQL Server na etapa anterior, e o usuário que vai fazer a instalação do servidor App-v precisa ser membro de "domain\App-V Admins" (em que "domínio" e "Administradores do App-V" serão alterados para refletir seu próprio ambiente).

Tarefas a serem executadas pelos administradores de infraestrutura

  1. O administrador do grupo "Administradores do App-V" deve instalar o App-V.

    Use informações dos administradores do SQL para selecionar o SQL Server e o banco de dados criados nas etapas anteriores.

  2. O administrador do grupo "Administradores do App-V" faz logon no Console de Gerenciamento de Virtualização de Aplicativo e exclui os seguintes objetos do Console de Gerenciamento.

    Aviso

    Essa tarefa é necessária, pois a configuração tradicional preenche determinados registros no banco de dados que não são preenchidos se você executar a instalação em um banco de dados já existente.

    • Em "Grupos de Servidores", "Grupo de Servidor Padrão", exclua "Servidor de Gerenciamento de Virtualização de Aplicativo"

    • Em "Grupos de Servidores", exclua "Grupo de Servidor padrão"

    • Em "Políticas de Provedor", exclua "Provedor Padrão"

  3. O administrador do grupo de administradores do App-V deve criar:

    • Em "Políticas de Provedor", crie uma nova política de provedor

    • Criar um "Grupo de Servidor Padrão"

      Observação

      Você deve criar um grupo "Servidor Padrão" mesmo que não seja usado. O instalador do servidor procura apenas o "Grupo de Servidor Padrão" ao tentar adicionar o servidor. Se não houver "Grupo de Servidor padrão", a instalação falhará. Se você planeja usar grupos de servidor diferente do padrão que está bom, é necessário manter o "Grupo de Servidores Padrão" se você planeja adicionar servidores de gerenciamento subsequentes do App-V à sua infraestrutura.

    • Atribuir o Grupo de Usuários do App-V à Nova Política de Provedor criada acima

    • Em "Grupos de Servidores", crie um novo grupo de servidores, especificando a Nova Política de Provedor

    • No grupo Novo Servidor, crie um Novo Servidor de Gerenciamento de Virtualização de Aplicativo

    Importante

    Não reinicie o serviço antes de concluir todas as etapas acima.

    • O administrador reinicia o serviço do Servidor de Gerenciamento de Virtualização de Aplicativo.

Conclusão

Em conclusão, as informações neste documento permitem que um administrador trabalhe com os administradores do SQL para desenvolver um caminho de implantação que funcione para as divisões de segurança e administrativas em uma organização. Depois de ler este documento e testar as tarefas documentadas, um administrador deve estar pronto para implementar sua infraestrutura de App-V nesse tipo de ambiente.