Consolidando o SQL Server

2

Temos vários servidores padrão do SQL Server 2008 R2, cada um para um único aplicativo que gostaríamos de consolidar em um servidor físico. Executando o perfmon nesses servidores, eles não estão usando uma grande quantidade de tráfego de CPU, E / S ou de rede, portanto são bons candidatos para consolidação. Algumas perguntas:

É melhor criar uma única instância com vários bancos de dados ou várias instâncias (por exemplo, uma instância para cada aplicativo?)

Eu não antecipo muita contenção, mas existe uma maneira de fazer algum tipo de controle sobre o IO, de modo que nenhum banco de dados / instância possa usar todos os recursos de IO? Eu sei que posso fazer CPU com o governador de recursos.

Na configuração RAID, teremos 22 discos disponíveis (e 2 hot spares). As gravações são mais pesadas que as leituras, então faremos o RAID-10. É melhor configurar uma matriz grande para todos os bancos de dados e, em seguida, duas matrizes menores para arquivos de log e tempdbs ou configurar uma matriz dedicada para cada banco de dados / instância.

Obrigado.

    
por Benjamin Bryan 24.02.2012 / 19:47

1 resposta

3

Aqui estão algumas coisas para pensar:

  • Você pode querer manter instâncias separadas de uma perspectiva de segurança. Se você tiver uma única equipe de administração para todos os servidores existentes, isso não é um problema e uma única instância com vários bancos de dados pode ser o caminho a percorrer. Se você interromper sua administração ou se tiver preocupações de segurança especiais, uma única instância pode não ser o caminho a seguir.
  • O SQL Server Enterprise é a única edição de produção em que o Resource governor está disponível. Se você está consolidando no SQL Standard, isso não será uma opção para você.
  • O trabalho de
  • dba para uma única instância pode ser mais fácil do que várias instâncias (de uma perspectiva geral de operações).
  • Supondo que não haja um governador de recursos, será mais fácil limitar a memória usada por cada aplicativo usando instâncias separadas e configurando a opção de memória máxima para cada instância. Isso também adicionará mais sobrecarga administrativa. Dito isto, o SQL Server é MUITO BOM na gestão de recursos físicos. Não há informações suficientes sobre o seu ambiente para saber se isso é ou não um esforço que vale a pena, mas meu instinto diz que não.
  • Geralmente, você tem mais variáveis trabalhando em um único aplicativo em um ambiente compartilhado (ou seja, instância única). Por exemplo, se um plano de consulta incorreto ficar preso em um cache de plano e você estiver usando uma única instância, todos os outros bancos de dados poderão ser afetados negativamente até que você possa limpar esse plano incorreto. Mas, novamente, isso não parece um risco muito grande para você.

Se os bancos de dados não estão fazendo IO pesado atualmente, você deve estar bem apenas tendo um volume para dados e um volume separado para logs.

    
por 24.02.2012 / 23:31